在docker中创建并启动MySQL从服务器:**`端口3307`
docker run -d \
-p 3307:3306 \
-v /atguigu/mysql/slave1/conf:/etc/mysql/conf.d \
-v /atguigu/mysql/slave1/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
--name atguigu-mysql-slave1 \
mysql:8.0.3
创建MySQL从服务器配置文件
vim /atguigu/mysql/slave1/conf/my.cnf
[mysqld]
# 服务器唯一id,每台服务器的id必须不同,如果配置其他从机,注意修改id
server-id=2
# 中继日志名,默认xxxxxxxxxxxx-relay-bin
#relay-log=relay-bin
# 重启 mysql服务
docker restart atguigu-mysql-slave1
使用命令行登录MySQL从服务器
docker exec -it atguigu-mysql-slave1 env LANG=C.UTF-8 /bin/bash
#进入容器内的mysql命令行
mysql -uroot -p123456
#修改默认密码校验方式
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
在从机上配置主从关系
在从机上执行以下SQL操作 注意:以下配置信息中IP地址跟你不同,binlog日志信息不同
CHANGE MASTER TO MASTER_HOST='192.168.200.128',
MASTER_USER='atguigu_slave',MASTER_PASSWORD='123456', MASTER_PORT=3306,
MASTER_LOG_FILE='962fcffdb35d-bin.000003',MASTER_LOG_POS=3145;
启动主从同步
START SLAVE;
-- 查看状态(不需要分号)
SHOW SLAVE STATUS\G