This is an explanation of the video content.
 Everything to games
Let's make life more fun, so we convert everything to games.
77

 |   | 

Windows强制修改postgresql密码

如果你需要强制修改 PostgreSQL 的密码,通常是因为忘记了当前的密码。在这种情况下,可以通过修改 pg_hba.conf 文件并重启 PostgreSQL 服务来实现。以下是详细步骤:

步骤 1: 找到 PostgreSQL 的数据目录

  1. 打开命令提示符。
  2. 找到 PostgreSQL 的数据目录。通常位于:

    C:\Program Files\PostgreSQL\<version>\data
    

    替换 <version> 为你的 PostgreSQL 版本号。

步骤 2: 修改 pg_hba.conf 文件

  1. 打开 pg_hba.conf 文件。你可以使用文本编辑器(如 Notepad++ 或 VS Code)来编辑它。
  2. 找到与本地连接相关的行,通常看起来像这样:

    local   all             postgres                                peer
    

    或者:

    local   all             postgres                                scram-sha-256
    
  3. peerscram-sha-256 改为 trust,这样任何用户都可以在不输入密码的情况下连接到数据库。修改后的行应该看起来像这样:

    local   all             postgres                                trust
    
  4. 保存并关闭 pg_hba.conf 文件。

步骤 3: 重启 PostgreSQL 服务

  1. 打开命令提示符。
  2. 重启 PostgreSQL 服务。你可以使用以下命令:

    net stop postgresql-<version>
    net start postgresql-<version>
    

    替换 <version> 为你的 PostgreSQL 版本号。

!!! 每个人的版本号不一样,笔者的电脑服务停掉命令是: net stop postgresql-x64-12

步骤 4: 登录并修改密码

  1. 打开命令提示符。
  2. 连接到 PostgreSQL 数据库:

    psql -U postgres
    

    由于你将 pg_hba.conf 中的认证方法改为 trust,因此不会被要求输入密码。

  3. 修改密码:

    ALTER USER postgres PASSWORD '<new_password>';
    

    替换 <new_password> 为你想要设置的新密码。

步骤 5: 恢复 pg_hba.conf 文件

  1. 打开 pg_hba.conf 文件。
  2. 将之前修改的行恢复为原来的设置,例如:

    local   all             postgres                                scram-sha-256
    
  3. 保存并关闭文件。

步骤 6: 再次重启 PostgreSQL 服务

  1. 打开命令提示符。
  2. 重启 PostgreSQL 服务:

    net stop postgresql-<version>
    net start postgresql-<version>
    

步骤 7: 验证密码修改

  1. 尝试使用新密码登录 PostgreSQL:

    psql -U postgres -W
    

    输入新密码,如果能够成功登录,说明密码修改成功。

注意事项

  • 修改 pg_hba.conf 文件时,确保只在本地环境中进行操作,以避免安全风险。
  • 修改完成后,立即恢复 pg_hba.conf 文件的原始设置,以确保数据库的安全性。
  • 如果你对操作不确定,建议在修改前备份 pg_hba.conf 文件。

通过以上步骤,你可以强制修改 PostgreSQL 的密码。

77 🗄️Database ↦ PostgreSQL __ 207 字
 PostgreSQL #5