简单的说延迟复制就是设置一个固定的延迟时间,比如1个小时,让从库落后主库一个小时。

MySQL延时复制库作用

存在即合理,延迟复制可以用来解决以下三类问题:

 1.用来在数据库误操作后,快速的恢复数据。

  比如有人误操作的表,那么这个操作在延迟时间内,从库的数据并没有发生变化,可以用从库的数据进行快速恢复。

  把服务停了,把从库的表直接导入主库,补binlog,binglog不能恢复表

 2.用来做延迟测试

  比如你做好的数据库读写分离,把从库作为读库,那么你想知道当数据产生延迟的时候到底会发生什么。那么你就可以使用这个特性也模拟延迟。

  压力不大的时候,延迟会很小,延迟比较大的时候是什么样子?主从延迟5分钟是什么样子?

 3.用于老数据的查询等需求

  比如你经常需要查看某天前一个表或者字段的数值,你可能需要把备份恢复后进行查看,

  如果有延迟从库,比如延迟一周,那么就可以解决这样类似的需求。 当然,并不是所有团队都有这样的需求

设置延迟复制

延迟复制配置,通过设置Slave上的MASTER TO MASTER_DELAY参数实现:

CHANGE MASTER TO MASTER_DELAY = N;

N为多少秒,该语句设置从数据库延时N秒后,再与主数据库进行数据同步复制。

具体操作:

登陆到Slave数据库服务器

mysql>stop slave;mysql>CHANGE MASTER TO MASTER_DELAY = 600;mysql>start slave;mysql>show slave status \G;

查看SQL_Delay的值为600,表示设置成功。

命令注释:

SQL_Delay:一个非负整数,表示秒数,Slave滞后多少秒于master。

SQL_Remaining_Delay:当 Slave_SQL_Running_State 等待,直到MASTER_DELAY秒后,Master执行的事件,

此字段包含一个整数,表示有多少秒左右的延迟。在其他时候,这个字段是0。

好了,这就是今天的内容,小知识,短而美,长篇的干货,非常棒,但是我们真正学会的确比较少。把这个小知识积累起来吧。更多关于MySQL延时复制库方法请查看下面的相关链接

更多相关文章

  1. MySQL系列多表连接查询92及99语法示例详解教程
  2. ES6 变量声明,箭头函数,数组方法,解构赋值,JSON,类与继承,模块化练习
  3. 浅谈Java中Collections.sort对List排序的两种方法
  4. Python list sort方法的具体使用
  5. python list.sort()根据多个关键字排序的方法实现
  6. android上一些方法的区别和用法的注意事项
  7. android实现字体闪烁动画的方法
  8. Android中dispatchDraw分析
  9. Android(安卓)- Manifest 文件 详解

随机推荐

  1. Basic4android (Basic for Android) - Ra
  2. Android探索之旅(第二十一篇)Android中事件
  3. 小米2及其他Android手机无法连接mac解决
  4. android TextView显示文字和图片
  5. Android中dip, dp, px, sp之间的区别
  6. Android源码下载
  7. 2013.05.16——— android 关于listview
  8. android下giflib
  9. [Android] 录音与播放录音实现
  10. android添加外部按键