一、參數(shù)解釋
0:log buffer將每秒一次地寫(xiě)入log file中,并且log file的flush(刷到磁盤(pán))操作同時(shí)進(jìn)行。該模式下在事務(wù)提交的時(shí)候,不會(huì)主動(dòng)觸發(fā)寫(xiě)入磁盤(pán)的操作扣典。
1:每次事務(wù)提交時(shí)MySQL都會(huì)把log buffer的數(shù)據(jù)寫(xiě)入log file,并且flush(刷到磁盤(pán))中去慎玖,該模式為系統(tǒng)默認(rèn)贮尖。
2:每次事務(wù)提交時(shí)MySQL都會(huì)把log buffer的數(shù)據(jù)寫(xiě)入log file,但是flush(刷到磁盤(pán))操作并不會(huì)同時(shí)進(jìn)行趁怔。該模式下湿硝,MySQL會(huì)每秒執(zhí)行一次 flush(刷到磁盤(pán))操作。
二润努、參數(shù)修改
找到mysql配置文件mysql.ini关斜,修改成合適的值,然后重啟mysql铺浇。
三痢畜、注意事項(xiàng)
當(dāng)設(shè)置為0,該模式速度最快鳍侣,但不太安全丁稀,mysqld進(jìn)程的崩潰會(huì)導(dǎo)致上一秒鐘所有事務(wù)數(shù)據(jù)的丟失。
當(dāng)設(shè)置為1倚聚,該模式是最安全的线衫,但也是最慢的一種方式。在mysqld 服務(wù)崩潰或者服務(wù)器主機(jī)crash的情況下秉沼,binary log 只有可能丟失最多一個(gè)語(yǔ)句或者一個(gè)事務(wù)桶雀。。
當(dāng)設(shè)置為2唬复,該模式速度較快矗积,也比0安全,只有在操作系統(tǒng)崩潰或者系統(tǒng)斷電的情況下敞咧,上一秒鐘所有事務(wù)數(shù)據(jù)才可能丟失棘捣。
四、其他相關(guān)
查找資料時(shí)候看到其他文章說(shuō)innodb_flush_log_at_trx_commit和sync_binlog 兩個(gè)參數(shù)是控制MySQL 磁盤(pán)寫(xiě)入策略以及數(shù)據(jù)安全性的關(guān)鍵參數(shù)休建,當(dāng)兩個(gè)參數(shù)都設(shè)置為1的時(shí)候?qū)懭胄阅茏畈钫Э郑扑]做法是innodb_flush_log_at_trx_commit=2,sync_binlog=500 或1000
作者:迎風(fēng)淺吟
來(lái)源:CSDN
原文:https://blog.csdn.net/codepen/article/details/52160715
版權(quán)聲明:本文為博主原創(chuàng)文章测砂,轉(zhuǎn)載請(qǐng)附上博文鏈接茵烈!