mysql授予权限和撤销权限的关系_MySQL数据库常用的授予权限和撤销权限的命令讲解...

MySQL 赋予用户权限命令的简单格式可概括为:

一、grant 普通数据用户,查询、插入、更新、删除 数据库中所有表数据的权利

1 2 3 4grant select on testdb.* to common_user@'%' grant insert on testdb.* to common_user@'%' grant update on testdb.* to common_user@'%' grant delete on testdb.* to common_user@'%'

或者,用一条 MySQL 命令来替代:

1grant select, insert, update, delete on testdb.* to common_user@'%'

二、grant 数据库开发人员,创建表、索引、视图、存储过程、函数等权限

grant 创建、修改、删除 MySQL 数据表结构权限。

1 2 3grant create on testdb.* to developer@'192.168.0.%'; grant alter on testdb.* to developer@'192.168.0.%'; grant drop on testdb.* to developer@'192.168.0.%';

grant 操作 MySQL 外键权限:

1grant references on testdb.* to developer@'192.168.0.%';

grant 操作 MySQL 临时表权限:

1grant create temporary tables on testdb.* to developer@'192.168.0.%';

grant 操作 MySQL 索引权限:

1grant index on testdb.* to developer@'192.168.0.%';

grant 操作 MySQL 视图、查看视图源代码权限:

1 2grant create view on testdb.* to developer@'192.168.0.%'; grant show view on testdb.* to developer@'192.168.0.%';

grant 操作 MySQL 存储过程、函数权限:

1 2 3grant create routine on testdb.* to developer@'192.168.0.%'; -- now, can show procedure status grant alter routine on testdb.* to developer@'192.168.0.%'; -- now, you can drop a procedure grant execute on testdb.* to developer@'192.168.0.%';

三、grant 普通 DBA 管理某个 MySQL 数据库的权限

?1grant all privileges on testdb to dba@'localhost'

其中,关键字 “privileges” 可以省略。

四、grant 高级 DBA 管理 MySQL 中所有数据库的权限:

1grant all on *.* to dba@'localhost'

五、MySQL grant 权限,分别可以作用在多个层次上

1. grant 作用在整个 MySQL 服务器上:

1 2grant select on *.* to dba@localhost; -- dba 可以查询 MySQL 中所有数据库中的表。 grant all on *.* to dba@localhost; -- dba 可以管理 MySQL 中的所有数据库

2. grant 作用在单个数据库上:

1grant select on testdb.* to dba@localhost; -- dba 可以查询 testdb 中的表。

3. grant 作用在单个数据表上:

1grant select, insert, update, delete on testdb.orders to dba@localhost;

这里在给一个用户授权多张表时,可以多次执行以上语句。例如:

1 2grant select(user_id,username) on smp.users to mo_user@'%' identified by '123345'; grant select on smp.mo_sms to mo_user@'%' identified by '123345';

4. grant 作用在表中的列上:

1grant select(id, se, rank) on testdb.apache_log to dba@localhost;

5. grant 作用在存储过程、函数上:

1 2grant execute on procedure testdb.pr_add to 'dba'@'localhost' grant execute on function testdb.fn_add to 'dba'@'localhost'

六、查看 MySQL 用户权限

查看当前用户(自己)权限:

1show grants;

查看其他 MySQL 用户权限:

1show grants for dba@localhost;

七、撤销已经赋予给 MySQL 用户权限的权限。

revoke 跟 grant 的语法差不多,只需要把关键字 “to” 换成 “from” 即可:

1 2grant all on *.* to dba@localhost; revoke all on *.* from dba@localhost;

八、MySQL grant、revoke 用户权限注意事项

1. grant, revoke 用户权限后,该用户只有重新连接 MySQL 数据库,权限才能生效。

2. 如果想让授权的用户,也可以将这些权限 grant 给其他用户,需要选项 “grant option“

1grant select on testdb.* to dba@localhost with grant option;

这个特性一般用不到。实际中,数据库权限最好由 DBA 来统一管理。

补充:

