mysql binlog大小問題 max_binlog_size = 100M
http://bbs.chinaunix.net/thread-1843561-1-1.html
mysql開啟了二進制日志binlog,如mysql-bin.000005等,重啟服務后會自動更新這個文件,如原來是000005的話會生成000006。
請問,如果服務一直不重啟,什么情況下會自動產生新的日志文件呢,是大小到了一定量時自動產生新的文件么?比如000005到了1G,原來000005的話會自動生成一個000006,以后就走6這個了。是根據什么?
mysqld在每個二進制日志名后面添加一個數字擴展名。每次你啟動服務器或刷新日志時該數字則增加。如果當前的日志大小達到max_binlog_size,還會自動創建新的二進制日志。如果你正使用大的事務,二進制日志還會超過max_binlog_size:事務全寫入一個二進制日志中,絕對不要寫入不同的二進制日志中。
my.ini中有兩個設置:
#expire_logs_days = 10
#max_binlog_size = 100M
Expire_logs_days :定義了mysql清除過期日志的時間。
二進制日志自動刪除的天數。默認值為0,表示“沒有自動刪除”。啟動時和二進制日志循環時可能刪除。
max_binlog_size
如果二進制日志寫入的內容超出給定值,日志就會發生滾動。你不能將該變量設置為大於1GB或小於4096字節。 默認值是1GB。
如果你正使用大的事務,二進制日志還會超過max_binlog_size-------上次一個小弟導入24G的sql文件,sql_log_bin沒有關閉,差點杯具
mysqladmin flush-logs 也可以重新開始新的binary log