27.7.6.58 mysql_refresh()

int mysql_refresh(MYSQL *mysql, unsigned int options)

Description

Note

从 MySQL 5.7.11 开始,不推荐使用mysql_refresh(),并将在以后的 MySQL 版本中将其删除。而是使用mysql_query()执行FLUSH语句。

此函数刷新 table 或缓存,或重置复制服务器信息。连接的用户必须具有RELOAD特权。

options参数是由以下值的任意组合组成的位掩码。可以对多个值进行“或”运算以通过一个调用执行多个操作。

  • REFRESH_GRANT

刷新授权 table,例如FLUSH PRIVILEGES

  • REFRESH_LOG

刷新日志,例如FLUSH LOGS

  • REFRESH_TABLES

刷新 table 缓存,例如FLUSH TABLES

  • REFRESH_HOSTS

刷新主机缓存,例如FLUSH HOSTS

  • REFRESH_STATUS

重置状态变量,例如FLUSH STATUS

  • REFRESH_THREADS

刷新线程缓存。

  • REFRESH_SLAVE

在从复制服务器上,重置主服务器信息并重新启动从服务器,例如RESET SLAVE

  • REFRESH_MASTER

在主复制服务器上,删除二进制日志索引中列出的二进制日志文件,并截断该索引文件,例如RESET MASTER

Return Values

零成功。如果发生错误,则为非零值。

Errors

命令执行 Sequences 不正确。

MySQL 服务器已经消失了。

在查询期间与服务器的连接已丢失。

出现未知错误。