mysql授权表共有5个表:user、db、host、tables_priv和columns_priv。

授权表的内容有如下用途:

user表

user表列出可以连接服务器的用户及其口令,并且它指定他们有哪种全局(超级用户)权限。在user表启用的任何权限均是全局权限,并适用于所有数据库。例如,如果你启用了DELETE权限,在这里列出的用户可以从任何表中删除记录,所以在你这样做之前要认真考虑。

db表

db表列出数据库,而用户有权限访问它们。在这里指定的权限适用于一个数据库中的所有表。

host表

host表与db表结合使用在一个较好层次上控制特定主机对数据库的访问权限,这可能比单独使用db好些。这个表不受GRANT和REVOKE语句的影响,所以,你可能发觉你根本不是用它。

tables_priv表

tables_priv表指定表级权限,在这里指定的一个权限适用于一个表的所有列。

columns_priv表

columns_priv表指定列级权限。这里指定的权限适用于一个表的特定列。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/489762.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

spring的aop_Spring AOP 小结

1. AOP专业概述在软件行业,AOP为Aspect Oriented Programming的缩写,意思为:面向切面编程,通过预编译方法和运行期动态代理实现程序功能的统一维护的一种技术。要理解切面变成,就需要先理解什么是切面。用刀把一个西瓜…

【解析】工业机器人中的各类传感器技术应用

来源:中国机器人网前言工业机器人涉及到的传感器有哪些?2012年,美国提出“工业互联网”,2013年,德国提出“工业4.0”,2015年,中国提出“中国制造2025”。在工业物联网、AR、云计算等技术热潮下&…

java水果超市mysql_Java基础 | 项目实战之水果超市

传智播客线上平台博学谷启动项目实战,在学习过程中真正还原企业实际开发流程及团队配合,同时对所学知识最大化吸收项目启动准备01规定学习位置参加项目实战,学习位置不能小于当前标注的位置02项目分组本次Java基础参加项目实战的同学较多&…

android dp sp px_Android屏幕适配★★重点盘点★★

引言屏幕适配是 android 开发/面试 绕不开的一个问题。本文 将屏幕适配的知识要点完整展现给各位读者。正文大纲android需要做屏幕适配的原因基础知识点(★★★很重要★★★)屏幕适配攻略正文↓↓↓android需要做屏幕适配的原因关键字:android碎片化android面世以来…

AI与网络安全的未来:数据集与协同能力

来源:安全牛有关 AI 优势与风险的争论如今已成媒体日常,很多此类讨论都集中在潜在负面影响上,话题范围从工作自动化导致广泛失业到 AI 用于创建 “深度伪造” 视频。但另一方面,我们已经在享受 AI 自动化助手的正面效果所带来的种…

GIS-013-Cesium Terrain 数据生成

一、Python 1、修改Python脚本文件 if __name____main__: #sys.argv [F:\\000_Terrain\\T7-gdal2srtmtiles-demo.py, --cesium, --resume, -z, 0-8, -p, geodetic, F:\\50_GIS\\4000_Data\\world_raster\\Day.tif, F:\000_Terrain\\terrain_tiles] sys.argv [F:\\000_Terrain…

如何在linux下yum安装mysql_linux下使用yum安装mysql详解

1、安装客户端和服务器端确认mysql是否已安装:yum list installed mysql*rpm -qa | grep mysql*查看是否有安装包:yum list mysql*安装mysql客户端:yum install mysql安装mysql 服务器端:yum install mysql-serveryum install mys…

ucinet计算聚类系数大于1怎么办_聚类性能评估-ARI(调兰德指数)

注意:ARI取值范围为[-1,1],值越大越好,反映两种划分的重叠程度,使用该度量指标需要数据本身有类别标记。用C表示实际的类别划分,K表示聚类结果。定义a 为在C中被划分为同一类,在K中被划分为同一簇的实例对数…

这才是未来真正的风口,一文看清13种硬科技投资趋势

