top
Loading...
13.6.1.1.PURGEMASTERLOGS語法
13.6.1.1. PURGE MASTER LOGS語法
PURGE {MASTER | BINARY} LOGS TO 'log_name'
PURGE {MASTER | BINARY} LOGS BEFORE 'date'

用于刪除列于在指定的日志或日期之前的日志索引中的所有二進制日志。這些日志也會從記錄在日志索引文件中的清單中被刪除,這樣被給定的日志成為第一個。

例如:

PURGE MASTER LOGS TO 'mysql-bin.010';
PURGE MASTER LOGS BEFORE '2003-04-02 22:46:26';

BEFORE變量的date自變量可以為'YYYY-MM-DD hh:mm:ss'格式。MASTERBINARY是同義詞。

如果您有一個活性的從屬服務器,該服務器當前正在讀取您正在試圖刪除的日志之一,則本語句不會起作用,而是會失敗,并伴隨一個錯誤。不過,如果從屬服務器是休止的,并且您碰巧清理了其想要讀取的日志之一,則從屬服務器啟動后不能復制。當從屬服務器正在復制時,本語句可以安全運行。您不需要停止它們。

要清理日志,需按照以下步驟:

1.    在每個從屬服務器上,使用SHOW SLAVE STATUS來檢查它正在讀取哪個日志。

2.    使用SHOW MASTER LOGS獲得主服務器上的一系列日志。

3.    在所有的從屬服務器中判定最早的日志。這個是目標日志。如果所有的從屬服務器是更新的,這是清單上的最后一個日志。

4.    制作您將要刪除的所有日志的備份。(這個步驟是自選的,但是建議采用。)

5.    清理所有的日志,但是不包括目標日志。

作者:mysql.com
來源:http://dev.mysql.com/doc/refman/5.1/zh/sql-syntax.html
北斗有巢氏 有巢氏北斗