mysql中FILE权限
FILE权限指的是对服务器主机上文件的访问,数据库用户拥有FILE权限才可以执行select into outfile,load data infile操作。
参考文章:http://blog.itpub.net/27126919/viewspace-2125131/
测试select into outfile操作
root用户上执行
mysql> CREATE USER 'filetest'@'localhost' IDENTIFIED BY ‘123456'
FILE权限是对所有数据库文件而言的,因此数据库只能写成*.*,而不是某一个数据库
mysql> grant file on test3.* to 'filetest'@'localhost';
ERROR 1221 (HY000): Incorrect usage of DB GRANT and GLOBAL PRIVILEGES //赋予FILE权限
mysql> grant file on *.* to 'filetest'@'localhost';
Query OK, 0 rows affected (0.00 sec) //赋予select权限
grant select on test3.* to 'filetest'@'localhost';
//刷新信息
flush privileges;
filetest用户上执行
use test3;
mysql> select * from test2 into outfile 'd:/test.txt'
-> ;
ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv opti
on so it cannot execute this statement //即使有了file权限,输出目录路径应该secure_file_priv一致
mysql> show variables like '%sec%'
-> ;
+--------------------------+----------+
| Variable_name | Value |
+--------------------------+----------+
| require_secure_transport | OFF |
| secure_auth | ON |
| secure_file_priv | e:\test\ |
+--------------------------+----------+
mysql> select * from test2 into outfile 'e:/test/test.txt';
Query OK, 1 row affected (0.01 sec)
测试load data infile操作:
mysql> load data infile 'e:/test/test.txt' into table test2;
ERROR 1142 (42000): INSERT command denied to user 'filetest'@'localhost' for table 'test2'
//需要给filetest赋予insert权限 root用户上执行:
mysql> grant insert on test3.* to 'filetest'@'localhost';
flush privileges; filetest用户:
//infile的目录也要与secure_file_priv一致
mysql> load data infile 'e:/test/test.txt' into table test2;
Query OK, 1 row affected (0.07 sec)
Records: 1 Deleted: 0 Skipped: 0 Warnings: 0
mysql中FILE权限的更多相关文章
- 详细解读MySQL中的权限
一.前言 很多文章中会说,数据库的权限按最小权限为原则,这句话本身没有错,但是却是一句空话.因为最小权限,这个东西太抽象,很多时候你并弄不清楚具体他需要哪 些权限. 现在很多mysql用着root账户 ...
- 数据库中File权限的危害
The FILE privilege gives you permission to read and write files on the server host using the LOAD DA ...
- (转载)打破某些大牛比较呵呵的MySQL无file权限读root hash的谣言
如题.比如乌云社区发帖的这位大牛http://zone.wooyun.org/content/12432 看那帖子标题就很喜感有木有,大概意思就是创建了一个没有file权限的账户test,然后不能lo ...
- [转]MySQL中存储过程权限问题
MySQL中以用户执行存储过程的权限为EXECUTE 比如我们在名为configdb的数据库下创建了如下存储过程,存储过程的定义者为user_admin use configdb; drop proc ...
- Mysql中五级权限小结
mysql的权限控制主要是通过mysql库下的db,user,host,table_priv,column_priv表控制. 由于权限信息数据量比较小,所以mysql在启动时会将所有的权限消息加载到内 ...
- 如何创建新用户和授予MySQL中的权限
原创官网http://www.howtoing.com/how-to-create-a-new-user-and-grant-permissions-in-mysql/ 关于MySQL MySQL是一 ...
- MariaDB/MySQL用户和权限管理
本文目录: 1.权限验证 1.1 权限表 1.2 图解认证和权限分配的两个阶段 1.3 权限生效时机 2.用户管理 2.1 创建用户 2.2 create user和alter user 2.3 记录 ...
- 2018/09/05《涂抹MySQL》【权限管理】学习笔记(二)
读 第四章<管理MySQL库与表> 第五章<MySQL的权限管理> 总结 1:当配置好 MySQL 数据库后,发现有几个默认的库,他们的意义和作用?(这里只做简单了解,之后用到 ...
- 如何给mysql用户分配权限+增、删、改、查mysql用户
在mysql中用户权限是一个很重析 参数,因为台mysql服务器中会有大量的用户,每个用户的权限需要不一样的,下面我来介绍如何给mysql用户分配权限吧,有需要了解的朋友可参考. 1,Mysql下创建 ...
随机推荐
- MySQL获取webshell的几种方式
select ... into outfile 需要满足的条件 对web目录有写权限 GPC关闭(GPC:是否对单引号转义) 有绝对路径(读文件可以不用,写文件需要) 没有配置secure-file- ...
- C++中内存布局 以及自由存储区和堆的理解
文章搬运自https://www.cnblogs.com/QG-whz/p/5060894.html,如有侵权请告知删除 当我问你C++的内存布局时,你大概会回答: "在C++中,内存区分为 ...
- nginx转发php文件到php-fpm服务器提示502错误
实验将php文件转发给另一个php-fpm服务器处理的时候,出现了502错误: 检查了nginx错误日志,提示: 2019/08/25 17:54:56 [error] 4742#0: *35 rec ...
- 详讲FL Studio通道设置菜单
我们在FL Studio"通道设置按钮"上右击鼠标就会弹出一个设置菜单,它包含了通道操作的各种常用命令.下文小编将会为大家详细讲解这些命令的具体作用,一起来学习吧! 1.首先,我们 ...
- 微课制作软件Camtasia中如何添加并编辑字幕?
除了能录制视频以外,Camtasia还能直接把录制下来的视频进行剪辑,并添加视频字幕等等一些后期效果.今天我们就来看一看字幕的添加方法. 导入视频 微课制作软件Camtasia录制的视频,默认在软件& ...
- jsp自定义错误页
1.在可能出错页面的Page标签上errorPage="/Error.jsp"指定错误页 2.Error,jsp的page标签中isErrorPage="true&quo ...
- CSS3 学习笔记(中)
七.文档流 文档流(normal flow)--网页的基础(最底下的一层),我们所创建的元素默认都是在文档流中进行排列. 对于元素有两个状态:在文档流 或 脱离文档流. 元素在文档流的特点: 块元素: ...
- python应用(4):变量与流程
程序是什么?就是一堆代码啰.但是代码是有组织而来的,不是凭空堆砌出来的.有一个"古老"的说法:程序=数据结构+算法,意思是,程序是由一些数据结构(数据的组织结构)加上某些算法而形成 ...
- java45
Collection c2 = new ArrayList(); c2.add("a"); c2.add("b"); //移除集合中的某个元素 c2.remov ...
- Django 的缓存机制
一 缓存介绍: 在动态网站中,用户所有的请求,服务器都会去数据库中进行相应的增,删,查,改,渲染模板,执行业务逻辑,最后生成用户看到的页面. 当一个网站的用户访问量很大的时候,每一次的的后台操作,都会 ...