root 无权使用 psql
Root with no permission to work with psql
我需要使用 root 用户在 crontab 中执行 运行 脚本,例如读取和写入所有 /home
文件夹。
但是我还需要在 shell 脚本中做的事情是 运行 psql
。问题:
- 我的用户(我=
whoami
而不是root)可以运行例如psql -c "\l"
- root 用户 无法与
psql -c "\l"
一起工作(!)...并且错误没有意义
"psql:错误:无法连接到服务器:致命:数据库“root”不存在。
如何启用 root 运行 psql
?
PS: 寻找一种“将所有数据库的所有权限授予 root”。
root
允许 运行 psql
,但没有人可以连接到不存在的数据库。
带psql
的数据库用户名默认为操作系统用户名,数据库默认与数据库用户名相同
因此您必须明确指定正确的数据库和数据库用户:
psql -U postgres -d postgres -l
接下来您要抱怨的是对等身份验证被拒绝。
为避免这种情况,运行 作为操作系统用户 postgres
或更改 pg_hba.conf
中的规则。
我需要使用 root 用户在 crontab 中执行 运行 脚本,例如读取和写入所有 /home
文件夹。
但是我还需要在 shell 脚本中做的事情是 运行 psql
。问题:
- 我的用户(我=
whoami
而不是root)可以运行例如psql -c "\l"
- root 用户 无法与
psql -c "\l"
一起工作(!)...并且错误没有意义
"psql:错误:无法连接到服务器:致命:数据库“root”不存在。
如何启用 root 运行 psql
?
PS: 寻找一种“将所有数据库的所有权限授予 root”。
root
允许 运行 psql
,但没有人可以连接到不存在的数据库。
带psql
的数据库用户名默认为操作系统用户名,数据库默认与数据库用户名相同
因此您必须明确指定正确的数据库和数据库用户:
psql -U postgres -d postgres -l
接下来您要抱怨的是对等身份验证被拒绝。
为避免这种情况,运行 作为操作系统用户 postgres
或更改 pg_hba.conf
中的规则。