首页  >  文章  >  数据库  >  如何修复 MySQL 错误 1290:使用 INTO OUTFILE 时“无法创建/写入文件”?

如何修复 MySQL 错误 1290:使用 INTO OUTFILE 时“无法创建/写入文件”?

Susan Sarandon
Susan Sarandon原创
2024-11-04 20:05:02461浏览

How to Fix MySQL Error 1290:

MySQL 安全文件权限:解决写入文件时出现的错误 1290

MySQL 的 --secure-file-priv 选项限制语句的执行写入文件。启用此选项时,尝试使用 INTO OUTFILE 子句将查询结果写入文件时会出现此错误。

解决方案:

查找允许的写入路径

检查 @@GLOBAL.secure_file_priv 系统变量的值以确定允许MySQL写入文件的目录:

<code class="sql">SELECT @@GLOBAL.secure_file_priv;</code>

Ubuntu 16.04:写入指定路径,例如:

<code class="sql">SELECT * FROM train INTO OUTFILE '/var/lib/mysql-files/test.csv' FIELDS TERMINATED BY ',';</code>

Mac OSX (MAMP):

创建.my.cnf 文件:

  1. 打开 ~/.my.cnf。
  2. 添加行: secure_file_priv="/Users/[您的用户名]/" [mysqld] 部分。

禁用安全文件权限(不推荐):

将 @@GLOBAL.secure_file_priv 系统变量设置为 NULL:

<code class="sql">SET GLOBAL secure_file_priv=NULL;</code>

注意:此方法存在允许不受信任的代码写入的风险服务器上的任意位置。它只能用作临时措施。

以上是如何修复 MySQL 错误 1290:使用 INTO OUTFILE 时“无法创建/写入文件”?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn