怎么在MySQL中实现延时复制库

47次阅读
没有评论

共计 951 个字符,预计需要花费 3 分钟才能阅读完成。

自动写代码机器人,免费开通

怎么在 MySQL 中实现延时复制库?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面丸趣 TV 小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

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。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注丸趣 TV 行业资讯频道,感谢您对丸趣 TV 的支持。

向 AI 问一下细节

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-04发表,共计951字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)