ARTIFACTORY:与JFrog平台关联的PostgreSQL数据库没有出现“无效检查点记录”错误,如何解决?

Yuvarajan Johnpaul
2022-11-29 10

症状:

与数据库关联的服务(Artifactory、Mission Control、Xray等)没有显示任何初始化失败的迹象,但是,在验证数据库中的日志时,它显示了以下类型的错误消息。日志:无效的主检查点记录
日志示例:无效的次要检查点记录
2012-10-07 07:45:28.262 EDT > PANIC: could not locate a valid checkpoint record
EDT > LOG: startup process (PID ) was terminated by signal 6: Aborted
日志示例:aborting startup due to startup process failure
日志:database system is shut down
日志:database system was shut down at 2022-07-09 03:50:43 EDT

根本原因:

PostgreSQL维护预写日志(WAL)在pg_xlog目录下,该目录跟踪对数据库数据所做的每个更改。

如果这个日志文件由于某种原因不存在,例如,为了解决任何磁盘占用问题而删除/移动了它,那么它将导致数据库崩溃。

解决方案:

如果实例遇到这样的问题,就有必要检查pg_xlog目录是否存在于相应的位置。随着PostgreSQL版本10的发布,这个目录被重命名为pg_wal。

如果目录不存在,

  • 检查数据库管理员端的任何已清除日志文件的维护活动。
  • 再次将目录替换为自己的路径。
  • 重新启动数据库。这应该有助于解决问题。