- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我遇到了这样的问题:错误代码:1290。MySQL服务器正在运行--secure-file-priv选项,因此无法执行此语句当我尝试执行 MySQL 语句时(Windows):
SELECT *
FROM xxxx
WHERE XXX
INTO OUTFILE 'report.csv'
FIELDS TERMINATED BY '#'
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
当我没有执行它时:
INTO OUTFILE 'report.csv'
FIELDS TERMINATED BY '#'
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
然后就可以了。此外,在我重新安装 MySQL 服务器之前,与 INTO OUTFILE xxx
相同的语句实际上是有效的。
有人知道如何处理这个错误吗?
最佳答案
不需要您编辑任何配置文件(并且适用于其他操作系统以及 Windows)的快速答案是只需找到允许您保存使用的目录:
mysql> SHOW VARIABLES LIKE "secure_file_priv";
+------------------+-----------------------+
| Variable_name | Value |
+------------------+-----------------------+
| secure_file_priv | /var/lib/mysql-files/ |
+------------------+-----------------------+
1 row in set (0.06 sec)
然后确保在 SELECT
语句的 INTO OUTFILE
子句中使用该目录:
SELECT *
FROM xxxx
WHERE XXX
INTO OUTFILE '/var/lib/mysql-files/report.csv'
FIELDS TERMINATED BY '#'
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
原答案
自从从 MySQL 5.6.25 升级到 5.6.26 后,我遇到了同样的问题。
在我的情况下(在 Windows 上),查看 MySQL56 Windows 服务显示服务启动时正在使用的选项/设置文件是 C:\ProgramData\MySQL\MySQL Server 5.6\my。初始化
在 linux 上,两个最常见的位置是 /etc/my.cnf
或 /etc/mysql/my.cnf
。
打开这个文件,我可以看到 secure-file-priv
选项已经添加到这个新版本的 MySQL 服务器的 [mysqld]
组下,默认为值(value):
secure-file-priv="C:/ProgramData/MySQL/MySQL Server 5.6/Uploads"
您可以对此发表评论(如果您在非生产环境中),或尝试更改设置(最近我不得不设置 secure-file-priv = ""
以便禁用默认值)。修改后别忘了重启服务。
或者,您可以尝试将输出保存到允许的文件夹中(位置可能因您的安装而异):
SELECT *
FROM xxxx
WHERE XXX
INTO OUTFILE 'C:/ProgramData/MySQL/MySQL Server 5.6/Uploads/report.csv'
FIELDS TERMINATED BY '#'
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
使用 FIELDS TERMINATED BY ','
来使用逗号分隔值更为常见。请参阅下面的示例(也显示 Linux 路径):
SELECT *
FROM table
INTO OUTFILE '/var/lib/mysql-files/report.csv'
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
ESCAPED BY ''
LINES TERMINATED BY '\n';
关于mysql - 错误代码 : 1290. MySQL 服务器正在使用 --secure-file-priv 选项运行,因此无法执行此语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31951468/
据我了解,发行版中需要的任何工件都应放在priv目录中。对于总括项目,是否应在总括级别上有一个priv目录,或者每个应用程序都有一个? 另外,您如何查找priv目录的路径名? 最佳答案 priv目录是
我正在学习 SQL,并尝试使用“load infile”等将 .csv 文件加载到其中... 但是我收到错误,“MySQL 服务器正在使用 --secure-file-priv 运行,因此无法执行..
在我的剧本中,我有类似的内容: - name: Creates a mysql user mysql_user: login_host: "{{ db_host }}" login
我正在学习MySQL,并尝试使用LOAD DATA子句。当我如下使用它时: LOAD DATA INFILE "text.txt" INTO table mytable; 我收到以下错误: MySQL
我正在学习 MySQL 并尝试使用 LOAD DATA 子句。当我使用它时,如下所示: LOAD DATA INFILE "text.txt" INTO table mytable; 我收到以下错误:
我正在学习 MySQL 并尝试使用 LOAD DATA 子句。当我使用它时,如下所示: LOAD DATA INFILE "text.txt" INTO table mytable; 我收到以下错误:
我正在学习 MySQL 并尝试使用 LOAD DATA 子句。当我使用它时,如下所示: LOAD DATA INFILE "text.txt" INTO table mytable; 我收到以下错误:
我正在学习 MySQL 并尝试使用 LOAD DATA 子句。当我使用它时,如下所示: LOAD DATA INFILE "text.txt" INTO table mytable; 我收到以下错误:
我正在学习 MySQL 并尝试使用 LOAD DATA 子句。当我使用它时,如下所示: LOAD DATA INFILE "text.txt" INTO table mytable; 我收到以下错误:
我正在学习 MySQL 并尝试使用 LOAD DATA 子句。当我使用它时,如下所示: LOAD DATA INFILE "text.txt" INTO table mytable; 我收到以下错误:
我正在学习 MySQL 并尝试使用 LOAD DATA 子句。当我使用它时,如下所示: LOAD DATA INFILE "text.txt" INTO table mytable; 我收到以下错误:
我正在学习 MySQL 并尝试使用 LOAD DATA 子句。当我使用它时,如下所示: LOAD DATA INFILE "text.txt" INTO table mytable; 我收到以下错误:
我正在学习 MySQL 并尝试使用 LOAD DATA 子句。当我使用它时,如下所示: LOAD DATA INFILE "text.txt" INTO table mytable; 我收到以下错误:
Windows 2007MySQL 5.7 接收错误: ERROR 1290 (HY000): The MySQL server is running with the --secure-file-p
RISC-V的ECALL编码中的PRIV字段是什么意思?是否应该对调用 ECALL 的模式进行编码? 最佳答案 字段的名称是“funct3”。对于许多 32 位指令,它是操作码的第二部分。 ECALL
我想了解 secure priv 选项是什么意思?我尝试在这个论坛上查找,但找不到任何内容..有人可以解释一下吗? 我尝试导入 csv 文件。现在一切都完成了,但需要了解我刚刚做了什么。 最佳答案 M
我确定我遗漏了一些简单的东西,但我已经创建了以下内容: postgres=# \du List of roles Role name |
documentation对于 postgresql_user 模块,关于如何定义用户权限的格式与自身冲突。格式在选项表中这样描述: priv | PostgreSQL privileges stri
我使用 MySQL 安装程序在 Windows 上安装了 Mysql,然后在安装过程终止后我只能访问 Mysql 5.7 命令行客户端,我的第一个问题是我不能访问 Mysql 服务器吗?然后我尝试使用
有没有办法让MySQL不设置secure-file-priv=''就可以从多个目录加载数据? 例如: secure-file-priv="path/to/dir1","path/to/dir2" 来自
我是一名优秀的程序员,十分优秀!