从mac删除了PostgreSQL用户,如何恢复?

时间:2014-03-14 12:52:23

标签: macos postgresql tcp

我做了一件非常愚蠢的事。 我在我的mac上运行了一个postgreSQL,里面有几个数据库。

最近我注意到在我的登录屏幕上添加了一个名为PostgreSQL的新用户,但事实并非如此 找到一个更好的主意去除此用户。

现在,我的pgAdminIII不再连接到服务器,当我尝试连接时出现此错误:

服务器不听 服务器不接受连接:连接库报告 无法连接到服务器:连接被拒绝服务器是否在主机“localhost”(:: 1)上运行并接受端口5432上的TCP / IP连接?无法连接到服务器:连接被拒绝服务器是否在主机“localhost”(127.0.0.1)上运行并接受端口5432上的TCP / IP连接?无法连接到服务器:连接被拒绝服务器是否在主机“localhost”(fe80 :: 1)上运行并接受端口5432上的TCP / IP连接?

如何恢复连接?希望没有完全重新安装我的postgres ??

非常感谢:)

2 个答案:

答案 0 :(得分:2)

您必须在管理控制台中使用短名称“postgres”创建一个新用户(它不应该拥有管理员权限),并确保它具有与原始“postgres”用户完全相同的用户ID。

如果您不确定旧用户ID是什么,可以通过查看PostgreSQL目录找到:

ls -ldn /path/to/data/directory

(数据目录位置取决于您安装的PostgreSQL版本以及安装方式)。

如果在Mac OS X上用户创建期间无法指定用户ID,则需要创建用户,然后将数据目录的所有权重置为新创建的用户:

sudo chown -R postgres:postgres /path/to/data/directory

答案 1 :(得分:1)

我使用PostgreSQL for linux,但我认为在mac OSX中会是一样的。 您可以使用createuser外部程序从系统命令行(不使用psql)创建管理员用户,在OS终端的提示符下键入。