k8s启动mysql报错:--initialize specified but the data directory has files in it. Aborting

背景:

k8s启动Deployment时,发现mysql的pod运行失败:

 

 

检查日志发现报错信息如下:

 

 

 原因:

这是属于mysql 5.7 以上版本特性,如对应初始化的路径不是空目录,会影响mysql初始化。

解决办法:

1、添加参数:–ignore-db-dir=lost+found 在yaml文件中,忽略对应lost+found目录

2、将对应目录下的内容删除即可

过程:

1、查看容器挂载路径及PVC:

 

2、查看PVC所在路径:

 

 

 

3、到node下查看确实有内容

 

 

 

4、删除对应目录下内容,重新启动deployment

[root@master mysql]# kubectl apply -f asr-mysql-deployment.yaml

 

 5、再次查看,发现pod运行成功

[root@master mysql]# kubectl get pods -n dev
NAME                         READY   STATUS    RESTARTS   AGE
asr-mysql-86c8fbb659-7djj2   1/1     Running   0          30s

 

posted on 2022-04-04 21:29  wangzy-Zj  阅读(1719)  评论(0编辑  收藏  举报