int
mysql_refresh(MYSQL *mysql,
unsigned int options)
从 MySQL 5.7.11 开始,mysql_refresh()已弃用并在未来版本的 MySQL 中删除。相反,使用
mysql_query()or
mysql_real_query()来执行FLUSH语句。
此函数刷新表或缓存,或重置复制服务器信息。连接的用户必须具有
RELOAD权限。
options参数是由以下值的任意组合组成的位掩码
。可以对多个值进行“或”运算,以通过一次调用执行多项操作。
-
REFRESH_GRANT刷新授权表,如
FLUSH PRIVILEGES. -
REFRESH_LOG刷新日志,例如
FLUSH LOGS. -
REFRESH_TABLES刷新表缓存,如
FLUSH TABLES. -
REFRESH_HOSTS刷新主机缓存,如
FLUSH HOSTS. -
REFRESH_STATUS重置状态变量,如
FLUSH STATUS. -
REFRESH_THREADS刷新线程缓存。
-
REFRESH_SLAVE在副本服务器上,重置源服务器信息并重新启动副本,如
RESET SLAVE. -
REFRESH_MASTER在源服务器上,删除二进制日志索引中列出的二进制日志文件并截断索引文件,如
RESET MASTER.
-
命令的执行顺序不正确。
-
MySQL 服务器已经消失。
-
查询期间与服务器的连接丢失。
-
出现未知错误。