要在Docker中搭建MySQL主从复制,可以按照以下步骤操作:
创建MySQL主从复制的网络(可选):docker network create mysql-replication启动MySQL主服务器:docker run -d --name mysql-master --network mysql-replication -e MYSQL_ROOT_PASSWORD=password mysql:latest启动MySQL从服务器:docker run -d --name mysql-slave --network mysql-replication -e MYSQL_ROOT_PASSWORD=password mysql:latest配置主服务器:登录到主服务器容器中,创建用于复制的用户,并开启二进制日志记录和GTID:docker exec -it mysql-master bashmysql -u root -pCREATE USER 'repl'@'%' IDENTIFIED BY 'password';GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';FLUSH PRIVILEGES;SET GLOBAL binlog_format = 'ROW';SET GLOBAL log_slave_updates = 1;SET GLOBAL gtid_mode = ON;SET GLOBAL enforce-gtid-consistency = ON;配置从服务器:登录到从服务器容器中,配置从服务器连接主服务器并开始复制:docker exec -it mysql-slave bashmysql -u root -pCHANGE MASTER TO MASTER_HOST='mysql-master', MASTER_USER='repl', MASTER_PASSWORD='password', MASTER_AUTO_POSITION=1;START SLAVE;检查主从复制状态:在主服务器上执行以下命令检查主从复制状态:SHOW MASTER STATUS;在从服务器上执行以下命令检查主从复制状态:
SHOW SLAVE STATUS \G;如果输出结果中的Slave_IO_Running和Slave_SQL_Running均显示Yes,则表示主从复制已成功搭建。
通过以上步骤,您可以在Docker中成功搭建MySQL主从复制的环境。