服务器意外断电,mariadb无法启动日志(已解决)

2024年9月3日20:08:13 发表评论 18

今天有网友反馈打不开网站,提示“连接数据库错误”。首先排查磁盘是否被占满,因为之前出现过磁盘占满连不上数据库的情况,可阅读《WordPress网站占满Linux服务器磁盘空间,解决和排查方法》。

这次排查不是磁盘空间问题,尝试重启数据库service mysqld restart,出现错误提示:Job for mysqld.service failed because the control process exited with error code

服务器意外断电,mariadb无法启动日志(已解决)

接下来登录数据库也提示错误:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

服务器意外断电,mariadb无法启动日志(已解决)

网上搜索错误代码,找解决方案,发现都不行,于是请教网友大神OneinStack博主。简单询问了几句,排除空间满,查看/data/mysql/mysql-error.log

圈出了下面的几行错误代码:

2022-04-10 9:58:30 0 [ERROR] InnoDB: Missing FILE_CHECKPOINT at 80579362363 between the checkpoint 80579362363 and the end 80579362304.

2022-04-10 9:58:30 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error

2022-04-10 9:58:30 0 [Note] InnoDB: Starting shutdown...

服务器意外断电,mariadb无法启动日志(已解决)

 

然后给出了解决方法(不熟悉命令的服务器一定要备份快照):

执行命令:

cd /data/mariadb

mv ib_logfile0 ib_logfile0.bak

mv ib_logfile1 ib_logfile1.bak

 

搜索下logfile的文件

服务器意外断电,mariadb无法启动日志(已解决)

执行命令:ls | grep logfile

服务器意外断电,mariadb无法启动日志(已解决)

重启数据库,完美解决!

服务器意外断电,mariadb无法启动日志(已解决)

大佬给出的错误原因是由于重启服务器的时候,意外断电造成的。

附参考文档:mysql mlog_checkpoint_mariadb服务器断电重启之后Missing MLOG_CHECKPOINT的解决办法

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: