MySQL 二進制文件(mysql-bin.000001)刪除

MySQL之所以產生二進制文件是因爲配置文件(/etc/my.cnf)中設置了參數
log-bin=mysql-bin

有的時候不想讓mysql服務停止,那我們可以用下面的方法來刪除binary文件。
我們可以看到產生了二進制文件

01.mysql>showbinarylogs;(或者showmasterlogs;)

02.+------------------+------------+

03.|Log_name|File_size|

04.+------------------+------------+

05.|mysql-bin.000001|15056|

06.|mysql-bin.000002|628368|

07.|mysql-bin.000003|377|

08.|mysql-bin.000004|141|

09.|mysql-bin.000005|1073742287|

10.|mysql-bin.000006|1073742035|

11.|mysql-bin.000007|823654620|

12.|mysql-bin.000008|2265|

13.|mysql-bin.000009|628368|

14.|mysql-bin.000010|117|

15.|mysql-bin.000011|4525|

16.|mysql-bin.000012|117|

17.|mysql-bin.000013|3147|

18.|mysql-bin.000014|85468109|

19.+------------------+------------+
複製代碼

二進制文件一般用來做replication同步,當查看slave上同步正確,或者是同步已經完成了,這時如果硬盤空間又不是很大的話,那我們可以手動去清理這些binary文件。
很簡單:

01.mysql>resetmaster;

02.QueryOK,0rowsaffected(8.47sec)
複製代碼或清除指定部分logs:
01.mysql>purebinarylogsto'mysql-bin.000013';
複製代碼就是刪除二進制文件到mysql-bin.000013,最後一個mysql-bin.000014保留着。

或將指定時間之前的binarylogs清掉

01.mysql>purgebinarylogsbefore'2011-05-2812:05:38';
複製代碼
.查看當前binarylog的情況:

01.mysql>showmasterstatus;
複製代碼
.查看binarylogs的內容:

01.mysql>showbinlogevents;
複製代碼命令行下:

01.#mysqlbinlog/var/log/mysql/log-bin.000140;
複製代碼或者

01.#mysqlbinlog--start-datetime='2011-07-0100:00:00'

02.--stop-datetime='2010-07-1500:00:00'/var/log/mysql/log-bin.000020>

03../tmp.log
複製代碼
.在my.cnf/my.ini中設定binarylogs回滾天數:
expire_logs_days=7
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章