mysql用户管理

 

目录

查看用户:select user,host from mysql.user;

查看用户权限:show grants for '[用户名]'@'[使用范围]';

创建用户

授权(创建并授权)

修改密码

撤销用户授权

删除用户


 

 

 

mysql中的用户信息和权限等都存储在一个名为mysql的数据库中。其中主要用到的是user、db、tables_priv、columns_priv、procs_priv这五张表,最重要的是user表。

  • user表存储全局权限,适用于一个给定服务器中的所有数据库,在命令中展现形式为*.*;
  • db表存储数据库权限,适用于一个给定数据库中的所有表,在命令中展现形式为[数据库名].*;
  • tables_priv表存储表权限,适用于一个给定表中的所有列,在命令中展现形式为[数据库名].[表名];
  • columns_priv表存储列权限,适用于一个给定表中的单一列,在命令中展现形式为;

CREATE ROUTINE, ALTER ROUTINE, EXECUTE和GRANT权限,适用于已存储的子程序。这些权限可以被授予为全局层级和数据库层级,而且除了CREATE ROUTINE外,这些权限可以被授予为子程序层级,并存储在procs_priv表中。

查看用户:select user,host from mysql.user;

mysql> select user,host from mysql.user;
+--------------+------------+
| user         | host       |
+--------------+------------+
| root         | 127.0.0.1  |
| root         | ::1        |
|              | localhost  |
+--------------+------------+
2 rows in set (0.00 sec)

查看用户权限:show grants for '[用户名]'@'[使用范围]';

mysql> show grants for 'root'@'localhost';
+---------------------------------------------------------------------+
| Grants for root@localhost                                           |
+---------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION |
| GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION        |
+---------------------------------------------------------------------+
2 rows in set (0.00 sec)

创建用户

create user '[新用户名]'@'[作用域]' identified by '[密码]';

flush privileges;  //创建完要记得刷新权限表

授权(创建并授权)

grant [权限] on [数据库名].[表名] to '[用户名]'@'[作用域]' identified by '[密码]';

 

注:

1、权限为ALL PRIVILEGES或ALL是所有权限,还有单个权限select、update、insert、delete等,单个权限之间用逗号隔开,详细可以查看下mysql.user表的表结构。

例:grant all privileges on [库名] to [用户名];

show grants for [用户名];

2、[数据库名].[表名]为*.*时表示所有数据库。

3、如果不存在identified by '[密码]'时,密码维持原样。

修改密码

alter user '[用户名]'@'[作用域]' identified by '[新密码]';  //两个都是修改密码的命令,使用其中一个就好

set password for [用户名]@[作用域]=password('[新密码]');

 

撤销用户授权

revoke [权限] on [数据库名].[表名] from '[用户名]'@'[作用域]';

删除用户

drop user '[用户名]'@'[作用域]';  //建议使用这个<br>delete from mysql.user where user='[用户名]' and host='[作用域]';

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值