Basil Bourque Asked: 2019-11-08 15:01:27 +0800 CST2019-11-08 15:01:27 +0800 CST 2019-11-08 15:01:27 +0800 CST 使用 pgAdmin 4 编辑 pg_hba.conf 文件 772 这个另一个问题有关于使用pgAdminpostgresql.conf 4 在文件中查看和编辑设置的答案。但这些答案没有提到编辑用于用户身份验证的文件。pg_hba.conf ➥ 如何使用pgAdmin 4编辑pg_hba.conf文件? postgresql pgadmin 2 个回答 Voted Best Answer richyen 2019-11-10T22:55:03+08:002019-11-10T22:55:03+08:00 不,pgAdmin不能编辑pg_hba.conf 不幸的是,pgAdmin 没有可以编辑pg_hba.conf文件的机制。postgresql.conf可以通过 pgAdmin进行编辑的原因是ALTER SYSTEM语法是可以输入到客户端界面的东西。因此,pgAdmin 能够“编辑” postgresql.conf,因为它可以向数据库发送ALTER SYSTEM查询。不存在用于编辑访问控制的此类语法。 Basil Bourque 2019-11-19T20:15:03+08:002019-11-19T20:15:03+08:00 Richyen的正确答案解释了pgAdmin 4无法pg_hba.conf编辑文件的基于主机的访问设置。所以我们必须使用文本编辑器直接编辑文件。pg_hba.conf macOS 上的示例 这是使用编辑器执行此操作的示例,命令行工具nano,在 macOS 上(也可能在 BSD 上)。 Postgres 数据库系统与一个新的系统级用户一起安装,默认情况下名为postgres. 该用户拥有包含实际 Postgres 数据库文件的文件夹(具有文件系统访问权限)。所以我们必须以该用户身份运行。 如果您是面向 Unix 的操作系统的新手,那么切换用户会非常复杂。有关详细信息,请参阅:在 macOS 上将用户切换为 'postgres' 用户会导致 “su: sorry” 错误。 要使用 切换终端会话中的用户su,我们必须使用 调用超级用户的权限sudo。 sudo su postgres 然后将提示您输入超级用户的密码。 通过执行以下操作验证当前正在运行会话的用户: whoami 在编辑之前,我们应该备份pg_hba.conf文件。.backup制作一个副本,给文件一个类似的名称,并附加类似的东西。 切换到data嵌套在postgres用户主文件夹中的文件夹。类型:cd ~/data 要查看文件列表并验证pg_hba.conf,请运行:ls 跑:copy pg_hba.conf pg_hba.conf.backup ls通过再次运行来验证备份。 现在我们可以使用nano编辑器编辑原件。 nano pg_hba.conf 您将看到文件的内容出现在屏幕上。请注意底部列出的按键命令^(控制键)。 使用向下箭头键到达文件末尾(或按 键Next Page)。使用右箭头键移动要编辑的行。完成后,按 Control-O(代表write Out)保存文件。请参阅 Control+x 将退出 nano 编辑器的提示。 在命令行中,要停止以postgres用户身份运行该会话,请运行exit. 然后用 再次验证whoami。
不,pgAdmin不能编辑
pg_hba.conf
不幸的是,pgAdmin 没有可以编辑
pg_hba.conf
文件的机制。postgresql.conf
可以通过 pgAdmin进行编辑的原因是ALTER SYSTEM
语法是可以输入到客户端界面的东西。因此,pgAdmin 能够“编辑”postgresql.conf
,因为它可以向数据库发送ALTER SYSTEM
查询。不存在用于编辑访问控制的此类语法。Richyen的正确答案解释了pgAdmin 4无法
pg_hba.conf
编辑文件的基于主机的访问设置。所以我们必须使用文本编辑器直接编辑文件。pg_hba.conf
macOS 上的示例
这是使用编辑器执行此操作的示例,命令行工具nano,在 macOS 上(也可能在 BSD 上)。
Postgres 数据库系统与一个新的系统级用户一起安装,默认情况下名为
postgres
. 该用户拥有包含实际 Postgres 数据库文件的文件夹(具有文件系统访问权限)。所以我们必须以该用户身份运行。如果您是面向 Unix 的操作系统的新手,那么切换用户会非常复杂。有关详细信息,请参阅:在 macOS 上将用户切换为 'postgres' 用户会导致 “su: sorry” 错误。
要使用 切换终端会话中的用户
su
,我们必须使用 调用超级用户的权限sudo
。然后将提示您输入超级用户的密码。
通过执行以下操作验证当前正在运行会话的用户:
在编辑之前,我们应该备份
pg_hba.conf
文件。.backup
制作一个副本,给文件一个类似的名称,并附加类似的东西。data
嵌套在postgres
用户主文件夹中的文件夹。类型:cd ~/data
pg_hba.conf
,请运行:ls
copy pg_hba.conf pg_hba.conf.backup
ls
通过再次运行来验证备份。现在我们可以使用nano编辑器编辑原件。
您将看到文件的内容出现在屏幕上。请注意底部列出的按键命令
^
(控制键)。使用向下箭头键到达文件末尾(或按 键
Next Page
)。使用右箭头键移动要编辑的行。完成后,按 Control-O(代表write Out
)保存文件。请参阅 Control+x 将退出 nano 编辑器的提示。在命令行中,要停止以
postgres
用户身份运行该会话,请运行exit
. 然后用 再次验证whoami
。