来源:资本实验室如果非要说“风口”,那么在未来10年乃至20年,硬科技就是最大的风口。近期,由麻省理工学院创建的非盈利投资机构The Engine与投资研究机构Pitchbook联合发布了一份名为《2019硬科技图景》的研究报告。该报告将硬科技…

sleep(),wait(),yield(),notify()

sleep(),wait(),yield() 的区别 sleep方法和yield方法是Thread类的方法,wait方法是Object的方法。 sleep 方法使当前运行中的线程睡眼一段时间,进入不可运行状态,这段时间的长短是由程序设定的,不会释放锁标…

mysql 滚屏查看查询结果_MySQL_查询操作(select)

查询操作1、别名查询select id 序号,name名字from test_1209ryc;2、条件查询(between)select * from test_1209ryc where id between 2 and 5;3、条件查询(in)select * from test_1209ryc where id in(1,2,3);4、子查询select * from test_1209ryc where id in (select id from…

new arraylist内存_如何避免内部类中的内存泄漏

我先假设读者已经熟悉在Java代码中使用嵌套类的基础知识。在本文里,我将展示嵌套类的陷阱,内部类在JVM中引起内存泄漏和内存不足错误的地方。之所以会发生这种类型的内存泄漏,是因为内部类必须始终能够访问其外部类。从简单的嵌套过程到内存不…

git stash简介

原文:http://gitbook.liuhui998.com/4_5.html 一、基本操作当你正在做一项复杂的工作时, 发现了一个和当前工作不相关但是又很讨厌的bug. 你这时想先修复bug再做手头的工作, 那么就可以用 git stash 来保存当前的工作状态, 等你修复完bug后,执行反储藏(unstash)操作…

马斯克:“星链”卫星已能提供服务

来源:一财网美国太空探索技术公司首席执行官埃隆马斯克22日称,该公司发射的“星链”卫星已能提供天基互联网服务。马斯克当天在社交媒体推特上发布的一条推文中说,“正在通过‘星链’卫星发送这条推文”。2分钟后,他发推文表示&am…

python dict遍历_python 字典(dict)遍历的四种方法性能测试报告

python中,遍历dict的方法有四种。但这四种遍历的性能如何呢?我做了如下的测试l [(x,x) for x in xrange(10000)]d dict(l)from time import clockt0clock()for i in d:t i d[i]t1clock()for k,v in d.items():t k vt2clock()for k,v in d.iteritem…

sqlplus连mysql库_sqlplus连接数据库

sqlplus连接到远程数据库我一直以为sqlplus是服务器端的软件,今天我才知道sqlplus是客户端软件,用sqlplus也能连接到远程数据库。windows下具体连接方法如下:如果已经配置过tnsname方法一.在运行或者命令窗口里面先输入sqlplus/n...文章张振磊…

OpenGL ES入门

OpenGL ES渲染管线概述 渲染管线一般是由显示芯片GPU内部处理图形信号的并行处理单元组成,这些并行处理单元之间是独立的,从另一个角度看,渲染管线实际上也是一系列绘制过程,这一系列过程的输入是待绘制物体的相关描述信息&#x…

【前沿】MIT搞了个进取型机器人!能研究学习对象操纵的基础

来源:中国机器人网 前言:MIT的研究让数据有了机器人的方向麻省理工学院的研究人员已经汇编了一个数据集,该数据集捕获了物理上推动数百个不同对象的机器人系统的详细行为。研究人员可以使用数据集(同类中规模最大,种类…

java进度条_自学java你需要知道的,适合编程小白

1. java学习网站之前在很多学习网站上学习过Java,踩过很多坑,今天给大家推荐一个比较好用的Java学习网站,希望大家能少踩坑Java教程 | 项目实践一站式java学习这个网站的针对性强,如果你是想学习Java,在这个网站学习就…

软考考前冲刺第一章计算机硬件基础知识

1.原码表示法和补码表示法是计算机中用于表示数据的两种编码方法,在计算机系统中常采用补码来表示和运算数据,原因是采用补码可以简化计算机运算部件的设计。 在计算机中,各类运算都可以采用补码进行,特别是对于有符号数的运算。在…