thumbnail

报错信息

记录一下解决方案。由于昨天湖北电信机房服务商需要将服务器关机维护,今天开机之后排查了一下各个kubernetes 服务运行几乎一切正常,但是唯独MySQL8出现了不健康的状态,看了一下日志,kubernetes 环境中运行的MySQL一直重启,启动报错如下(类似报错也可):

[System] [MY-013576] [InnoDB] InnoDB initialization has started.
[ERROR] [MY-012592] [InnoDB] Operating system error number 5 in a file operation.
[ERROR] [MY-012596] [InnoDB] Error number 5 means 'Input/output error'
[ERROR] [MY-012646] [InnoDB] File (unknown): 'close' returned OS error 105. Cannot continue operation
ERROR] [MY-012981] [InnoDB] Cannot continue operation.

解决方案

针对这个问题,我尝试了修改挂载卷的权限,以及查看了硬盘是否有问题,发现并没有收获,抱着死马当活马医的心态,重新将数据复制了一遍就好了(此时容器一定要关闭),具体操作如下:

# 备份原数据
cp -rp data data-bak
# 删除原目录数据
rm -rf data/* 
# 拷贝备份数据到原数据目录 这样操作是放在原来目录异常数据影响。
cp -rp data-bak/* data/
# 删除锁文件和socket文件(如果有的话,我的并没有锁文件)
cd data
rm -rf mysqld.sock mysqld.sock.lock mysql-sts-0.pid mysqlx.sock mysqlx.sock.lock
# 启动mysql
# 发现mysql正常启动