LOG: aborting startup due to startup process failure
LOG: database system was interrupted;
LOG: unexpected pagedir
LOG: invalid secondary checkpoint record
PANIC: could not locate a valid checkpoint record
一、问题原因
数据库日志损坏,需要重置日志一致性。
二、解决办法
1、切换到postgres用户重置数据库日志
su - postgres
pg_resetwal -f /var/lib/postgresql/data/pgdata/
三、操作
1、 首先启动一个容器:
docker run -it --restart=always --name postgres_primary -p 5432:5432 -v /opt/postgres_data/data:/var/lib/postgresql/data/ -v /etc/localtime:/etc/localtime --env-file primary.env postgres_primary /bin/bash
执行:
su - postgres
pg_resetwal -f /var/lib/postgresql/data/pgdata/
退出容器并且删除
2、 重新启动服务容器
docker run -d --restart=always --name postgres_primary -p 5432:5432 -v /opt/postgres_data/data:/var/lib/postgresql/data/ -v /etc/localtime:/etc/localtime --env-file primary.env postgres_primary