下载下方的zip文件,然后执行docker-compose up -d

mysql-slave配置.zip

进入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
最后修改:2022 年 09 月 22 日 09 : 50 PM
如果觉得我的文章对你有用,请随意赞赏