您的位置:首页 > 数据库 > MySQL

mysql复制原理与机制一

2017-02-07 22:36 260 查看
复制原理:复制需要二进制日志记录数据库上的改变

[root@bogon mysql]# mysqlbinlog  mysqld-relay-bin.000009
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at 4
#170208 20:39:46 server id 163  end_log_pos 120 CRC32 0xbdb725c4        Start: binlog v 4, server v 5.6.35 created 170208 20:39:46
BINLOG '
khGbWA+jAAAAdAAAAHgAAABAAAQANS42LjM1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAEzgNAAgAEgAEBAQEEgAAXAAEGggAAAAICAgCAAAACgoKGRkAAcQl
t70=
'/*!*/;
# at 120
#170208 20:39:46 server id 108  end_log_pos 0 CRC32 0x0649f72c  Rotate to mysql-bin.000005  pos: 4
# at 167
#170208 20:33:47 server id 108  end_log_pos 120 CRC32 0x045c4ff1        Start: binlog v 4, server v 5.6.35-log created 170208 20:33:47
BINLOG '
KxCbWA9sAAAAdAAAAHgAAAAAAAQANS42LjM1LWxvZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAEzgNAAgAEgAEBAQEEgAAXAAEGggAAAAICAgCAAAACgoKGRkAAfFP
XAQ=
'/*!*/;
# at 283
#170208 20:34:49 server id 108  end_log_pos 203 CRC32 0xb10230cc        Query   thread_id=9     exec_time=0     error_code=0
SET TIMESTAMP=1486557289/*!*/;
SET @@session.pseudo_thread_id=9/*!*/;
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=1075838976/*!*/;
SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C utf8 *//*!*/;
SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=8/*!*/;
SET @@session.time_zone='SYSTEM'/*!*/;
SET @@session.lc_time_names=0/*!*/;
SET @@session.collation_database=DEFAULT/*!*/;
BEGIN
/*!*/;
# at 366
#170208 20:34:49 server id 108  end_log_pos 313 CRC32 0x59ee4c4e        Query   thread_id=9     exec_time=0     error_code=0
use `hk`/*!*/;
SET TIMESTAMP=1486557289/*!*/;
insert into test values(4,now())
/*!*/;
# at 476
#170208 20:34:49 server id 108  end_log_pos 344 CRC32 0x1735772f        Xid = 110
COMMIT/*!*/;
DELIMITER ;
# End of log file
ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;


View Code

复制特点
1.sql更新,没写binary log 不可能复制
2.正在执行的sql更新,也不可能被复制
3.只有执行完成而且成功的语句才会被复制
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: