目次Mysql主从GTID与binlog的区别迩来在公司看到之前数据库的同步是同步gtid进行搭建主从的,我也是第一次碰到,下面来一起学习一下他们跟我们常使用的binlog有什么区别吧。 MySQL GTID(Global Transaction Identifier)和binlog(二进制日记)是用于搭建主从复制的两种差别的机制。 GTID是MySQL 5.6版本引入的一种全局事件标识符,用于跟踪和标识复制过程中的事件。每个事件都会被分配一个全局唯一的GTID,无论该事件在哪个数据库实例上实验。GTID可以或许确保在主从复制中不会出现数据冲突或数据丢失的情况。使用GTID进行主从复制设置时,主库将事件的GTID信息写入binlog,并将binlog传输给从库,从库使用GTID来确定是否已经复制了某个事件,从而保持主从数据的一致性。 binlog是MySQL的二进制日记,用于记录数据库的全部更改操纵。 它是一种基于文件的日记,可以用于规复数据库到特定时间点或将更改应用到其他数据库实例。 在主从复制中,主库将更改操纵写入binlog,并将binlog传输给从库,从库根据binlog中的内容来重放主库上的更改操纵,从而实现数据复制。 主要区别1. GTID是基于事件的标识符,而binlog是基于更改操纵的日记。GTID可以确保事件在主从之间的有序复制,而binlog只记录更改操纵的内容。 2. GTID可以避免主从复制中的数据冲突或数据丢失,因为每个事件都有唯一的标识符。而binlog需要在从库上正确地应用更改操纵,以确保数据一致性。 3. GTID相对于binlog来说更容易设置和管理,因为它不需要手动设置和维护binlog文件名和位置信息。 4. GTID还可以支持多主复制,即一个从库可以毗连到多个主库进行复制,而binlog一般用于单个主库和单个从库之间的复制。 总结总的来说,GTID是一种更高级的复制机制,可以提供更简朴和可靠的主从复制设置。 它可以确保在主从之间的数据一致性,而且更容易管理和维护。 而binlog则是GTID的底子,用于记录更改操纵的细节,并在从库上重放这些操纵。 以上为个人履历,盼望能给各人一个参考,也盼望各人多多支持脚本之家。 来源:https://www.jb51.net/database/328295279.htm 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
|手机版|小黑屋|梦想之都-俊月星空
( 粤ICP备18056059号 )|网站地图
GMT+8, 2025-7-5 01:27 , Processed in 0.027549 second(s), 19 queries .
Powered by Mxzdjyxk! X3.5
© 2001-2025 Discuz! Team.