Postgres数据库和角色消失了

时间:2017-03-21 11:11:20

标签: macos postgresql homebrew

昨天晚上我关闭了我的macbook的盖子并离开了工作。今天早上回来了,打开我的电脑,试图登录psql后得到一个警告, postgres 角色不存在......经过进一步检查,似乎只有我的一个数据库已经消失(以及默认的模板0/1,postgres和我的用户),以及除了我的每个角色(<user>)。 psql控制台中的\du+确认我的用户拥有超级用户权限。我仍然试过$ psql -d database_that_disappeared,但无济于事。尝试切换到我在本地安装的其他postgres版本(9.5.3 - &gt; 9.6.2 - &gt; 9.5.3),没有运气。

我显然没有运行任何brew更新或升级,OSX也没有自动更新任何内容,因为我已关闭自动更新。我已经尝试过关闭和重新启动,但都无济于事。

编辑: / usr / local / var / postgres / base 显示26个文件夹+ pgsql_tmp,这让我觉得数据本身没有消失?

1 个答案:

答案 0 :(得分:1)

只是为了让你知道。 我遇到了同样的问题。 意识到我有一个名为“Google”的进程正在侦听端口5432(使用命令找到:
lsof -i -n -P | grep 5432

除此之外,我的用户(在操作系统中)也消失了!

好吧,我发现问题是我确实安装了两个PostgreSQL实例。当我的mac重新启动以进行更新时,它会自动启动错误的更新! 由于将PGAdmin3更新为4,这似乎已经发生了。第4版用它安装了新版本的PostgreSQL,而不是替换以前的版本(正如我预期的那样)它并排存在。

同样,这就是我认为发生的事情,因为我意识到我突然使用了以前版本的PGAdmin,使用了最新版本的Postgres(它甚至会触发一条警告消息,说明版本不匹配)。

我希望这有助于某人:) 如果你弄清楚为什么/如何发生,请告诉我。