多语言展示
当前在线:700今日阅读:183今日分享:45

MySQL如何进行用户授权

MySQL权限系统的作用是授予某个主机的某个用户操作数据库的权限。权限控制包含创建用户,授权,回收。这里简单介绍下MySQL是如何进行用户授权的相关内容,希望能帮助到大家。
工具/原料
1

Windows操作系统

2

MySQL8.0.9

方法/步骤
1

查看数据库中的所有用户。MySQL用户存储在mysql数据库中的user表当中,可直接查询这张表即可。执行命令:select user,host from mysql.user;

3

查看用户权限信息。使用show grants命令来查看,使用create user命令创建的用户最初是无权限的,可以看到是usage权限即无权限。语法:show grants for 'user_name'@'host_name' ;例子:show grants for 'system'@'127.0.0.1' ;

4

设置用户的资源限制。我们可以限制一个用户在一定时间内操作的次数,限制的资源有以下几项:1.max_queries_per_hour,限制一个用户在一小时内执行sql的次数。2.max_updates_per_hour,限制一个用户在一小时内执行更新次数。3.max_connections_per_hour,限制一个用户在一小时内连接MySQL的次数。4.max_user_connections,限制一个用户在同一时间内连接MySQL次数,即高并发数。设置授权用户资源限制例子:create user 'system'@'127.0.0.1' identified by 'mysql' with max_queries_per_hour 100 ;修改授权用户资源限制例子:alter user 'system'@'127.0.0.1' with max_queries_per_hour 50;

5

授权用户操作权限。使用grant命令,指定授予的权限,授予权限级别(全局,数据库级别,数据库对象级别),授予的用户。语法:grant  privs on db_name.table_name to 'user_name'@'host_name' ;例子:grant all privileges user  on *.* to 'system'@'127.0.0.1' ;

6

回收用户权限。有时需要回收某个用户的某些权限,可使用revoke命令,并指定要回收的权限,回收权限的级别(全局,数据库级别,数据库对象级别),回收的用户。语法:revoke  privs on db_name.table_name from 'user_name'@'host_name' ;例子:revoke  delete,drop  on *.* from 'system'@'127.0.0.1' ;

7

总结:1.查看数据库中的所有用户2.创建新用户3.查看用户权限信息4.设置用户的资源限制5.授权用户访问权限6.回收用户权限

注意事项
1

创建授权用户还可以直接使用grant user命令

2

用户权限信息存储在mysql数据库中user,db,tables_priv,columns_priv,procs_priv表中

推荐信息