MySQL 5.6 延迟复制,误操作后的数据库恢复

MySQL 5.6 支持延迟复制,可以在Slave服务器指定一个延迟的值。默认值为0秒。使用MASTER_DELAY 选项为CHANGE MASTERTO 设置N秒延迟。

1. 下面来实际演示,正常运行的从节点执行,设置延迟100秒

STOP SLAVE;
CHANGE MASTER TO MASTER_DELAY = 100;
START SLAVE;
SHOW SLAVE STATUS\G;
显示
                    SQL_Delay: 100  --延迟 100S
          SQL_Remaining_Delay: NULL

2. 设置取消延迟复制

STOP SLAVE ;
CHANGE MASTER TO MASTER_DELAY=0;
START SLAVE;
SHOW SLAVE STATUS\G;
                    SQL_Delay: 0  --取消延迟
          SQL_Remaining_Delay: NULL

3. 测试

主节点创建库
CREATE DATABASE TEST;
从节点查看
SHOW SLAVE STATUS\G;
.......
                    SQL_Delay: 100
          SQL_Remaining_Delay: 83
      Slave_SQL_Running_State: Waiting until MASTER_DELAY seconds after master executed event
.......

4. 参考官网文档

https://dev.mysql.com/doc/refman/5.6/en/replication-delayed.html
时间: 2024-12-13 00:17:45

MySQL 5.6 延迟复制,误操作后的数据库恢复的相关文章

MySQL 误操作后如何快速恢复数据~!~!~

基本上每个跟数据库打交道的程序员(当然也可能是你同事)都会碰一个问题,MySQL误操作后如何快速回滚?比如,delete一张表,忘加限制条件,整张表没了.假如这还是线上环境核心业务数据,那这事就闹大了.误操作后,能快速回滚数据是非常重要的. 传统解法 用全量备份重搭实例,再利用增量binlog备份,恢复到误操作之前的状态.然后跳过误操作的SQL,再继续应用binlog.此法费时费力,不值得再推荐. 利用binlog2sql快速闪回 首先,确认你的MySQL server开启了binlog,设置了

当数据被误删除/误操作后造成数据丢失。你尝试过用什么手段来挽救数据/损失?

一.前提 当数据被误删除/误操作后,第一时间要关闭数据库.业务方需要紧急挂停机公告,避免数据二次污染,用于保护数据的一致性 BINLOG格式为ROW格式,不讨论其他格式的BINLOG 二.数据被误操作(update/delete/drop)造成数据丢失,可以用哪些手段来恢复? BINLOG恢复:可以使用逆向解析BINLOG工具来恢复.例如:binlog2SQL等 延迟从库: 可以通过解除延迟从库,并指定BINLOG结束位置点,可以实现数据恢复 三.数据被误删除(rm/物理文件损坏)造成数据丢失,

MySQL 5.7 延迟复制

MySQL 5.7延迟复制是通过设置复制参数MASTER_DELAY实现(单位为秒,就是从库延迟多少秒后执行这条SQL) 例如: mysql> show slave status\G *************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: 10.10.1.101 ..... Slave_IO_Runnin

误删除或误格式化后的文件恢复

格式化的原理 当计算机内的文件被有意无意的删除.或遭到病毒破坏.分区被格式化后,若想恢复这些已丢失的文件,均可使用本功能.实际上,操作系统在删除文件时,只是将被删除文件打上了"删除标记",并将文件数据占用的磁盘空间标记为"空闲".文件数据并没有被清除,还静静地"躺"在磁盘上.只要删除文件后没有建立新的文件,操作系统没有写入新的数据,这些被删除的文件数据就不会被破坏,就有机会通过一定的技术手段将它们"抢救"出来. 格式化操作执行

[网络课摘抄]8.1模拟控制文件丢失后的数据库恢复(完全恢复)

1.环境准备 1.1确认数据库版本 1.2确认数据库归档 1.3备份数据库文件 2模拟控制文件丢失后的数据库恢复(完全恢复). 2.1查看控制文件位置 2.2执行操作后删除控制文件 2.3启动数据库 启动数据库的时候发现数据库发生了报错,提示无法确认控制文件,检查告警文件,我们现在检查一下告警文件里的信息: 2.4重建控制文件 对于日志和数据文件都完整的情况下,如果只是控制文件丢失,那么重建控制文件是最好的一种解决方式,一般重建控制文件能够解决99%的问题,现在我们就重建控制文件. 2.5尝试打

MySQL 误操作后数据恢复(update,delete忘加where条件)

在数据库日常维护中,开发人员是最让人头痛的,很多时候都会由于SQL语句写的有问题导致服务器出问题,导致资源耗尽.最危险的操作就是在做DML操作的时候忘加where条件,导致全表更新,这是作为运维或者DBA的我们改如何处理呢?下面我分别针对update和delete操作忘加where条件导致全表更新的处理方法. 一. update 忘加where条件误操作恢复数据(binglog格式必须是ROW) 1.创建测试用的数据表 mysql> create table t1 ( -> id int un

MySQL误操作后的数据恢复

一.开启binlog. 首先查看binlog是否开启 mysql> show variables like "log_bin"; +---------------+-------+ |Variable_name | Value  +---------------+-------+ | log_bin     OFF    +---------------+-------+ 1 row in set (0.00 sec) 值为OFF,需开启,开启binlog方式如下: #vim /

mysql主从复制、延迟复制、半同步

#xtrabackup备份: #备份/data/mysql_backup/percona-xtrabackup-2.4.9-Linux-x86_64/bin/xtrabackup --defaults-file=/etc/my.cnf --backup --target-dir=/data/backup/2020-01-22-14 --user=root --password= -S /var/lib/mysql/mysql.sock #恢复/data/mysql_backup/percona-

MySQL 5.7 延迟复制环境搭建和测试

安装主从 MySQL 5.7 # 主 MySQL5.7 cd /usr/local tar -xvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz mv mysql-5.7.23-linux-glibc2.12-x86_64/ mysql cd mysql mkdir data conf vim conf/my.cnf ------------------------------------------- [mysqld] basedir=/usr/loc