Error number: MY-013839; Symbol: ER_WARN_CANNOT_PERSIST_SENSITIVE_VARIABLES; SQLSTATE: HY000
Message: Cannot persist SENSITIVE system variables because keyring component support is unavailable and persist_sensitive_variables_in_plaintext is set to OFF. Please make sure that keyring services are active and required keys are available.
错误说明:
MY-013839 ER_WARN_CANNOT_PERSIST_SENSITIVE_VARIABLES 是MySQL在5.7.5版本中新添加的一个错误,当在GLOBAL / SESSION scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope scope 范围下试图将一个敏感的变量的值存储在其中进行持久化,该变量就会引发所谓的“ER_WARN_CANNOT_PERSIST_SENSITIVE_VARIABLES”错误,这些变量被认为是敏感设置,用户不能够将这些变量持久化,派生变量也不能保证持久化。
解决方法:
由于ER_WARN_CANNOT_PERSIST_SENSITIVE_VARIABLES是一个警告,因此它不会阻碍MySQL的工作,但是这里需要注意的是,即使在GLOBAL / SESSION作用域范围下,不要设置敏感变量。另一方面,如果想要把这些变量设置为持久性的,则需要在MySQL的配置文件中显式地设置它们,也可以使用GRANT命令行来把它们权限赋予用户。 同时,如果该错误是由错误的SQL命令引起,可以在MySQL命令行客户端中使用SHOW VARIABLES命令来显示系统内置参数列表,以便检查是否存在敏感变量。最后,MySQL开发人员建议对任何系统参数进行定期备份,以防变量丢失或重新设置。