int
mysql_refresh(MYSQL *mysql,
unsigned int options)
注意
mysql_refresh()
已過時,可能會在未來版本的 MySQL 中移除。請改用 mysql_real_query()
或 mysql_query()
來執行 FLUSH
陳述式。
此函式會清除資料表或快取,或重設複製伺服器資訊。連線的使用者必須具有 RELOAD
權限。
options
引數是一個位元遮罩,由下列值的任意組合組成。可以將多個值進行 OR 運算,以單一呼叫執行多個操作。
-
REFRESH_GRANT
重新整理授權資料表,例如
FLUSH PRIVILEGES
。 -
REFRESH_LOG
清除日誌,例如
FLUSH LOGS
。 -
REFRESH_TABLES
清除資料表快取,例如
FLUSH TABLES
。 -
REFRESH_STATUS
重設狀態變數,例如
FLUSH STATUS
。 -
REFRESH_SLAVE
在複本伺服器上,重設來源伺服器資訊並重新啟動複本,例如
RESET SLAVE
。 -
REFRESH_MASTER
在來源伺服器上,移除二進位日誌索引中列出的二進位日誌檔案,並截斷索引檔案,例如
RESET MASTER
。
-
命令的執行順序不正確。
-
MySQL 伺服器已斷線。
-
在查詢期間,與伺服器的連線中斷。
-
發生不明錯誤。