Permissions 没有使用psql权限的Root用户
我需要使用root用户在crontab上运行脚本,例如读取和写入所有Permissions 没有使用psql权限的Root用户,permissions,psql,Permissions,Psql,我需要使用root用户在crontab上运行脚本,例如读取和写入所有/home文件夹。 但是在shell脚本中我还需要做的一件事是运行psql。问题: 我的用户(me=whoami而不是root用户)可以运行例如psql-c“\l” 根用户不能(!)使用psql-c“\l”。。。并且错误没有意义“psql:错误:无法连接到服务器:致命:数据库“根”不存在” 如何使root运行psql PS:正在寻找一种“将所有数据库上的所有权限授予root用户”。root允许运行psql,但任何人都无法连
/home
文件夹。
但是在shell脚本中我还需要做的一件事是运行psql
。问题:
- 我的用户(me=
而不是root用户)可以运行例如whoami
psql-c“\l”
- 根用户不能(!)使用
。。。并且错误没有意义psql-c“\l”
“psql:错误:无法连接到服务器:致命:数据库“根”不存在”
psql
PS:正在寻找一种“将所有数据库上的所有权限授予root用户”。
root
允许运行psql
,但任何人都无法连接到不存在的数据库
使用psql
的数据库用户名的默认值是操作系统用户名,数据库的默认值与数据库用户名相同
因此,必须明确指定正确的数据库和数据库用户:
psql-U postgres-d postgres-l
接下来您要抱怨的是对等身份验证被拒绝
为了避免这种情况,请以操作系统用户身份运行
postgres
或更改pg_hba.conf
中的规则,谢谢,psql-U postgres-l
正在使用用户根运行(!)。在我的shell上,使用用户johnpsql-l
可以很好地工作,但是没有数据库john,不能使用psql john
或psql-d john
。。。根也一样。psql-c“etc”
可以与root的psql-U postgres-c“etc”
和john的psql-c“etc”一起使用。因此,我不同意“您必须明确指定正确的数据库用户”我的/etc/postgresql/12/main/pg_hba.conf
具有linelocal all postgres peer map=superuser我说过“数据库的默认值与数据库用户名相同”,因此,如果您使用-U postgres
,数据库将默认为postgres
。您好,这个短语对于john的psql-c“etc”
,没有任何意义,因为它与psql john-c“etc”
不同,数据库不是用户名。如果您在解析我的英语时遇到问题,请在,在那里它被详细地解释了。