复制MySQL 延迟复制:提高数据安全性的新方案(mysql延迟)
MySQL数据库作为关系型数据库中最受欢迎的强大解决方案,具有良好的性能和强大的实用程序。而MySQL的延迟复制功能给企业提供了另一种安全数据的可能性。
MySQL延迟复制是利用MySQL的视图功能,增加表的复制处理来进行数据库复制,从而提高数据库整体安全性。在延迟复制模式下,会把MySQL主库上的binlog文件在内部解析出SQL动作,然后在从库上自动执行。比如,MySQL Master上更新一行记录,延迟复制模式会把这个更新操作当做一条SQL记录到binlog文件,从库读取后就会把这个更新操作传播到下游从库中。
MySQL延迟复制的技术原理是:slave服务器向master服务器发出请求,master服务器将自身的binlog中的sql语句读取并且通过网络发给slave服务器,然后slave服务器接收到binlog日志并将其解析执行。
与传统的MySQL复制不同的是,延迟复制会根据binlog的时间设定一个延迟捕获范围,表示只把master 上执行的较新的操作更新到slave上,这有效提高了slave节点数据落后于master节点的延迟度,保证了数据安全性。
下面我们通过实例来演示MySQL延迟复制的操作流程,比如,Master上有一张表sletb1,slave上也有同名表:
// 初始化Master上表sletb1
master> CREATE TABLE sletb1 (
id int primary key,
name VARCHAR(20)
);
//在slave上初始化实际slvテンポラリ
slave> CREATE TABLE slv (
id int primary key,
name VARCHAR(20)
);
//在master上插入一条数据
master> INSERT INTO sletb1 (id,name) VALUES (1,’Test’);
//设置延迟复制
master> SET GLOBAL master_delay = 60;
//执行slave上的查询操作
slave> SELECT * FROM slv;
//结果
id name
1 Test