MysqL 的异步复制
1. 复制概述
MysqL复制的优点:
2. 异步复制
2.1 基本环境
2.2 主库配置
gtid-mode = on
enforce-gtid-consistency =
binlog_format = row
server-id =
log-bin = /MysqL/log/MysqL-bin
binlog_cache_size = 1M
创建复制用账号:
create user 'repl'@'.' identified by '';
grant replication slave on *.* to 'repl'@'.';
2.3 从库配置
gtid-mode = on
enforce-gtid-consistency =
binlog_format = row
server-id =
log-bin = /MysqL/log/MysqL-bin
binlog_cache_size = 1M
skip_slave_start =
导出导入:
--主库导出
MysqLdump -uroot -p --single-transaction --master-data=2 --databases test123 > test_200908.sql
--从库导入
MysqL -uroot -p < test_200908.sql
--调整复制起点
change master to master_host='192.168.0.1', master_port=, master_user='repl', master_password='123456', master_auto_position=;
--开始复制
start slave;
--查看复制
show slave status\G;
2.4 环境校验
--主库,创建表t1并插入数据
use test123;
create table t1(id int);
insert into t1 values();
select * from t1;
--从库,检查t1表是否存在
use test123;
select * from t1;
2.5 扩展问题
如果主库导出时出现如下警告信息:
MysqLdump -uroot -p --single-transaction --master-data=2 --databases test123 > test_200908.sql
Enter password:
Warning: A partial dump from server that has GTIDs will by default include the GTIDs of all transactions, even those that changed suppressed parts of the database. If you don't want to restore GTIDs, pass --set-gtid-purged=OFF. To make a complete dump, pass --all-databases --triggers --routines --events.
3. 小结
异步复制的配置步骤相对简单: