如何修复'错误代码:1290。MySQL 服务器正在使用 --secure-file-priv 选项运行...”?

Linda Hamilton
发布: 2024-10-26 07:19:03
原创
356 人浏览过

How to Fix

遇到错误:MySQL 服务器安全文件权限限制语句执行

您遇到了错误“错误代码:1290。MySQL 服务器正在使用 --secure-file-priv 选项运行,因此无法执行此语句”,同时尝试执行涉及使用 INTO OUTFILE 命令的 MySQL 语句。

错误原因:

secure-file-priv选项限制MySQL可以写入文件的目录以提高安全性。默认情况下,此选项限制 MySQL 写入外部目录。

立即解决方案(非配置更改):

解决此问题的快速解决方法是确定允许 MySQL 写入文件的目录:

<code class="sql">mysql> SHOW VARIABLES LIKE "secure_file_priv";</code>
登录后复制

确定允许的目录后,修改 INTO OUTFILE 语句以使用此目录作为目标:

<code class="sql">SELECT *
FROM xxxx
WHERE XXX
INTO OUTFILE '/var/lib/mysql-files/report.csv'
    FIELDS TERMINATED BY '#'
    ENCLOSED BY '"'
    LINES TERMINATED BY '\n'</code>
登录后复制

永久解决方案(配置更改):

Windows:

  1. 导航到 Windows 服务中的 MySQL 服务设置。
  2. 打开“服务设置”部分指定的“my.ini”文件。
  3. 找到“[mysqld]”组,添加或修改“secure-file-priv”选项指定允许的目录。例如:

    <code class="ini">[mysqld]
    secure-file-priv="C:/ProgramData/MySQL/MySQL Server 5.6/Uploads"</code>
    登录后复制
  4. 重启 MySQL 服务。

Linux:

  1. 打开 MySQL 配置文件,通常位于“/etc/my.cnf”或“/etc/mysql/my.cnf”。
  2. 找到“[mysqld]”组并添加或修改“secure- file-priv”选项来指定允许的目录。例如:

    <code class="ini">[mysqld]
    secure-file-priv="/var/lib/mysql-files/"</code>
    登录后复制
  3. 重新启动 MySQL 服务。

以上是如何修复'错误代码:1290。MySQL 服务器正在使用 --secure-file-priv 选项运行...”?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!