sudo: 未知用户:postgres

20

我目前正在尝试在我的iMac上运行PostgreSQL(9.3),但是我在用户postgres和psql连接方面遇到了一些问题。

我购买了一台老一代的iMac(带有Snow Leopard),已经升级到Lion。根据其他StackOverflow主题的建议,我在我的.bash_profile文件中添加了以下内容:

export PATH=/Library/PostgreSQL/9.3/bin:/usr/bin:$PATH

启动pg时:

sudo su postgres -c '/Library/PostgreSQL/9.3/bin/pg_ctl -D /Library/PostgreSQL/9.3/data/ -m fast start'

它返回:

su: unknown login: postgres

我该怎么办?


你需要在系统中创建一个名为postgres的用户账户,或者使用一个已经存在且对该操作有权限的不同账户连接到postgresql。 - lurker
2
PostgreSQL 9.3是一个测试版,目前仅应用于测试和向PostgreSQL开发人员报告错误。请使用9.2版本。 - Daniel Vérité
3个回答

34
在OSX 10.8和10.9中,postgres的默认用户应该是_postgres,您可以使用sudo -u _postgres来运行命令。

这就是我所缺少的。 - Cyrusville

21

我在尝试使用sudo su - postgres时出现了相同的错误 (su: unknown login: postgres)。然后我使用sudo psql -U my.username postgres成功登录。

接着我可以创建适当的用户等等。

希望这有所帮助。


0

我尝试了这个命令行,但在PostgreSQL/9.3中没有/bin目录。我应该添加它吗?我可能在我的bash_profile上犯了一个错误。我也听说在Lion上路径/usr/var变成了usr/local/var。这可能是由于这个原因吗? - user1713964
1
@user1713964 不,看起来你的postgresql安装出了问题。为什么不删除旧的安装,然后使用homebrew(http://brew.sh)软件包管理器进行安装呢? brew install postgresql --without-ossp-uuid - Valery Viktorovsky
刚刚尝试了一下,但是我还是遇到了同样的问题 :/ - user1713964
2
我使用Homebrew安装了PostgreSQL,但是没有/Library/PostgreSQL/9.x/data/目录。 - Kinnard Hockenhull

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接