时间:2021-07-01 10:21:17 帮助过:27人阅读
2)异步复制
MySQL默认的复制即是异步的。主库执行完客户端提交的事务后会立即将结束返回给客户端,并不关心从库是否已经接收并处理,这样就会有一个问题,主如果crash掉了,此时主上已经提交的事务可能并没有传上,如果此时,强行将从提升为主,可能导致新主上的数据不完整。
3)半同步复制
介于异步复制和全同步复制之间,主库在执行完客户端提交的事务后不是立刻返回给客户端,而是等待至少一个从库接收到并写到relaylog中返回给客户端。相对于异步复制,半同步复制提高了数据的安全性,同时它也造成了一定程度的延迟,这个延迟最少是一个TCP/IP往返的时间。所以,半同步复制最好在低延迟时的网络中使用。
注:通过程序代码实现mysql读写分离自然是一个不错的选择,但是并不是所有的应用都适合在程序代码中实现读写分离,像一些大型复杂的java应用,如果在程序代码中实现读写分离对代码改动就较大,像这种应用一般会考虑使用代理层来实现。
mysql读写分离
标签:读写 应用 基础 基本 客户 tcp 写入 提升 系统