MySQL 從庫日誌比主庫多

來源:互聯網
上載者:User

MySQL 從庫日誌比主庫多

在群裡聊天的時候,一個群友說,MySQL生產庫主庫宕機,但是主從資料庫資料一致,但是從庫的日誌比主庫多,很是不理解!

諮詢後發現,生產庫的主庫沒有設定sync_binlog=1,而是為sync_binlog=0

因此,在主庫寫入資料的時候,事務已經提交,但是資料在binlog cache中,沒有寫入到磁碟,並且資料已經同步到從庫,此刻主庫宕機,binlog cache中資料丟失,導致從庫的日誌比主庫多。

群友重新設定主從之後,並將sync_binlog設定為1

sync_binlog的重要性及意義:

sync_binlog=n,當每進行n次事務提交之後,MySQL將進行一次fsync之類的磁碟同步指令來將binlog_cache中的資料強制寫入磁碟。

在MySQL中系統預設的設定是sync_binlog=0,也就是不做任何強制性的磁碟排清指令,這時候的效能是最好的,但是風險也是最大的。因為一旦系統Crash,在binlog_cache中的所有binlog資訊都會被丟失。

本文永久更新連結地址:

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.