1.拉取镜像
docker pull mysql:5.7.28
2、运行mysql
docker run -d -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7.28
-p 端口映射 前一个是宿主机端口 ,后一个是容器端口
--name 指定容器名称
3、列出正在运行容器
docker ps
4、进入容器
docker exec -it mysql /bin/bash
5、查看mysql配置文件
cat /etc/mysql/mysql.conf.d/mysqld.cnf
把配置文件保存到本地,然后上传到宿主机某一个目录下
6、登录mysql
mysql -uroot -p123456
7、查看最大连接数
show variables like '%max_connections%';
mysql默认最大连接数151;
8、停止容器并删除容器
docker stop mysql
docker rm mysql
9、修改宿主机上my.cnf
修改最大连接数
文件尾添加
max_connections = 500
10、重新运行mysql,指定数据目录和配置文件
docker run -d -p 3306:3306 -v /home/zhu/mysql/my.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf -v /home/zhu/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7.28
-v /home/zhu/mysql/my.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf 挂在宿主机/home/zhu/mysql/my.cnf文件到容器中/etc/mysql/mysql.conf.d/mysqld.cnf
11、进入容器中
docker exec -it mysql /bin/bash
12、登录mysql,查看最大连接数 配置生效
mysql -uroot -p123456
show variables like '%max_connections%';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| max_connections | 500 |
+-----------------+-------+
1 row in set (0.00 sec)
停止容器
docker stop 容器ID或容器名
重启容器
docker restart 容器ID或容器名
删除容器
docker rm 容器ID或容器名
设置mysql随着docker自启
docker update --restart=always xxx(容器名或容器id)
镜像版本查询地址 https://hub.docker.com/_/mysql?tab=tags