如何修复Postgres12上过时的postmaster.pid文件?
我去查看本地 (MacOS 11) 数据库上的 postgres 架构,但无法查看我的架构。DBeaver 中的连接被拒绝!
所以我打开了我的 postgres 桌面应用程序,并收到了警告消息,“过时的 postmaster.pid 文件”
我怎样才能解决这个问题?
回答
问题是需要手动删除postmaster.pid文件并由postgres重新生成,这些是做的步骤。
- 打开终端,然后 cd 进入 postgres 目录:
cd /Users/<user_name>/Library/Application Support/Postgres - 确保你在正确的地方,
ls你应该看到类似的东西var-12 - 验证文件是否存在,
ls var-12(请记住该文件var-XX与您的 PGSQL 版本相同) - 通过查看桌面应用程序验证 Postgres 服务器未运行
Library/Application Support/Postgres
? ls var-12
PG_VERSION pg_hba.conf pg_replslot pg_subtrans postgresql.auto.conf
base pg_ident.conf pg_serial pg_tblspc postgresql.conf
global pg_logical pg_snapshots pg_twophase postgresql.log
pg_commit_ts pg_multixact pg_stat pg_wal postmaster.opts
pg_dynshmem pg_notify pg_stat_tmp pg_xact postmaster.pid <----
- 然后删除postmaster.pid,
rm var-12/postmaster.pid - 返回您的控制台,启动您的 postgres 服务器,它应该会再次运行,并且您应该可以完全访问您的架构。