PostgreSQL启动异常:致命错误: 数据库系统启动中原创
金蝶云社区-吴锐雄
吴锐雄
3人赞赏了该文章 680次浏览 未经作者许可,禁止转载编辑于2024年01月18日 16:55:43


前言

我使用了CosmicStudio轻量级环境,在一次同步许可的操作后,我的PostgreSQL数据库挂了。

然后PostgreSQL一直重启失败,记录此次问题的排查流程和解决方案。


问题排查和解决流程


在一次同步许可的操作后,发现PostgreSQL的客户端一直连不上

进入日志文件查看,发现一直提示:“致命错误:  数据库系统在恢复模式中

检查了磁盘上,PostgreSQL的目录,/data/log,日志如下:

image.png



我在windows的cmd指令中,用命令kill了PostgreSQL,然后打算重启:

taskkill /F /IM postgres.exe



重启可以在windows服务中重启:

image.png

或者用CMD命令行重启:

(这里是cd到pgsql的安装目录的bin目录下,根据个人安装目录不同)

cd E:\PostgreSQL12\bin 
pg_ctl start -D "E:\PostgreSQL12\data"


却一直重启失败,提示:致命错误:  数据库系统启动中

日志如下

image.png


windows系统日志如下

image.png


在cmd中,pg的bin目录下,执行修复指令

我在必应上搜了一下,发现可以用pg的指令集:pg_resetwal  来修复,感兴趣的可以参考这篇文章

E:\PostgreSQL12\bin> pg_resetwal -f "E:\PostgreSQL12\data"

再次报了一个错

image.png


删除postmaster.pid

image.png

再次执行修复指令,并且启动数据库,启动成功:

image.png




赞 3