首页 > 解决方案 > 第 1 行的错误 1 ​​(HY000): (Errcode: 13 "Permission denied")

问题描述

我必须将SQL查询输出保存在文本文件中。当我运行所需的查询时:

mysql -u root -p nextcloud -e "select * from oc_share INTO OUTFILE '/root/sql/test.txt'"

..它抛出这个错误:

ERROR 1 (HY000) at line 1: Can't create/write to file '/root/sql/test.txt' (Errcode: 13 "Permission denied")

为什么会发生这种情况。我正在使用 Ubuntu 20.04。

标签: mysqllinux

解决方案


您无权访问目录/root/sql,因为secure_file_priv. 请做SHOW VARIABLES LIKE "secure_file_priv";,看看你可以使用哪个目录outfile。这个参数可以通过my.cnfcmd或者cmd来设置。

mysql> show variables like'%secure_file_priv%';
+------------------+-----------------------+
| Variable_name    | Value                 |
+------------------+-----------------------+
| secure_file_priv | /var/lib/mysql-files/ |
+------------------+-----------------------+

推荐阅读