本篇内容主要讲解“Mysql怎么配置从库延迟应用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Mysql怎么配置从库延迟应用”吧!
延迟应用主要用于防范逻辑错误,如主库误修改、误删除等,从库在设定时间内,还没有应用这些错误的SQL,则可以在从库获取误操作之前的数据。
Mysql通过指定从库的master_delay选项来实现延迟应用。
1、安装Mysql并配置主从
参考http://blog.itpub.net/28536251/viewspace-2138854/分别在两节点安装Mysql。
参考http://blog.itpub.net/28536251/viewspace-2138928/或者http://blog.itpub.net/28536251/viewspace-2139007/配置主从。
2、从库配置延迟应用
(root@localhost)[(none)] stop slave sql_thread;
Query OK, 0 rows affected (0.15 sec)
(root@localhost)[(none)] change master to master_delay=60;
Query OK, 0 rows affected (0.02 sec)
#从库延迟60秒。
(root@localhost)[(none)] start slave sql_thread;
Query OK, 0 rows affected (0.04 sec)
3、测试
主库:
(root@localhost)[test] insert into tb1 values(3);
Query OK, 1 row affected (0.33 sec)
从库:
(root@localhost)[(none)] show slave status\G
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 10.163.84.16
Master_User: repl
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000002
Read_Master_Log_Pos: 1298
Relay_Log_File: dbrac17-relay-bin.000003
Relay_Log_Pos: 594
Relay_Master_Log_File: mysql-bin.000002
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 1024
Relay_Log_Space: 1839
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: 4
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id: 8416
Master_UUID: 3de828ce-354c-11e7-9f0b-0050568a4cf6
Master_Info_File: /usr/local/mysql/data/master.info
SQL_Delay: 60
SQL_Remaining_Delay: 56
Slave_SQL_Running_State: Waiting until MASTER_DELAY seconds after master executed event
Master_Retry_Count: 86400
Master_Bind:
Last_IO_Error_Timestamp:
Last_SQL_Error_Timestamp:
Master_SSL_Crl:
Master_SSL_Crlpath:
Retrieved_Gtid_Set:
Executed_Gtid_Set:
Auto_Position: 0
Replicate_Rewrite_DB:
Channel_Name:
Master_TLS_Version:
1 row in set (0.00 sec)
#SQL_Delay: 60表示延迟60秒。
#SQL_Remaining_Delay: 56表示还有56秒才开始应用日志。
1分钟后查看:
(root@localhost)[test] select * from tb1;
+------+
| id |
+------+
| 1 |
| 2 |
| 3 |
+------+
3 rows in set (0.00 sec)
到此,相信大家对“Mysql怎么配置从库延迟应用”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。