MySQL主从复制

​1. MySQL支持的复制类型


(1)基于语句的复制
        在主服务器上执行的SQL语句,在从服务器上执行同样的语句。MySQL默认采用基于语句的复制,效率比较高。  一旦发现没法精确复制时,会自动选着基于行的复制。    
(2)基于记录(行,Row)的复制
        把改变的内容复制过去,而不是把命令在从服务器上执行一遍. 从mysql5.0开始支持。
(3)混合类型的复制
        默认采用基于语句的复制,一旦发现基于语句的无法精确的复制时,就会采用基于行的复制。
 
负责在主、从服务器传输各种修改动作的媒介是主服务器的二进制变更日志,这个日志记载着需要传输给从服务器的各种修改动作。因此,主服务器必须激活二进制日志功能。从服务器必须具备足以让它连接主服务器并请求主服务器把二进制变更日志传输给它的权限。
 
 

2. 复制的配置过程


2.1 创建复制账号

命令如下:
mysql > GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* 
TO backup@’10.100.0.200’ 
IDENTIFIED BY ‘1234’;
建立一个帐户backup,并且只能允许从10.100.0.200这个地址上来登陆,密码是1234。
 
Slave_IO_Running=Yes
Slave_SQL_Running=Yes
 
show processlist\G;
 
 

3. 深入复制原理


3.1 基于语句的复制

重新执行一遍SQL语句。基于语句的复制的二进制日志可以很好的进行压缩,而且日志的数据量也较小,占用带宽少。

3.2 基于记录的复制

MySQL增加基于记录的复制,在二进制日志中记录下实际数据的改变,这与其它一些DBMS的实现方式类似。
 



 
 
 
posted @ 2015-08-05 23:18  Uncle_Nucky  阅读(213)  评论(0)    收藏  举报