小工具知识网

当前位置: 首页 > 行业知识 > 运维系列(亲测有效):PostgreSQL默认密码详解(在不知道用户名密码的情况下查看数据库)

行业知识

运维系列(亲测有效):PostgreSQL默认密码详解(在不知道用户名密码的情况下查看数据库)

2026-11-06 08:39:52 来源:互联网转载

PostgreSQL默认密码详解

  • PostgreSQL默认密码详解
    • 1、pgsql默认密码
    • 2、postgresql更改密码
      • 1. 停止PostgreSQL服务器;
      • 2. 编辑pg_hba.conf文件,允许本地访问
      • 3. 以身份验证的方式启动PostgreSQL;
      • 4. 使用以下命令更改postgres用户的密码。
      • 3、设置PostgreSQL数据库密码
        • 1. 重新启动PostgreSQL,并使用以下命令更改postgres用户的密码。
        • 2. 修改pg_hba.conf以允许远程连接;
        • 3. 修改postgresql.conf文件以允许远程连接
        • 4. 重启PostgreSQL。
        • 4、忘记postgresql密码,怎么办
          • 1. 编辑pg_hba.conf文件,允许本地访问
          • 2. 停止PostgreSQL服务器
          • 3. 以不需要密码的方式启动PostgreSQL
          • 4. 使用以下命令更改postgres用户的密码。
          • 5. 修改pg_hba.conf以禁用无密码访问
          • 6. 重新启动PostgreSQL
          • 5、postgresql源码加密
          • 七、查看postgresql用户密码
          • 后言:

            PostgreSQL默认密码详解

            1、pgsql默认密码

            PostgreSQL在安装时默认密码设置为“postgres”,给数据库安全带来了隐患。因此,在安装PostgreSQL之后,最好更改初始密码,以提高数据库的安全性。

            下面是一个更改初始密码的示例:

            # 进入PostgreSQL Shell(psql)> sudo -u postgres psql
            # 更改密码postgres=# ALTER USER postgres WITH PASSWORD 'new_password';

            2、postgresql更改密码

            更改PostgreSQL用户密码的方法已经在第一部分中介绍过,可以使用ALTER USER语句更改任何用户的密码。 但是,某些情况下,用户可能忘记了他们的密码或无法使用超级用户(如postgres)更改密码。 在这种情况下,您可以使用以下步骤更改postgres用户的密码:

            1. 停止PostgreSQL服务器;

            # 停止PostgreSQL服务> sudo systemctl stop postgresql

            2. 编辑pg_hba.conf文件,允许本地访问

            $ sudo vim /var/lib/pgsql/data/pg_hba.conf

            在文件的最后添加以下内容:

            #添加如下内容即可:host    all     all     127.0.0.1/32    md5

            3. 以身份验证的方式启动PostgreSQL;

            # 以身份验证的方式启动PostgreSQL> sudo PGSETUP_INITDB_OPTIONS="--auth-host=md5" /usr/pgsql-13/bin/pg_ctl start -D /var/lib/pgsql/13/data -l logfile

            4. 使用以下命令更改postgres用户的密码。

            > psql -U postgres
            > \password postgres

            输入新密码并按Enter键,之后要求再次输入新密码以确认。 登录的密码现在已更改为您输入的新密码。

            3、设置PostgreSQL数据库密码

            以下演示如何设置postgresql数据库密码和超级用户postgres的密码。

            1. 重新启动PostgreSQL,并使用以下命令更改postgres用户的密码。

            > sudo systemctl restart postgresql
            > sudo -u postgres psql
            > ALTER USER postgres with encrypted password 'your-password';

            2. 修改pg_hba.conf以允许远程连接;

            > sudo vim /var/lib/pgsql/13/data/pg_hba.conf

            在文件最后添加以下内容:

            # 添加如下内容:host    all       all      0.0.0.0/0         md5

            3. 修改postgresql.conf文件以允许远程连接

            > sudo vim /var/lib/pgsql/13/data/postgresql.conf

            找到听连接字符串,其可如以下所示:

            #监听地址listen_addresses = 'localhost'   

            修改为以下内容

            listen_addresses = '*'

            4. 重启PostgreSQL。

            > sudo systemctl restart postgresql

            4、忘记postgresql密码,怎么办

            如果您忘记了postgres用户的密码,那我们可以通过以下步骤重置。

            1. 编辑pg_hba.conf文件,允许本地访问

            $ sudo vim /usr/pgsql-14/data/pg_hba.conf

            在文件的最后添加以下内容:

            host    all     all     127.0.0.1/32    trust

            2. 停止PostgreSQL服务器

            > sudo systemctl stop postgresql

            3. 以不需要密码的方式启动PostgreSQL

            > sudo systemctl start postgresql
            > sudo -i -u postgres
            $ psql

            4. 使用以下命令更改postgres用户的密码。

            ALTER USER postgres with encrypted password 'your-password';

            5. 修改pg_hba.conf以禁用无密码访问

            $ sudo vim /var/lib/pgsql/data/pg_hba.conf

            将文件中所有的

            local   all             all                                     trusthost    all             all             127.0.0.1/32            trust

            替换为如下所示:

            local   all             all                                     md5host    all             all             127.0.0.1/32            md5

            6. 重新启动PostgreSQL

            > sudo systemctl restart postgresql

            5、postgresql源码加密

            PostgreSQL支持数据和传输功能的加密。 在某些情况下,如包含敏感数据的生产环境中,使用加密功能可以确保数据不会被未经授权的人访问。

            启用PostgreSQL SSL:

            # 修改postgresql.conf文件以启用SSLlisten_addresses = 'localhost' ssl = onssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL'   ssl_ca_file = '/etc/ssl/certs/ca-certificates.crt' ssl_cert_file = '/etc/ssl/certs/ssl-cert-snakeoil.pem' ssl_key_file = '/etc/ssl/private/ssl-cert-snakeoil.key'
            # 重启PostgreSQL服务器sudo systemctl restart postgresql

            七、查看postgresql用户密码

            可以在PostgreSQL Shell中使用以下命令:

            SELECT usename, passwd FROM pg_shadow;

            除此之外,您还可以使用以下命令查看指定用户的密码:

            SELECT passwd FROM pg_shadow WHERE usename='username';

            后言:

            小编不知道用户名密码,甚至不知道相关服务怎么看,这个服务是其他软件自带的,只知道服务起来了(可以看那个软件的status),用户名全靠猜,默认用户名也没有


            梧桐

            PostgreSQL默认密码详解

上一篇:华夏源代码深度解析,揭开华夏系统神秘面纱,探寻源代码背后的秘密

下一篇:速达怎么查询主机的服务器