Mysql针对正在被写入的数据库做主从复制
2019-07-25 本文已影响0人
寄居他乡
1、在master上将指定数据库锁定
(1)mysql -uroot -p12345 (登录mysql)
(2)use test;(选择登录的数据库)
(3)flush tables with read lock; (将数据库锁定)
(4)查出当前master的binlog状态:
show master status;
(5)在master上将数据库导出 mysqldump -uroot -p12345 test |gzip > /home/rep.sql.gz (在root用户界面将数据导出)
2、在slave上插入数据
(1)停止slave服务:
stop slave
(2)在slave上指定master(log_file和log_pos必须与锁定时的master一致):
change master to master_host='192.168.1.1',master_user='backup33',master_password='12345',master_log_file='mysql-bin.000005' ,master_log_pos=14436924;
(3)在slave上执行数据插入sql:
source /home/rep.sql.sql
(4)启动slave:
start slave;
(5)查看slave状态是否正常:
show slave status\G; 出现以下两个YES代表正常,随后可在master上进行数据插入测试是否能正常同步
Slave_IO_Running: Yes
Slave_SQL_Running: Yes: