postgresql 断电后无法重启问题
问题描述
LOG: database system was interrupted; last known up at 2024-07-04 05:03:31 UTC
FATAL: the databasesystem is starting up
解决办法
PostgreSQL 9.6 及以下版本 使用 pg_resetxlog,高于9.6 使用pg_resetwal
ps:这边数据版本为12.3
步骤:
-
先把数据库发布订阅停止
-
把数据库拷贝一份做为备份,操作失误可以进行还原
cp -ar db-pro db-pro-bak-20240826 #把db-pro 拷贝一份到 db-pro-bak-20240826
-
执行命令pg_resetwal
pg_resetwal -f /var/lib/postgresql/data
如果使用不了可以尝试使用下面的命令
gosu postgres /usr/lib/postgresql/12/bin/pg_resetwal -f /var/lib/postgresql/data
/usr/lib/postgresql/12/bin/pg_resetwal:命令的路径,其中12 代表数据库版本
/var/lib/postgresql/data:数据存储路径,低版本可能不一样 -
执行pg_ctl start,启动数据库
gosu postgres /usr/lib/postgresql/12/bin/pg_ctl start
至此,数据库修复完成。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具