mysql grant priv_mysql怎么将grant priv的权限-程序员宅基地

技术标签: mysql grant priv  

推荐答案

grant 权限 on 数据库对象 to 用户

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

grant 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@'%'

或者

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

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

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

grant 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 外键权限。

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

grant 操作 MySQL 临时表权限。

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

grant 操作 MySQL 索引权限。

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

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

grant create view on testdb.* to developer@’192.168.0.%’;

grant show view on testdb.* to developer@’192.168.0.%’;

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

grant 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 数据库的权限。

grant all privileges on testdb to dba@’localhost’

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

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

grant all on *.* to dba@’localhost’

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

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

grant select on *.* to dba@localhost; — dba 可以查询 MySQL 中所有数据库中的表。

grant all on *.* to dba@localhost; — dba 可以管理 MySQL 中的所有数据库

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

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

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

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

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

grant 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 作用在表中的列上:

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

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

grant execute on procedure testdb.pr_add to ‘dba’@'localhost’

grant execute on function testdb.fn_add to ‘dba’@'localhost’

六、查看 MySQL 用户权限

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

show grants;

查看其他 MySQL 用户权限:

show grants for zhangkh@localhost;

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

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

grant all on *.* to dba@localhost;

revoke all on *.* from dba@localhost;

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

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

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

grant 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表指定列级权限。这里指定的权限适用于一个表的特定列。

注:

对于GRANT USAGE ON,查看手册有如下介绍和实例:

mysql> GRANT USAGE ON *.* TO ‘zhangkh’@'localhost’;

一个账户有用户名zhangkh,没有密码。该账户只用于从本机连接。未授予权限。通过GRANT语句中的USAGE权限,你可以创建账户而不授予任何权限。它可以将所有全局权限设为’N'。假定你将在以后将具体权限授予该账户。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39945792/article/details/113196601

智能推荐

大学四年,我是怎么靠做外包私活赚了10w+,实现经济独立_大学生做外包项目多少钱-程序员宅基地

文章浏览阅读6.1k次,点赞45次,收藏107次。CSDN上的读者应该大多也是程序员或者互联网相关行业的,计算机这个专业薪资的确比一些传统工科高不少,甚至很多应届生的薪资比传统行业工作十来年的人还高,这还不在少数,至于这样的现象还能持续多久,我也不知道。但是高收入必然会吸引大量的转专业、转行的同学过来,去一个高速发展的行业享受行业发展的红利这无可厚非,去年也有几个学机械、化工的高中同学找我要学计算机的经验。毕竟一个人的命运,除了要靠自我奋斗,也要考虑历史的进程。第三次工业革命的基础就是 信息技术 + 智能制造。搭上时代的快车,这是个人成长的最快途_大学生做外包项目多少钱

C语言-表达式求值_表达式求值c语言代码-程序员宅基地

文章浏览阅读1.3k次。C语言-表达式求值_表达式求值c语言代码

Struts2的过滤器FilterDispatcher_struts2应用web.xml的filterdispacher问题-程序员宅基地

文章浏览阅读1.4k次。测试环境及其前置知识Struts2.0.14 Spring2.5.6 Eclipse3.4 Filter的相关知识,尤其要知道Filter的执行顺序是按照web.xml中配置的filter-mapping顺序执行的。 web.xml定义文件 CharacterEncoding org.springframewor_struts2应用web.xml的filterdispacher问题

Unity 实现Image中Fill Amount的平滑增减效果(进度条为例)_unity fillamount-程序员宅基地

文章浏览阅读1.9w次,点赞14次,收藏32次。在游戏开发过程中,难免会遇到进度条的制作。这里我新建个场景从头做个简化版的。1、准备工作。在Unity中创建一个简单的UI界面。就像这样:其中imgBG和imgFillAmount的尺寸要相同。修改imgFillAmount的属性:(将Image Type改成Filled,记得要在Source Image中加入Sprite)可以看到FillAmount属性是个从0到1的值,拖动就可..._unity fillamount

linux服务器,卸载tensorflow CPU 安装PGU版_linux conda环境下卸载tensorflow-程序员宅基地

文章浏览阅读793次。linux 服务器,卸载tensorflow CPU 安装PGU版写在前面之前用的和学习的都是pytorch框架,现在要运行一个keras的代码,得安装tensorflow和keras,按一个教程,直接在pycharm里setting,点那个+很快就装好了tensorflow和keras,运行了几次发现运行特别慢,用nvidia-smi查看,发现根本没有用pgu跑,一番查找,最后发现安装的tensorflow本身是按CPU跑的,要用GPU跑,得安装tensorflow-gpu。以下主要参考了https_linux conda环境下卸载tensorflow

