问题描述
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
至此,数据库修复完成。
标签:postgresql,lib,重启,db,断电,pg,pro,resetwal From: https://www.cnblogs.com/zerogbc/p/18383663