ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot exec

今天测试select ...into outfile备份工具,发现如下报错:

ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
截图如下:

出现这个错误是因为没有给数据库指定写出文件的路径或者写出的路径有问题。

首先使用下面的命令 show variables like '%secure%'; 查看数据库的存储路径。如果查出的 secure_file_priv 是 null 的时候就证明在 my.ini 文件里面没有配置写出路径。

ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot exec_第1张图片

secure_file_priv 参数是一个只读参数,

需要修改my.cnf文件:

ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot exec_第2张图片

这时候就可以在 mysql.ini 文件的 [mysqld] 代码下增加 secure_file_priv=/tmp 再重启 mysql 就可以了。然后在导出的地址下面写上刚才配置的这个地址,执行备份 select * from t2 into outfile "/tmp/a.txt";就可以了。

ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot exec_第3张图片

ok,备份成功。

测试数据恢复:

ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot exec_第4张图片

恢复成功。

你可能感兴趣的:(mysql,数据库)