千家信息网

延时复制 delayed replication

发表于:2024-10-07 作者:千家信息网编辑
千家信息网最后更新 2024年10月07日,mysql5.6开始支持延时复制,默认master_delay为0秒,CHANGE MASTER TO MASTER_DELAY = N;表示延时N秒原理:延时复制的本质是sql_thread需要等待
千家信息网最后更新 2024年10月07日延时复制 delayed replication

mysql5.6开始支持延时复制,默认master_delay为0秒,

CHANGE MASTER TO MASTER_DELAY = N;

表示延时N秒

原理:延时复制的本质是sql_thread需要等待延时时间之后才能执行。


延时复制适用场景:

(1)防止主库误操作,在复制同步之前,可以停止同步;

(2)用作测试,不用模拟负载就可以实现主从延迟;

(3)用来检查数据库以前的数据,如延迟设置为1周,这样不需要备份恢复就可以看到比对一周以前的数据

(4)reset slave会把SQL_delay的值清零,并且还会把Master_Log_File等值清空,但是不影响复制;



创建一个延时复制:slave:root@localhost [testdb]>stop slave;root@localhost [testdb]>change master to master_delay=60;root@localhost [testdb]>start slave;root@localhost [testdb]>show slave status\G......                    SQL_Delay: 60  --延时时间          SQL_Remaining_Delay: 56           --剩余时间      Slave_SQL_Running_State: Waiting until MASTER_DELAY seconds after master executed event   --等待延时......master:root@localhost [testdb]>delete from t1 where c1=4;slave:root@localhost [testdb]>select * from t1;+----+------+| c1 | c2   |+----+------+|  1 | aaa  ||  2 | bbb  ||  3 | ccc  ||  4 | ddd  |+----+------+root@localhost [testdb]>show processlist;+----+-------------+-----------+--------+---------+------+----------------------------------------------------------------+------------------+| Id | User        | Host      | db     | Command | Time | State                                                          | Info             |+----+-------------+-----------+--------+---------+------+----------------------------------------------------------------+------------------+| 26 | root        | localhost | testdb | Query   |    0 | starting                                                       | show processlist || 27 | system user |           | NULL   | Connect |  345 | Waiting for master to send event                               | NULL             || 28 | system user |           | NULL   | Connect |   10 | Waiting until MASTER_DELAY seconds after master executed event | NULL             |+----+-------------+-----------+--------+---------+------+----------------------------------------------------------------+------------------+#在没有达到60秒之前查看relay-log日志,发现已经写入relay-lo中,说明延时是阻塞SQL_thread线程[root@Darren1 data]# mysqlbinlog -vv --base64-output=decode-rows relay-bin.000003BEGIN/*!*/;# at 452#170409 22:12:27 server id 330622  end_log_pos 5624 CRC32 0x86f7edf4    Table_map: `testdb`.`t1` mapped to number 147# at 502#170409 22:12:27 server id 330622  end_log_pos 5668 CRC32 0x697c52ed    Delete_rows: table id 147 flags: STMT_END_F### DELETE FROM `testdb`.`t1`### WHERE###   @1=3 /* INT meta=0 nullable=0 is_null=0 */###   @2='ccc' /* VARSTRING(30) meta=30 nullable=1 is_null=0 */root@localhost [testdb]>select * from t1;+----+------+| c1 | c2   |+----+------+|  1 | aaa  ||  2 | bbb  ||  3 | ccc  |+----+------+


数据 时间 同步 延迟 不用 主从 原理 场景 备份 数据库 日志 本质 线程 剩余 影响 支持 检查 测试 阻塞 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 厦门精车互联网科技有限公司 服务器lE安全怎么降低 阿里云主机数据库端口映射 数据库中如何删除表中的行 软件开发完成情况 教育企业数据库 中国要设置域名根服务器吗 嘉定区管理软件开发推荐咨询 走红网络安全知识 无线传感器网络安全儿童画 苏州戴尔服务器设备存储 维斯易联打印服务器怎么使用 网络安全观看小学生心得 深圳c语言软件开发价位 数据库保护怎么解决 4核8线程和平常软件开发区别 网络安全讲师必备技能 深圳排队网络技术官网 供应链网络安全案例 网络安全的定义内容目标 网络安全需要实现哪些目标 我的世界电脑版速搭服务器叫啥 浙江正规网络技术服务询问报价 80台网吧服务器 a股正宗的软件开发公司 数据库是大学的课程嘛 广州市世安网络安全产品 第五届互联网大会佳都科技 数据库查询分不清楚哪一列 什么app软件开发公司好
0