MySQL主服务器配置

含义 命令
新建主服务器容器实例 3307 docker run -p 3307:3306 --name mysql-master -v /mydata/mysql-master/log:/var/log/mysql -v /mydata/mysql-master/data:/var/lib/mysql -v /mydata/mysql-master/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7
进入 /mydata/mysql-master/conf 下新建 my.cnf alt
修改完配置后重启 master 实例 docker restart mysql-master
进入 mysql-master 容器 docker exec -it b6f61c2e74ef bash
进入 mysql 中 mysql -u root -p
master 容器实例内创建数据同步用户 alt


MySQL从服务器配置

含义 命令
新建从服务器容器实例 3308 docker run -p 3308:3306 --name mysql-slave -v /mydata/mysql-slave/log:/var/log/mysql -v /mydata/mysql-slave/data:/var/lib/mysql -v /mydata/mysql-slave/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7
进入 /mydata/mysql-slave/conf 下新建 my.cnf alt
修改完配置后重启 slave 实例 docker restart mysql-slave
在主数据库中查看主从同步状态 alt
进入 mysql-slave 容器的从数据库中 docker exec -it d24b199a3589 bash、mysql -u root -p
在 mysql-slave 容器数据库中配置主从复制(里面的参数user、password是主服务上面创建的slave用户登录,log_file、log_pos等信息是从 show master status; 中获取) change master to master_host='47.95.211.172', master_user='slave', master_password='123456', master_port=3307, master_log_file='mall-mysql-bin.000002', master_log_pos=617, master_connect_retry=30;
在 mysql-slave 容器数据库中查看主从同步状态 show slave status \G;alt
在 mysql-slave 容器数据库中开启主从同步 start slave;
查看 mysql-slave 数据库状态是否已经同步 show slave status \G;alt


主从复制测试

主库建表、插入数据

alt


从库能够直接读取到

alt


搭建完成

alt