JMeter之修改Sampler响应数据的编码格式_sampler自定义数据编码-程序员宅基地

文章浏览阅读1.2w次。问题:JMeter的sampler响应数据中有中文时,会解析出错。 JMeter的Sampler中的响应数据默认的编码格式是:ISO-8859-1。来自文件:jmeter.properties中的语句如下:当默认这种编码格式时,如果响应数据中有中文,就会解析出错,如下图所示:要解决以上问题,有2种方案。方案一:1、 修改jme_sampler自定义数据编码

随便推点

用XAMPP搭建PHP服务器,配置部署多个项目的过程(附blocked port error解决方法)_xampp的phperror-程序员宅基地

文章浏览阅读1k次,点赞23次,收藏23次。安装完成XAMPP后,浏览器输入localhost或127.0.0.1,若远程服务器,替换对应IP地址即可。因浏览网页服务默认的port都是80,因此只需输入网址即可,不用输入“:80”了,​​XAMPP默认指向的文件地址是安装目录下的htdocs文件夹。_xampp的phperror

基于 golang, grpc, gin 和 redis, kafka, MySQL, etcd 和 vue3 的简单分布式信息管理系统-程序员宅基地

文章浏览阅读873次,点赞11次,收藏14次。基于 golang, grpc, gin 和 redis, kafka, MySQL, etcd 和 vue3 的简单分布式信息管理系统含完整前后端,微服务:分布式信息管理系统模板,后台管理系统模板,数据库管理系统模板。实现 grpc 微服务远程过程调用,redis 缓存,etcd 服务发现,负载均衡。令牌签验,非对称加密。通过 Web 应用完成对数据库的增删改查(CRUD),文件流的上传和下载。前后端分离

app inventor入门详细教程(音乐播放器)01-程序员宅基地

文章浏览阅读1.6w次,点赞22次,收藏189次。App inventor 介绍简介App Inventor是由Google公司开发的一款在线开放的Android编程工具软件,通过图形化积木式的拖放组件来完成Apps开发App Inventor在2012年1月移交给麻省理工学院MIT的行动学习中心,并由MIT发布使用,目前已经发布了第2版本特点开发环境搭建简单。采用浏览器+云服务模式,无需复杂软件安装开发过程简单。手机App的界面设计和行为开发都可以通过可视化的拖放拼接组件来完成,无需关注复杂的语法规则组件模块丰富。App Invent_app inventor

Discuz X 3.4 系列漏洞梳理_discuz! x3.4漏洞-程序员宅基地

文章浏览阅读2.2w次,点赞7次,收藏23次。分析了目前已经公开的Dz3.4系列漏洞,作为学习和记录。Discuz!X ≤3.4 任意文件删除漏洞1、简述漏洞原因:之前存在的任意文件删除漏洞修复不完全导致可以绕过。漏洞修复时间:2017年9月29日官方对gitee上的代码进行了修复2、复现环境因为官方提供的下载是最新的源码,漏洞修复时间是17年9月29日,通过git找一个修复前的版本签出就可。git checkout 1a912ddb4a62364d1736fa4578b42ecc62c5d0be通过安装向导安装完._discuz! x3.4漏洞

C语言常见程序讲解,适合初学者快速入门!_简单的c语言代码解析-程序员宅基地

文章浏览阅读936次。之前发了很多有关C/C++项目的文章。但是对于C语言的学习,需要自己亲自敲一些代码才能够学好C语言。在这里讲解一下简单的C语言程序(代码),希望自己能够在自己的电脑上敲几遍。a与b的算术运算描述:输出a和b的初始化值的简单算术运算。代码:输出结果:分析:printf函数是将双引号中的内容输出到弹出框中,其中因为a和b的数据类型都是int型,所以运算结果都要用%d的形式输..._简单的c语言代码解析

python中kmeans求到类中心的平均距离_k-means算法python实现-程序员宅基地

文章浏览阅读3.8k次。1.k-means算法的思想k-means算法是一种非监督学习方式,没有目标值,是一种聚类算法,因此要把数据划分成k个类别,那么一般k是知道的。那么假设k=3,聚类过程如下:随机在数据当中抽取三个样本,当做三个类别的中心点(k1,k2,k3);计算其余点(除3个中心点之外的点)到这三个中心点的距离,每一个样本应该有三个距离(a,b,c),然后选出与自己距离最近的中心点作为自己的标记,形成三个簇群;..._kmeans 计算类内平均距离