MySQL LOAD_FILE返回NULL

我想让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’);工作得很好.

所以我说getcha,这是一个文件/文件夹读/所有权限问题.所以,我将我的文件移动到/ 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 777.
2.我检查过,在MySQL中没有设置secure-file-priv变量,所以不,LOAD_FILE不限于任何路径.

任何想法可能是什么问题?

最佳答案
我发现它与AppArmor有关.我禁用了AppArmor for MySQL并且它有效.
对于有同样问题的人,请在此处阅读:http://www.cyberciti.biz/faq/ubuntu-linux-howto-disable-apparmor-commands/

dawei

【声明】:丽水站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

相关文章