RESET PERSIST [[IF EXISTS] system_var_name]
RESET PERSIST
从数据目录中的 mysqld-auto.cnf
选项文件删除持久化全局系统变量设置。删除持久化系统变量会导致服务器启动时不再从 mysqld-auto.cnf
初始化该变量。有关持久化系统变量和 mysqld-auto.cnf
文件的更多信息,请参见 第 7.1.9.3 节,“持久化系统变量”。
执行 RESET PERSIST
所需的权限取决于要删除的系统变量类型。
对于动态系统变量,此语句需要
SYSTEM_VARIABLES_ADMIN
权限(或已弃用的SUPER
权限)。对于只读系统变量,此语句需要
SYSTEM_VARIABLES_ADMIN
和PERSIST_RO_VARIABLES_ADMIN
权限。
请参见 第 7.1.9.1 节,“系统变量权限”。
根据变量名和`IF EXISTS
`子句是否存在,`RESET PERSIST
`语句有以下几种形式
要从`
mysqld-auto.cnf
`中删除所有持久化变量,请使用`RESET PERSIST
`,不要指定任何系统变量RESET PERSIST;
如果`
mysqld-auto.cnf
`包含动态和只读系统变量,则您必须拥有删除这两种类型的系统变量的权限。要从`
mysqld-auto.cnf
`中删除特定持久化变量,请在语句中指定变量名。RESET PERSIST system_var_name;
这包括插件系统变量,即使插件当前未安装。如果变量不在文件中,则会发生错误。
要从`
mysqld-auto.cnf
`中删除特定持久化变量,但如果变量不在文件中则产生警告而不是错误,请在前面的语法中添加一个`IF EXISTS
`子句。RESET PERSIST IF EXISTS system_var_name;
`RESET PERSIST
`不受`persisted_globals_load
`系统变量的值影响。
`RESET PERSIST
`会影响Performance Schema `persisted_variables
`表的内容,因为表的内容对应于`mysqld-auto.cnf
`文件的内容。另一方面,由于`RESET PERSIST
`不会更改变量值,它不会影响Performance Schema `variables_info
`表的内容,直到服务器重启。
有关清除其他服务器操作状态的`RESET
`语句变体的信息,请参见第 15.7.8.6 节,“RESET 语句”。