Error number: MY-011810; Symbol: ER_PID_FILE_PRIV_DIRECTORY_INSECURE; SQLSTATE: HY000
Message: Insecure configuration for –pid-file: Location ‘%s’ in the path is accessible to all OS users. Consider choosing a different directory.
错误说明
ER_PID_FILE_PRIV_DIRECTORY_INSECURE 错误号代表的MySQL的一个意外的错误,发生在启动MySQL时。这个错误指示的是在新安装MySQL时或者用户更改了主机上的PID文件路径在 (UNIX/Linux)或进程ID文件(Windows)之后发生的错误。该错误表明提供的PID文件路径是一个不安全的路径,可能会导致MySQL实例存在安全漏洞。
常见案例
ER_PID_FILE_PRIV_DIRECTORY_INSECURE 错误号通常会在以下场景中发生:
1.安装MySQL时将pid文件存放路径指定到了一个安全性较差的路径,例如用户根目录或者/tmp等指定的路径;
2、MySQL用户更改了主机上的PID文件路径,将PID文件存放路径指向了一个安全性较差的路径,从而发生上述错误
解决方法
如果发现了 ER_PID_FILE_PRIV_DIRECTORY_INSECURE 错误,推荐的解决方案是在MySQL的启动脚本里添加–secure-file-priv参数,如果没有这个参数,则需要修改MySQL的配置,指定更安全的路径,并保证权限只能被MySQL用户访问。在MySQL 5.6更高版本,可以使用PIDDIR参数进行设置,但在MySQL 5.5及之前的版本中需要直接在my.cnf文件中更改其pid_file属性,来将pid文件路径指定到一个安全性相对较高的路径中。