项目中用的 5.7 版本,所以这边命令后面会带上版本号
[root@localhost ~]# docker pull mysql:5.7
docker run -p 3306:3306 --name mysql5.7 -v /conf/mysql:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci -p 端口映射 -d 守护进程运行(后台运行) -v Docker 目录 和 宿主机目录做映射 -e 传入环境变量值(给数据库设密码)
如果连不上,可以试试下面的操作
[root@centos-linux jimmy]# docker exec -t -i mysql5.7 /bin/bash root@0b8bc430adfb:/# mysql -uroot -p Enter password: mysql> ALTER user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; mysql> ALTER user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> quit Bye root@0b8bc430adfb:/# exit exit [root@centos-linux jimmy]# docker restart mysql5.7