1,docker中下载镜像
docker pull docker.io/idyci/mysql
2,创建本地数据库目录和配置文件
mkdir -p /root/mysql/data/
3,开启容器
docker images
docker run -p 3306:3306 --name mymysql -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=mysql123#@! -d 6c3949ffb5c2
4,修改mysql的配置文件my.cnf,复制到容器中
docker cp /root/mysql/conf/my.cnf 8fdc91483891:/etc/mysql/mysql.conf.d
5,重启容器
docker restart 8fdc91483891
6,查看配置是否生效
进入容器
docker exec -it 8fdc91483891 /bin/bash
查看最大连接数
发现是根据我们自己的配置文件的连接数
查看max_allowed_packet
ok,验证生效
7,打包容器和数据库目录
docker export -o mysql-
date +%Y%m%d
.tar 8fdc91483891
8,打包数据库目录
tar zcf data.tgz data/
9,传输到另外一台也安装docker的服务器
scp data.tgz /home/mysql-20191021.tar root@192.168.1.90:/usr/local/src/
10,在90服务器导入容器
docker import mysql-20191021.tar mysql:5.7
11,创建数据目录并解压数据目录
mkdir -p /root/mysql/data
tar xf /usr/local/src/data.tgz -C /root/mysql/data/cp -R /root/mysql/data/data/* /root/mysql/data/
rm -rf /root/mysql/data/data/
12,启动容器并验证
docker run -p 3306:3306 --name mymysql -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=mysql123#@! -d 0e8ff10ee816 /entrypoint.sh mysqld
docker exec -it 3013ba99b30a sh
ok,容器安装配置mysql5.7完毕了。
为啥不给过?