mysql - 为 MySQL 上的数据加载禁用安全权限

标签 mysql sql windows security

我在 Windows 10 机器上运行 MySQL 5.7。我已经阅读了关于这个主题的所有 SO 线程,但仍然没有弄清楚如何让我的数据加载并克服这个错误:

Error Code: 1290. The MySQL server is running with the --secure-file-priv 
option so it cannot execute this statement

我已经 1) 检查了设置以更改它们以便能够从我保存数据集的目录中加载,2) 以管理员身份打开 MySQL 并检查命令行并确认安全文件确实确实指向我的目录,3) 并在 init 文件中确认它指向包含我的文件的正确目录。我尝试更改数据集的位置,使其位于新文件夹中,并确认已使用上述方法将其移动到那里,但仍然无法正常工作。

欢迎任何和所有的帮助,谢谢。

最佳答案

我无法重现该问题。

mysql> SELECT VERSION();
+-----------+
| VERSION() |
+-----------+
| 5.7.13    |
+-----------+
1 row in set (0,00 sec)

mysql> SELECT @@GLOBAL.secure_file_priv;
+---------------------------+
| @@GLOBAL.secure_file_priv |
+---------------------------+
| NULL                      |
+---------------------------+
1 row in set (0,00 sec)

-- USE ...

mysql> LOAD DATA INFILE '/var/lib/mysql-files/myfile.csv'
    -> INTO TABLE `test_files`
    -> COLUMNS TERMINATED BY ',' ENCLOSED BY '\"'
    -> LINES TERMINATED BY '\n';
ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv
option so it cannot execute this statement

更改文件:/etc/mysql/my.cnf

[mysqld]
.
.
.
secure_file_priv=/var/lib/mysql-files/
.
.
.

重启 MySQL。

mysql> SELECT @@GLOBAL.secure_file_priv;
+---------------------------+
| @@GLOBAL.secure_file_priv |
+---------------------------+
| /var/lib/mysql-files/     |
+---------------------------+
1 row in set (0,00 sec)

mysql> LOAD DATA INFILE '/var/lib/mysql-files/myfile.csv'
    -> INTO TABLE `test_files`
    -> COLUMNS TERMINATED BY ',' ENCLOSED BY '\"'
    -> LINES TERMINATED BY '\n';
Query OK, 3 rows affected (0,00 sec)
Records: 3  Deleted: 0  Skipped: 0  Warnings: 0

6.1.4 Server System Variables :: secure_file_priv

关于mysql - 为 MySQL 上的数据加载禁用安全权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37596163/

相关文章:

php - simplexml_load_file() : Failed to enable crypto

c++ - 使用 WM_COPYDATA 在进程之间发送数据

MySQL 使用触发器破坏外键

php - 获取 SQLSTATE[HY000] : General error but query is performed anyway

mysql - 选择匹配最多的字符

php - 创建 SQL 查询,根据满足的条件对结果进行排序

sql - 在 DB2 中旋转

php - Mysql INSERT INTO 和 UPDATE 无法正常工作

mysql - SQL获取用户访问次数最多的时间

c++ - 我可以从语言首选项中获取代码页吗?