Postgresql: 常用配置

允许远程链接postgresql

要允许 PostgreSQL 数据库允许远程连接,需要进行以下配置步骤:

  1. 打开 PostgreSQL 的主配置文件 postgresql.conf。通常,该文件位于以下路径:

    /etc/postgresql/{version}/main/postgresql.conf
    

    其中 {version} 是你安装的 PostgreSQL 版本号。

  2. postgresql.conf 文件中,找到并修改以下配置项:

    listen_addresses = '*'
    

    image

    将该项的值更改为 *,表示允许监听所有网络接口,即接受来自任何 IP 地址的连接请求。

  3. 保存并关闭 postgresql.conf 文件。

  4. 打开 PostgreSQL 的身份验证配置文件 pg_hba.conf。通常,该文件位于以下路径:

    /etc/postgresql/{version}/main/pg_hba.conf
    

    其中 {version} 是你安装的 PostgreSQL 版本号。

  5. pg_hba.conf 文件中,找到类似以下的行:

    # IPv4 local connections:
    host    all             all             127.0.0.1/32            md5
    

    添加以下一行,允许所有 IP 地址的远程连接:

    # IPv4 remote connections:
    host    all             all             0.0.0.0/0               md5
    

    image

    这将允许来自任何 IP 地址的远程连接,并使用 "md5" 密码验证方法进行身份验证。你也可以根据需要设置更精确的 IP 地址范围或使用其他身份验证方法。

  6. 保存并关闭 pg_hba.conf 文件。

  7. 重新启动 PostgreSQL 服务,以使配置更改生效。可以使用以下命令重启 PostgreSQL:

    sudo service postgresql restart
    

现在,你的 PostgreSQL 数据库应该已经配置为允许远程连接。请确保在允许远程连接之前采取必要的安全措施,例如使用强密码、限制访问的 IP 地址范围等,以确保数据库的安全性。

增加安全配置

在阿里云中配置安全组,仅允许特定的ip地址来访问服务器,这样可以保证数据的安全。
image

修改postgresql中默认账户的密码

要修改 PostgreSQL 默认的账户(通常是 postgres 用户)的密码,可以按照以下步骤进行操作:

  1. 打开终端或命令行窗口。

  2. 以超级用户身份登录到 PostgreSQL 数据库。在终端中执行以下命令:

    sudo -u postgres psql
    

    如果提示输入密码,请输入你当前系统的超级用户密码。

  3. 进入 PostgreSQL 的命令行界面后,执行以下 SQL 命令修改账户密码:

    ALTER USER postgres WITH PASSWORD 'new_password';
    

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

  4. 退出 PostgreSQL 命令行界面,可以使用以下命令:

    \q
    

    或者按下 Ctrl + D 组合键。

现在,PostgreSQL 默认的账户 postgres 的密码已经被修改为你指定的新密码。请记住新密码并确保保密。如果需要修改其他默认账户的密码,可以类似地以超级用户身份登录到 PostgreSQL,并执行相应的 ALTER USER 命令来修改密码。

创建用户密码

要创建一个可用于远程连接的 PostgreSQL 账户和密码,可以按照以下步骤进行操作:

  1. 打开终端或命令行窗口。

  2. 以超级用户身份登录到 PostgreSQL 数据库。在终端中执行以下命令:

    sudo -u postgres psql
    

    如果提示输入密码,请输入你当前系统的超级用户密码。

  3. 在 PostgreSQL 的命令行界面中,执行以下 SQL 命令创建新用户:

    CREATE USER new_username WITH PASSWORD 'new_password';
    

    new_username 替换为你想要创建的用户名,将 new_password 替换为该用户的密码。

  4. 授予新用户适当的权限。你可以根据需要为该用户授予适当的数据库访问权限。例如,要将新用户授予对所有数据库的读写权限,可以执行以下 SQL 命令:

    GRANT ALL PRIVILEGES ON DATABASE database_name TO new_username;
    

    database_name 替换为你想要授予访问权限的数据库名称。

  5. 退出 PostgreSQL 命令行界面,可以使用以下命令:

    \q
    

    或者按下 Ctrl + D 组合键。

现在,你已经创建了一个可用于远程连接的 PostgreSQL 账户和密码。你可以使用该账户和密码来远程连接到 PostgreSQL 数据库。请确保密码的安全性,并根据需要进一步配置用户的权限和访问级别。

posted @ 2023-06-25 22:51  胸怀丶若谷  阅读(161)  评论(0编辑  收藏  举报