下载下方的zip文件,然后执行docker-compose up -d
进入master的容器
docker exec -it mysql_master bash
# 刚开始默认没密码
mysql
# 支持root用户允许远程连接mysql数据库
mysql> grant all privileges on *.* to 'root'@'%' identified by 'root';
mysql> flush privileges;
退出mysql:
mysql> exit
接着,使用数据库连接工具就可以连上了。
下一步就是进入数据库配置主从配置了,在终端中进入容器:
docker exec -it mysql_master bash
mysql -uroot -p
创建一个同步数据权限的用户:
GRANT REPLICATION SLAVE ON *.* to 'backup'@'%' identified by 'root';
接着查看状态,记住File、Position的值,在 Slave 中将用到
show master status;
退出当前容器,进入slave容器
docker exec -it mysql_slave bash
mysql -u root -p
设置主库链接,注意master_log_file和master_log_pos要替换成自己相应的master信息,master_host的host可以通过docker inspect 容器id 获得IPAddress
change master to master_host='172.17.0.2',master_user='backup',master_password='root',master_log_file='mysql-bin.000003',master_log_pos=439,master_port=3306;
最后启动从库同步
start slave
查看下状态,如果 Slave_SQL_Running_State 是 Slave has read all relay log; waiting for more updates 表示正常运行。
show slave status \G