问题背景
1、出问题的环境信息
OS版本:BCLinux for Euler 21.10 (LTS-SP2)
DB版本:panweidb 2.0.3
架构:单机
2、相关操作
通过脚本清理xlog目录下的wal日志
问题描述
在使用gs_ctl start 启动磐维单节点数据库时出现报错:
FATAL: failed to translate name to xlog in GetOldestXLOGSegNo

问题分析
1、启动日志有明显的报错信息:
FATAL: failed to translate name to xlog in GetOldestXLOGSegNo, xlog dir /database2/panweidb2/data/pg_xlog, magic head is 14. (翻译:致命:在GetOldestXLOGSegNo中将名称转换为xlog失败 )
2、回顾在启动前的操作:因为之前磁盘满了导致数据库宕机,需要释放空间启动数据库,于是使用了自动清理脚本。
find /database3/panweidb2/data/pg_xlog -mmin +10 -type f -name “0000*” | xargs rm -f
3、该脚本执行后磁盘空间使用率下降,然后启动数据库出现报错。通过启动报错的信息去检查对应的目录,发现pg_xlog目录下的wal日志(0000开头)已经没有了。
分析结论
因执行了清理脚本将pg_xlog目录下的wal日志清空,导致数据库无法启动
临时规避方案
通过系统内部pg_resetxlog工具强制更新数据库事务文件,更新后启动成功

此类问题通用解决方法
可过备份文件恢复
最后修改时间:2024-11-22 14:12:47
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




