本文介绍通过docker compose一键部署主从MySQL数据库的方法。在进行操作前,请提前做好如下准备工作:配置主库:a. 添加主库配置文件master.cnf,配置主库server-id。PS: 配置文件只包含用于主从同步的配置,如需更全面配置,还需添加其他相关设置。b. 添加master.sh脚本,用于在主库创建用户。配置从库:a. 添加从库配置文件slave.cnf。b. 编写slave.sh脚本,用于运行SQL将主库信息配置到从库,添加只读用户。编写docker-compose.yaml:在docker-compose.yaml中,配置内容包括:1. 一个主库服务mysql-master。2. 一个从库服务mysql-slave。3. 创建网络shardingSphere,mysql-master和mysql-slave均在此网络内。启动服务:运行sudo docker compose up -d命令启动服务。验证:1. 在主库端创建表并添加数据。2. 在从库端查看表及数据同步情况。解决常见问题:问题一:从库START REPLICA失败。现象:启动复制命令运行失败,状态显示Slave_IO_Running和Slave_SQL_Running为No。解决方法:在docker-compose.yaml中,对主库和从库添加环境变量指定默认数据库。问题二:同步时从库连接不上主库。现象:主库PORT配置错误。解决方法:确认docker-compose.yaml中网络配置正确,主库和从库通过宿主机的端口进行通信。问题三:数据没有同步到slave。现象:数据同步异常。解决方法:再次查看从库同步状态,确保状态正常。参考资料:官网:dev.mysql.com/doc/refman/