mysql数据导出权限问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql数据导出权限问题相关的知识,希望对你有一定的参考价值。

mysql数据导出的方法有非常多,比如mysqldump, mysql -e ‘sql‘ > file, 这些都能够非常方便的导出数据,但是在使用普通用户导出数据的时候,出现了问题。

1
select * into outfile "file_path" from my_table

上面的语句也是mysql导出数据的一种方式,在使用普通用户运行语句时。出现了一下错误:

1
ERROR 1045 (28000): Access denied for user ‘my_user‘@‘%‘ (using password: YES)

之前已经对该用户在相应的数据库上运行了授权,例如以下:

1
grant all on my_database.* to my_user ;

上面语句可以看出,已经把全部的权限赋予了my_user,但是问题依然存在。

问题究竟出如今什么地方呢?google了一下后发现mysql有单独的file权限,须要单独赋予,同一时候file是一个全局权限。不可以只将单个数据库的文件权限赋予用户。

找到原因后。以下就将文件权限赋予对应用户:

1
grant file on *.* to my_user ;

再次运行导出语句。成功运行。

很多其它文章请前往小胖轩.

以上是关于mysql数据导出权限问题的主要内容,如果未能解决你的问题,请参考以下文章

使用 SQLyog 导出 MySQL 所有数据库会产生调用者/定义者权限错误

[记录]MySQL 查询无法导出到文件

如何用Navicat导出MySQL的数据字典

MySQL | linux中数据库导出和导入

sql数据导出没有权限

Mysql查询结果导出为Excel的几种方法