gpt4 book ai didi

MySQL LOAD_FILE 返回 NULL

转载 作者:可可西里 更新时间:2023-11-01 06:41:52 25 4
gpt4 key购买 nike

我想让 SQL LOAD_FILE 函数正常工作,并且已经阅读了关于此的每一个问题/答案和文档,但这是正在发生的事情。

当我想从我的主目录LOAD_FILE时:

mysql> SELECT LOAD_FILE('/home/myuser/somefile.txt');
+----------------------------+
| LOAD_FILE('/home/myuser/somefile.txt') |
+----------------------------+
| NULL |
+----------------------------+
1 row in set (0.00 sec)

所以在得到这个之后,我认为问题可能是 MySQL 无法访问我的主目录。我尝试运行它,效果很好:

SELECT LOAD_FILE('/etc/mysql/my.cnf');

然后 SELECT LOAD_FILE('/etc/passwd'); 也工作正常。

所以我说明白了,这是一个文件/文件夹读取/所有权权限问题。所以,我将我的文件移动到/etc/mysql/但它仍然不起作用。我试过 chown mysql:mysql somefile.txt 但我仍然没有运气:

mysql> SELECT LOAD_FILE('/etc/mysql/somefile.txt');
+----------------------------+
| LOAD_FILE('/etc/mysql/somefile.txt') |
+----------------------------+
| NULL |
+----------------------------+
1 row in set (0.00 sec)

附言1. 所有文件对所有用户组都是可读的,所以不需要chmod。但如果你想问的话,我什至试过 chmod 7772.我查了一下,mysql中没有设置secure-file-priv变量,所以没有,LOAD_FILE没有限制在任何路径。

有什么想法可能是这里的问题吗?

最佳答案

我发现它与 AppArmor 有关。我为 MySQL 禁用了 AppArmor 并且它工作了。有同样问题的 friend 请看这里:http://www.cyberciti.biz/faq/ubuntu-linux-howto-disable-apparmor-commands/

关于MySQL LOAD_FILE 返回 NULL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24459149/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com