mysql-授予数据库用户文件夹访问权限

我正在尝试使用以下查询从mysql创建csv数据导出:

SELECT * INTO OUTFILE '/tmp/result.csv'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
ESCAPED BY '\\'
LINES TERMINATED BY '\n'
FROM getfreepellets WHERE 1

我得到以下错误:

#1045 - Access denied for user '[username]'@'localhost' (using password: YES)

(已删除用户名,但这是正确的用户名)

我将如何授予该用户访问权限以在服务器上创建文件?

编辑:

我将第一行更改为确切的原始路径,并收到了相同的错误.

解决方法:

您可能希望GRANT为您的用户提供FILE特权:

The FILE privilege gives you permission to read and write files on the server host using the LOAD DATA INFILE and SELECT ... INTO OUTFILE statements and the LOAD_FILE() function.

A user who has the FILE privilege can read any file on the server host that is either world-readable or readable by the MySQL server. (This implies the user can read any file in any database directory, because the server can access any of those files.) The FILE privilege also enables the user to create new files in any directory where the MySQL server has write access. As a security measure, the server will not overwrite existing files.

要授予FILE特权,请以root用户身份登录并执行:

GRANT FILE ON *.* TO 'your_user'@'localhost';
上一篇:centos7 安装mysql 并支持远程连接


下一篇:linux下mysql安装