linux_player_c(系统&开发)

心识原本性,於此不了之

5.mysql学习笔记:复制的原理

基于语句的复制

在早期的mysql版本中只支持基于语句的复制(也称为逻辑复制),实际上就是把主库上的sql语句再执行一遍。

特点:

1.实现简单,只需要执行相关sql语句,能够让主备保持同步。
2.如果语句中包含元数据信息(比如当前时间),则会出现问题。
3.而且更新必须是串行的,这需要更多的锁。


基于行的复制

从mysql5.1开始支持基于行的复制,这种方式将实际的数据记录在二进制文件中。

优点:
由于无需重放更新主数据库的查询过程,直接进行复制,所以可以高效的复制数据。

缺点:
有的时候只是需要复制指令,全表的更新,如果使用基于行的复制将会造成大的开销。

mysql可以在基于语句的复制基于行的复制之间进行动态的切换。默认情况下使用的是基于语句的复制


下面我们总结下两种复制的优缺点:

基于语句复制的优点

可以适用多种情况,本质上就是重新执行sql语句。

基于语句复制的缺点

实用面太窄,比如正在实用触发器或者存储过程,就不要实用基于语句的复制。

基于行的复制模式的优点

1.对于所有的sql构造、触发器、存储过程等都可以正确地执行。
2.减少了锁的使用;
3.基于行的复制能够帮助快速地找到并解决数据不一致的情况。

基于行的复制模式的缺点

1.由于语句并没有出现在日志记录里,所以无法判决执行了那些sql。只能知其然不能知其所以然。


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/linux_player_c/article/details/49945121
文章标签: mysql sql 二进制
个人分类: mysql linux系统
上一篇4.mysql学习笔记:mysql的复制(一)
下一篇6.mysql学习笔记:myql的复制拓扑
想对作者说点什么? 我来说一句

数据库系统原理学习笔记

2010年02月25日 8.87MB 下载

移动2G学习笔记

2018年02月23日 4.89MB 下载

BT 相关资源合集 BT 相关资源合集

2010年08月31日 2.32MB 下载

没有更多推荐了,返回首页

关闭
关闭