如何第一次连接到另一个本地postgresql集群?

如何第一次连接到另一个本地postgresql集群?,postgresql,Postgresql,在Ubuntu 16.04中,我创建了第二个postgres数据库集群,名为cmg,本地用户作为管理员用户: pg_create -u "local_username" -g "local_usergroup" -d /path/to/data/dir 9.5 cmg 群集是由以下各项启动的: pg_ctrlcluster 9.5 cmg start 成功运行的(pglsu集群显示两者都在线) 问题是我不能像通常那样使用psql连接到集群 我尝试使用: psql -h 127.0.0.1

在Ubuntu 16.04中,我创建了第二个postgres数据库集群,名为cmg,本地用户作为管理员用户:

pg_create -u "local_username" -g "local_usergroup" -d /path/to/data/dir 9.5  cmg
群集是由以下各项启动的:

pg_ctrlcluster 9.5 cmg start
成功运行的(
pglsu集群
显示两者都在线)

问题是我不能像通常那样使用psql连接到集群

我尝试使用:

psql -h 127.0.0.1 -w -p5433  -U local_username
它失败于:

psql: fe_sendauth: no password supplied"

有没有办法连接到特定群集

我认为当您启动一个新集群时,默认的
pg_hba.conf
要求您通过
peer
连接进行身份验证,因此您需要在连接之前将用户更改为本地用户

[root@server~]# su - local_username
>> Enter password:
> password
[local_username@server~]# psql -h 127.0.0.1 -p 5433
您可以检查
/path/to/data/dir/pg_hba.conf
中的
pg_hba.conf
文件,查看它希望您如何进行身份验证


或者,如果您无法以您的
'local\U username'
身份访问,请改为在上述说明中使用
postgres
用户,并且应该可以使用
psql-h your\U socket\U dir-p5433-U postgres
进行本地连接(默认情况下使用对等身份验证-因此不使用密码即可登录)

登录后-设置密码(如果需要,创建用户)并使用它进行远程连接

psql -h 127.0.0.1 -p5433  -U local_username

在你的连接字符串中有
-w
,它从不要求密码,默认情况下只对本地连接有效

尝试
psql-h你的\U socket\U dir-w-p5433-U postgres
,并检查你是否有用户
本地\U用户名
。顺便说一句,你输入密码了吗?。。如果它没有询问,请尝试添加
-W
谢谢@Vao Tsun您的建议,稍加修改即可。结果是:“psql-h/tmp/-p5433-dpotsgres”。当前登录的用户是管理员用户(“本地用户”)。请加上它作为答案。