top
Loading...
13.5.5.2.FLUSH語法
13.5.5.2. FLUSH語法
FLUSH [LOCAL | NO_WRITE_TO_BINLOG] flush_option [, flush_option] ...

如果您想要清除MySQL使用的部分內部緩存,您應該使用FLUSH語句。要執行FLUSH,您必須擁有RELOAD權限。

flush_option可以為以下的任何一個:

·         HOSTS

用于清空主機緩存表。如果有的主機更改了IP號或如果您得到了錯誤信息Host host_name is blocked,則您應該刷新主機表。當在連接到MySQL服務器時,如果對于一個給定的主機,接連出現錯誤“多于max_connect_errors”,此時,MySQL會假定出現了錯誤,并阻止主機后續的連接申請。刷新主機表允許主機嘗試再次連接。請參見A.2.5節,“主機的host_name被屏蔽”。您可以使用max_connect_errors=999999999啟動mysqld,以避免此錯誤信息。

·         DES_KEY_FILE

用于在服務器啟動時,從采用--des-key-file選項指定的文件重新載入DES關鍵字。

·         LOGS

用于關閉并重新打開所有的日志文件。如果您已經指定了一個更新日志文件或一個二進制日志文件,同時沒有擴展,則相對于前一個文件,日志文件的擴展號增加1。如果您在文件名稱中使用了一個擴展,則MySQL會關閉并重新打開日志文件。在Unix中,當相mysqld服務器發送一個SIGHUP信號時,也會如此(例外情況是部分Mac OS X 10.3版本。在這些版本中,mysqld忽略SIGHUPSIGQUIT)。

如果服務器使用--log-error選項,則FLUSH LOGS會導致錯誤日志被重命名(使用后綴-old),同時mysqld會創建一個新的空日志文件。如果沒有給定--log-error選項,則不會進行重命名。

·         PRIVILEGES

用于從mysql數據庫中的授權表重新載入權限。

·         QUERY CACHE

對查詢緩存進行整理碎片,以更好得利用存儲器。與RESET QUERY CACHE不同,本語句不會從緩存中取消任何查詢。

·         STATUS

用于把多數狀態變量重新設置為零。只在當調試查詢時,您才應該使用此項。請參見1.7.1.3節,“如何通報缺陷和問題”。

·         {TABLE | TABLES} [tbl_name [, tbl_name] ...]

當沒有表被命名時,關閉所有打開的表,并迫使所有正在使用的表關閉。這也會刷新查詢緩存。此項含有一個或多個表名稱,只刷新給定的表。和RESET QUERY CACHE語句一樣,FLUSH TABLES還會取消來自查詢緩存的所有查詢結果。

·         TABLES WITH READ LOCK

對于所有帶讀取鎖定的數據庫,關閉所有打開的表,并鎖定所有的表,直到您執行UNLOCK TABLES為止。如果您擁有一個可以及時進行快照的文件系統,比如Veritas,則這是進行備份的非常方便的方法。

·         USER_RESOURCES

用于把所有每小時用戶資源重新設置為零。這可以使已經達到了每小時連接、查詢或更新限值的客戶端立刻重新恢復活性。FLUSH USER_RESOURCES不適用于同時連接的最大限值。請參見13.5.1.3節,“GRANT和REVOKE語法”。

FLUSH語句被寫入二進制日志,除非使用了自選的NO_WRITE_TO_BINLOG關鍵字(或其別名LOCAL)。 注釋:在任何情況下,FLUSH LOGS, FLUSH MASTER, FLUSH SLAVEFLUSH TABLES WITH READ LOCK都不會被記入日志,因為如果它們被復制到一個從屬服務器上,會導致出現問題。

您也可以使用flush-hosts, flush-logs, flush-privileges, flush-statusflush-tables命令訪問含有mysqladmin應用程序的語句。

注釋:在MySQL 5.1.2-alpha中,不可能在已存儲的函數或觸發程序中發布FLUSH語句。不過,您可以在已存儲的過程中使用FLUSH,只要它們不會從已存儲的函數或觸發程序中被調用。請參見I.1節,“對存儲子程序和觸發程序的限制”。

要了解有關RESET語句與復制同時使用的信息,也可以見13.5.5.5節,“RESET語法”。

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