最專業的香港本地雲服務商

流覽量(2)
時間:2025-07-31

PostgreSQL 默认用户名及相关配置指南

PostgreSQL 作为一款企业级开源关系数据库,支持 SQL 和 JSON 查询,广泛应用于各类 Web、移动及分析应用。对于新手用户而言,了解其默认用户名、密码及身份验证机制是入门的基础,以下详细说明相关配置与操作步骤。

一、PostgreSQL 默认用户

安装 PostgreSQL 时,系统会自动创建一个名为postgres的默认用户(既是操作系统用户,也是数据库超级用户)。


  • 查看默认用户:
    可通过以下命令查看系统中是否存在 postgres 用户:

    bash
    cat /etc/passwd


    若存在,输出结果中会包含类似内容:

    plaintext
    postgres:x:26:26:PostgreSQL Server:/var/lib/pgsql:/bin/bash


    其中,/var/lib/pgsql为该用户的主目录,/bin/bash为默认 shell。

二、默认身份验证模式

PostgreSQL 的默认身份验证配置由pg_hba.conf文件管理,默认采用ident 身份验证。


  • ident 验证原理:通过操作系统当前登录的用户名,与数据库中允许的用户名进行匹配,无需输入密码即可登录(仅适用于本地连接)。
  • 查看验证配置:
    执行以下命令查看pg_hba.conf文件中的认证规则:
    bash
    cat /var/lib/pgsql/9.3/data/pg_hba.conf


    本地连接的默认配置通常为:
    plaintext
    # IPv4 local connections:
    host all all 127.0.0.1/32 ident
    # IPv6 local connections:
    host all all ::1/128 ident


三、登录 PostgreSQL 的步骤

若以root用户登录服务器(如远程云服务器),需先切换到postgres用户才能连接数据库,否则可能因权限不足报错:


  1. 切换到 postgres 用户:
    bash
    su – postgres


    (注意su与–之间有空格,–表示切换到该用户的环境变量)
  2. 连接 PostgreSQL 数据库:
    直接输入psql命令进入数据库交互界面:
    bash
    psql


    成功连接后会显示版本信息及提示符:
    plaintext
    psql (9.3.9)
    Type "help" for help.
    postgres=#


四、创建用户与授权操作

在postgres=#交互模式下,可创建自定义用户并分配权限:


  1. 创建带密码的用户:
    命令格式:
    sql
    CREATE USER 用户名 PASSWORD '密码';


    示例:创建用户xxx,密码为yyy:
    sql
    postgres=# CREATE USER xxx PASSWORD 'yyy';


  2. 授予用户对数据库模式的权限:
    若需允许用户在test模式下创建表等对象,可授予全权限:
    sql
    postgres=# GRANT ALL ON SCHEMA test TO xxx;


  3. 授予用户操作表数据的权限:
    允许用户对test模式下的所有表执行插入、更新等操作:
    sql
    postgres=# GRANT ALL ON ALL TABLES IN SCHEMA test TO xxx;


总结

PostgreSQL 的默认用户为postgres,默认通过ident身份验证(依赖操作系统用户匹配),无需密码即可本地登录。若需创建自定义用户或修改验证方式,可通过psql交互命令或修改pg_hba.conf文件实现。掌握这些基础配置,能帮助用户快速搭建 PostgreSQL 环境并进行权限管理。



最新資訊