MySQL用户管理

MySQL用户管理

用户管理

mysql>use mysql;

查看

mysql> select host,user,password from user ;

创建

mysql> create user  zx_root   IDENTIFIED by ‘xxxxx’;   //identified by 会将纯文本密码加密作为散列值存储

修改

mysql>rename   user  feng  to   newuser;//mysql 5之后可以使用,之前需要使用update 更新user表

删除

mysql>drop user newuser;   //mysql5之前删除用户时必须先使用revoke 删除用户权限,然后删除用户,mysql5之后drop 命令可以删除用户的同时删除用户的相关权限

更改密码

mysql> set password for zx_root =password(‘xxxxxx’);

 mysql> update  mysql.user  set  password=password(‘xxxx’)  where user=’otheruser’

查看用户权限

mysql> show grants for zx_root;

赋予权限

mysql> grant select on dmc_db.*  to zx_root;

回收权限

mysql> revoke  select on dmc_db.*  from  zx_root;  //如果权限不存在会报错

 

上面的命令也可使用多个权限同时赋予和回收,权限之间使用逗号分隔

mysql> grant select,update,delete  ,insert  on dmc_db.*  to  zx_root;

如果想立即看到结果使用

flush  privileges ;

命令更新 

 

设置权限时必须给出一下信息

1,要授予的权限

2,被授予访问权限的数据库或表

3,用户名

grant和revoke可以在几个层次上控制访问权限

1,整个服务器,使用 grant ALL  和revoke  ALL

2,整个数据库,使用on  database.*

3,特点表,使用on  database.table

4,特定的列

5,特定的存储过程

 

user表中host列的值的意义

%              匹配所有主机

localhost    localhost不会被解析成IP地址,直接通过UNIXsocket连接

127.0.0.1    会通过TCP/IP协议连接,并且只能在本机访问;

::1              ::1就是兼容支持ipv6的,表示同ipv4的127.0.0.1

 

 

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@’%’

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

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

9>.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.%’;

10>.grant 普通 DBA 管理某个 MySQL 数据库的权限。

grant all privileges on testdb to dba@’localhost’

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

11>.grant 高级 DBA 管理 MySQL 中所有数据库的权限。

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

12>.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;

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’

注意:修改完权限以后 一定要刷新服务,或者重启服务,刷新服务用:FLUSH PRIVILEGES。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/109060.html原文链接:https://javaforall.net

(0)
上一篇 2021年9月14日 上午11:00
下一篇 2021年9月14日 下午12:00


相关推荐

  • ViewStub延迟加载

    ViewStub延迟加载在项目中,难免会遇到这种需求,在程序运行时需要动态根据条件来决定显示哪个View或某个布局,最通常的想法就是把需要动态显示的View都先写在布局中,然后把它们的可见性设为View.GONE,最后在代码中通过控制View.VISIABLE动态的更改它的可见性。这样的做法的优点是逻辑简单而且控制起来比较灵活。但是它的缺点就是,耗费资源,虽然把View的初始可见View.GONE但是在Inflate布局…

    2022年6月28日
    25
  • php soapclient出错,PHP7 SoapClient问题

    php soapclient出错,PHP7 SoapClient问题我最近从 PHP5 4 升级到 PHP7 男孩是一个改变 但这是不重要的 自升级以来 我遇到了 SoapService 的问题 这是我的 SoapRequest 在 PHP5 4 上的样子 redactedreda sha1 redacted createdgt201 07 26createdlt2 07 27responseeq 以下是在 P

    2026年3月18日
    3
  • Win10总是开机黑屏?显卡驱动安装失败-驱动人生解决方案

    Win10总是开机黑屏?显卡驱动安装失败-驱动人生解决方案驱动人生了解到,自从win10系统发布以来,越来越多的用户都将系统给换成win10系统了。但是面对的用户基数大,系统难免会有不完善的地方。相信很多用户在使用过程中都会因为win10的各种毛病而被坑过,比如电脑开机就出现黑屏2分钟的问题。正常情况下,win10系统应该是开机后就可以显示的,不会出现需要黑屏2分钟左右的时间。这到底是哪里出现问题了呢?  经过驱动人生官方运维人员的检查发现,这个是因为Win10系统中潜在的一些bug导致的,如果大家的显卡有问题或者显卡驱动有问题,在开机后就会黑屏1-3分钟

    2022年5月5日
    83
  • 冷钱包 开发 c语言,冷钱包是什么?教你创建冷钱包

    冷钱包 开发 c语言,冷钱包是什么?教你创建冷钱包原标题 冷钱包是什么 教你创建冷钱包玩币的人都有自己的比特币钱包 而钱包按照私钥的存储方式又分为冷钱包和热钱包两种 热钱包就不用说了 即是我们平时用来交易的在线钱包 它的特点是使用方便 易操作 而冷钱包是指网络不能访问到你私钥的钱包 即离线钱包 它的优点是 very 安全 不用担心私钥被盗 但是操作麻烦 而且也存在物理安全风险 比如电脑丢失损坏等 所以通常情况下我们使用的都是热钱包 但是当持有比特

    2026年3月26日
    1
  • CSS3 选择器

    CSS3 选择器CSS3选择器分为:结构型伪类选择器、UI元素状态伪类选择器,否定选择器,和伪元素一、结构型伪类选择器:first-child选择某个元素的第一个子元素; :last-child选择某个元素的最后一个子元素; :nth-child()选择某个元素的一个或多个特定的子元素; :nth-last-child()选择某个元素的一个或多个特定的子元素,从这个元素的最后一个子元素开始算; :…

    2022年7月11日
    22
  • cache数据库教程

    cache数据库教程1 Cach 是新一代高性能数据库技术 被誉为创新的 后关系型 数据库 Postrelation 作为后关系型数据库 它整合了对象数据库访问 高性能的 sql 访问 强大的多维数据访问 这三种方法能够同时访问相同的数据 一 对象数据库访问示例 二 强大的多维数据访问 三 高性能的 sql 访问 2 Cach 包括应用服务器 在 Cach 中包括一个应用服务器 这个服务器提供高级对象编程 并且可以很容易

    2026年3月26日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号