今天在tke上部署mysql pod,以为很简单。结果发现pod一直crash,查看日志发现是挂卷的问题: [ERROR] --initialize specified but the data directory has files in it. Aborting.

解决办法很简单,给mysql加上启动参数--ignore-db-dir=lost+found即可。

mysql 5.7

k8s

1
2
3
4
name: mysql-master
image: mysql:5.7
args:
  - "--ignore-db-dir=lost+found"

docker compose

1
2
3
4
5
6
7
version: '3'
services:
  mysql-master:
    image: mysql:5.7
    command: [--ignore-db-dir=lost+found]
    environment:
      - MYSQL_ROOT_PASSWORD=root