mysql 5.7主从延迟 相关参数配置
一直以來,都是聽到 mysql 5.7已 消除了延遲,但我們測試環境主從一直存在延遲。
找了很多原因,但一直不理想,直接到找參數:sync_relay_log ,在討論主從延遲時,很少會說到這個參數。
因為它默認是 10000.也正是這樣,容易被忽略。
×××××××××××××××××××××××××××××××××××××××××××××××××××××
innodb_flush_log_at_trx_commit:是 InnoDB 引擎特有的,
ib_logfile的刷新方式( ib_logfile:記錄的是redo log和undo log的信息)
innodb_flush_log_at_trx_commit= 2
sync_binlog = 500
#sync_relay_log,這個參數用來保證relay log的安全 功能類似于 sync_binlog 參數
sql_thread 讀取主節點同步過來的日志進行重解析為sql,并刷新到relay_log 文件中。
這個參數默認就是 10000 ,在不明所以的情況下,被設置成了 sync_relay_log=1 ,
坑太大,測試了半天才知道是這個參數引起的大延遲。
這個參數不常用,很少會被設置成1,被它害慘了。
sync_relay_log = 10000 #寫10000個event才fsync一次寫盤
sync_relay_log_info = 10000
sync_master_info = 10000
relay_log_recovery=1 #保證relay-log的完整性
#多線程 sql_thread 重解析,以加快同步
slave-parallel-type=LOGICAL_CLOCK #行級別多線程
slave-parallel-workers=16 #線程數量
master-info-repository=TABLE #
relay-log-info-repository=TABLE #
log_slave_updates=1
#緩存刷新方式,IO優化
innodb_flush_method=O_DIRECT
總結
以上是生活随笔為你收集整理的mysql 5.7主从延迟 相关参数配置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: timestamp 数据类型在 sql_
- 下一篇: MySQL5.7新特性——在线收缩und