MySQL复制
MySQL复制是指将主库上的DDL和DML操作通过二进制日志传到从库上,使主库和从库上的数据保持同步
MySQL主从架构:优点:故障时候可以切库;读写分离;从库执行其他业务例如备份。
1:Master-Slave 主从同步
2:Master-Slave-Slave……级联
3:Master-Master 互为主备
【主从同步】Master-Slave
注:需要主库打开log-bin ;设置server-id
#mysqldump -uroot -p --all-databases --master-data=2 --routines --events --quick>
--master-data=2 表示需要记录导出数据当时主库的binlog位置 --routines 表示导出存储过程 --events 表示导出事件 --quick 表示让服务端不将结果集一次发送,而是分批发送,可减轻压力 注:--master-data后默认是锁库的,可确保数据一致性,即导出数据和binlog位置的一致。 对于Innodb引擎,可增加--single-transaction取消锁库并利用Innodb事务特性确保数据一致
#创建同步账号
#grant replication slave, replication client on *.* to [email protected]‘%‘ identified by ‘gechong‘;
#确定主库同步点
可以在Master上执行 SHOW MASTER STATUS; 也可以查看刚才导出的文件
#从库同步数据
#mysql -uroot -p < Master_data_20140920.sql
#从库CHANGE
#CHANGE MASTER TO MASTER_LOG_FILE=‘mysql.000002‘, MASTER_LOG_POS=525, master_host=‘10.1.29.10‘, master_port=3306, master_user=‘replication‘, master_password=‘gechong‘;
#查看从库状态
#SHOW SLAVE STATUS \G
如果Slave_IO_Running 和 Slave_SQL_Running都为yes时,则Master-Slave搭建成功。
时间: 2024-10-10 18:20:27