mysql主从异常,主从延时

1,主库原因

1、主库做修改操作之后,才会记录二进制日志。
sync_binlog=0/1
1:表示:每次事务commit,刷新binlog到磁盘
0:系统决定binlog什时候刷新到磁盘

2,io导致
将binlog和数据分开放
单独binlog存放在固态盘

3、主库的压力特别大(大事务、多事务)
解决方案:
做好数据库优化
(1) 将大事务分成多个小事务。
TPS:每秒的事务量
QPS:每秒查询量
买更好的硬件(scale up)
业务分离——读写分离、分库分表(scale out)

4、从库数量多,导致dump线程繁忙
数据库主从,从库数量不宜超过四台,如果超过对主库压力过大

2,从库原因

1、relay-log写入慢(硬件慢)
半同步复制,可以控制relaylog及时写入
relaylog SSD

2、SQL线程慢
主从硬件差异比较大,更换硬件
从库没有作过优化,优化数据库

3,竟可能的缩小主从延迟

大事务拆成小事务,多事务进行分离
使用多级主从,分库分表架构
将binlog放到ssd或者flash上,高性能存储
将relay放到ssd或者flash上
尽量选择和主库一致硬件
数据库主从单独使用高性能交换机
数据库主从机器网卡做端口聚合,竟可能减小网络延时

4mycat的全局表

Mycat的全局表,比如你有三个库,写入时三个库都做写入,但是读取时只从其中一个库读取,
全局表配置使用type='global
全局表数据增加或者修改时,节点之间保持数据一致
全局表只适合修改不频繁的表,例如字典表
为了保持数据的一致性,当全局表更新数据时会通过锁机制来保证数据统一。
这也导致了并发更新的时候死锁的发生

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值