openEuler-24.03-LTS 使用docker 安装mysql 5.6 5.7版报错

mysql-5.6
使用开源的 MySQL 5.6 和 5.7 镜像,通过 docker run 启动 MySQL 均无法启动,报错一致:mysqld failed while attempting to check config。相同的 docker run 命令启动 MySQL 8.0 则没有问题。

mysql 5 已经 EOL,无论是学习研究环境,还是生产环境,都不要用了。

需要指定 MYSQL_ROOT_PASSWORDMYSQL_USER 环境变量

例如:

$ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -e MYSQL_USER=root -d mysql:tag

同样的问题,需要限制docker进程的LimitNOFILE
查看docker.service的目录,例如:systemctl status docker,目录可能是:/usr/lib/systemd/system/docker.service

  1. 修改文件/usr/lib/systemd/system/docker.service,将
    LimitCORE=infinity
    LimitNOFILE=infinity
    LimitNPROC=infinity
    改为
    LimitCORE=65535
    LimitNOFILE=65535
    LimitNPROC=65535

  2. 重启docker
    systemctl daemon-reload
    systemctl restart docker

1 个赞