平常做数据导入或者动态监控数据自动保存到文件后,自动导入MYSQL表的时候,会出现文件导入失败的问题,错误提示“The MySQL server is running with the --secure-file-priv option so it cannot execute this statement”
其实原因是因为mysql对通过文件导入导出作了限制,默认是不允许。
我们可以通过执行mysql命令查看现有的配置。
登录MYSQL console,执行:
SHOW VARIABLES LIKE "secure_file_priv";
如果value值为null,则为禁止;
如果有文件夹目录,则只允许设置的目录下文件(测试子目录也不行)导入;
如果为空,则不限制目录,但是你要写清楚倒数文件的完整路径。
修改配置可修改my.ini文件,查看是否有
secure_file_priv =
这样一行内容,如果没有,则手动添加,
secure_file_priv = /home
表示限制为/home文件夹
secure_file_priv =
表示不限制目录,等号一定要有,否则mysql无法启动
修改完配置文件后,重启mysql生效
重点提示: 保存my.ini文件时,一定要选择合适的编码。 windows 是ANSI, 默认是UTF-8.