在 Mac 上切换到 postgres 用户

Posted

技术标签:

【中文标题】在 Mac 上切换到 postgres 用户【英文标题】:Switch to postgres user on Mac 【发布时间】:2012-05-31 23:20:42 【问题描述】:

我想su 给 Mac 上的 postgres 用户,以便我可以运行 postgres。

我在这里做错了什么?

delirium:~ anna$ sudo su postgres
delirium:~ anna$

什么都没有发生。如果我尝试运行 postgres,我会得到这样的结果:

delirium:~ anna$ sudo pg_ctl -D /usr/local/var/postgres -l      
/usr/local/var/postgres/server.log startpg_ctl: cannot be run as root
Please log in (using, e.g., "su") as the (unprivileged) user that will
own the server process.

如果我为了su尝试这个,我也会得到一个错误:

delirium:~ anna$ sudo su - postgres
su: no directory
delirium:~ anna$

我能做些什么呢?我相当确定 postgres 用户存在。

【问题讨论】:

【参考方案1】:

这看起来与没有登录 shell 的 postgres 用户一致。试试sudo -u postgres bash

【讨论】:

【参考方案2】:

PostgreSQL 集成在 Server.app 中,可通过 Mountain Lion 的 App Store 获得。

你会得到这个文件: /Library/Server/PostgreSQL/Config/org.postgresql.postgres.plist

你可以 sudo:

sudo -u _postgres psql template1

或连接:

psql -h localhost -U _postgres postgres

【讨论】:

以上是关于在 Mac 上切换到 postgres 用户的主要内容,如果未能解决你的问题,请参考以下文章

想要在Mac上快速切换用户,就要这样做!

mac上怎样才能快速切换登录多个用户?

postgres基本操作大全

在 Mac 上启动 postgres 服务器

mac上怎么切换 gcc 的版本

网站能否通过用户浏览获取用户的mac地址?