MySQL的FLUSH句法
MySQL的FLUSH句法(清除或者重新加載内部緩存) FLUSH flush_option [,flush_option],如果你想要清除一些MySQL使用内部緩存,你應該使用FLUSH指令。為了執行FLUSH,你必須有reload權限。
flush_option 可以是下列任何東西:
HOSTS 這個用的最多,經常碰見。主要是用來清空主機緩存表。如果你的某些主機改變IP數字,或如果你得到錯誤消息Host ... isblocked,你應該清空主機表。當在連接配接MySQL伺服器時,對一台給定的主機有多于 max_connect_errors個錯誤連續不斷地發生,MySQL為了安全的需要将會阻止該主機進一步的連接配接請求。清空主機表允許主機再嘗試連接配接。
LOGS 關閉目前的二進制日志檔案并建立一個新檔案,新的二進制日志檔案的名字在目前的二進制檔案的編号上加1。
PRIVILEGES 這個也是經常使用的,每當重新賦權後,為了以防萬一,讓新權限立即生效,一般都執行一把,目地是從資料庫授權表中重新裝載權限到緩存中。
TABLES 關閉所有打開的表,同時該操作将會清空查詢緩存中的内容。
FLUSH TABLES WITH READ LOCK 關閉所有打開的表,同時對于所有資料庫中的表都加一個讀鎖,直到顯示地執行unlock tables,該操作常常用于資料備份的時候。
STATUS 重置大多數狀态變量到0。
MASTER 删除所有的二進制日志索引檔案中的二進制日志檔案,重置二進制日志檔案的索引檔案為空,建立一個新的二進制日志檔案,不過這個已經不推薦使用,改成reset master 了。可以想象,以前自己是多土啊,本來一條簡單的指令就可以搞定的,卻要好幾條指令來,以前的做法是先查出來目前的二進制日志檔案名,再用purge 操作。