安装mysql5.7时使用
#docker拉取镜像命令 docker pull mysql:5.7 #docker安装MySQL命令 docker run -p 3306:3306 --name mysql -v /mydata/mysql/log:/var/log/mysql -v /mydata/mysql/data:/var/lib/mysql -v /mydata/mysql/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7
#查看启动的进程:发现mysql没有启动
docker ps
#查看启动日志:
docker logs -f mysql
报错信息:
2023-10-30 15:41:05+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.44-1.el7 started.
2023-10-30 15:41:05+00:00 [ERROR] [Entrypoint]: mysqld failed while attempting to check config
command was: mysqld --verbose --help --log-bin-index=/tmp/tmp.TpkwCVCFhW
mysqld: Can't read dir of '/etc/mysql/conf.d/' (Errcode: 2 - No such file or directory)
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!
报错原因:mysql5.7的my.cnf不在/etc/mysql下,直接放在了my.cnf下,所以直接指定配置映射,使用下面启动方式,启动成功
#成功启动 docker run -p 3306:3306 --name mysql -v /mydata/mysql/log:/var/log/mysql -v /mydata/mysql/data:/var/lib/mysql -v /mydata/mysql/conf/my.cnf:/etc/my.cnf -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7