mysql主从复制
1.主数据库配置添加 cat /etc/my.cnf 添加: [mysqld] server-id=1 log-bin=master-bin log-slave-updates=true #需要重启mysql服务 docker restart mysql 2.主数据库设置从库复制权限 grant replication slave on *.* to 'slave'@'192.168.1.%' identified by '1234'; flush privileges; 3.导出主库数据 docker exec -it mysql bash -c 'mysqldump -u root -p1234 --default-character-set=utf8 --opt -R -E aiboxcloud_test > /aiboxcloud_test_2022102610.sql 4.主库查看数据偏移量 show master status; 5.从库数据库配置 cat /etc/my.cnf 添加: [mysqld] server-id=197 #server-id 不能和主库一致 relay-log=relay-log-bin relay-log-index=slave-relay-bin.index #需要重启mysql服务 docker restart mysql 6.从库导入复制之前的主库的数据,因为主从复制是从当前开始复制 source /aiboxcloud_test_2022102610.sql 7.从库执行复制命令 change master to master_host='192.168.1.104',master_user='slave',MASTER_PORT=23306,master_password='1234',master_log_file='master-bin.000001',master_log_pos=174326105; 8.启动复制 start slave; 9.查看复制状态 show slave status\G #确保都是YES Slave_IO_Running: Yes Slave_SQL_Running: Yes