1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > MySQL-(1)查看用户权限 (2)用户授权 (3)删除用户权限 语法格式总结

MySQL-(1)查看用户权限 (2)用户授权 (3)删除用户权限 语法格式总结

时间:2019-08-25 09:00:48

相关推荐

MySQL-(1)查看用户权限 (2)用户授权 (3)删除用户权限 语法格式总结

目录

(1)mysql中查看用户权限有2种方式:

(2)mysql GRANT:用户授权(拥有grant权限的用户才可执行grant语句)

(3)mysql revoke:删除用户权限有2种语法格式

(1)mysql中查看用户权限有2种方式:

1)查看mysql.user表中的数据记录

SELECT * FROM mysql.user;

注意:a. 必须拥有对user表的查询权限,才可执行该语句;

b. 新创建的用户只有登录mysql服务器的权限,没有任何其他权限,不能查询user表。2)SHOW GRANTS FOR 语句查看权限

SHOW GRANTS FOR 'username'@'hostname';

其中,username 表示用户名,hostname 表示主机名或主机 IP。

转载自:MySQL查看用户权限 ()

(2)mysql GRANT:用户授权(拥有grant权限的用户才可执行grant语句)

简单概括:grant 权限 on 数据库对象 to 用户

完整语法格式:

GRANT priv_type [(column_list)]

ON database.table

TO user [IDENTIFIED BY [PASSWORD] 'password'] [, user[IDENTIFIED BY [PASSWORD] 'password']] ...

[WITH with_option [with_option]...]

其中:

priv_type 参数表示权限类型;columns_list 参数表示权限作用于哪些列上,省略该参数时,表示作用于整个表;database.table用于指定权限的级别;user 参数表示用户账户,由用户名和主机名构成,格式是“'username'@'hostname'”;IDENTIFIED BY 参数用来为用户设置密码;password 参数是用户的新密码。

WITH 关键字后面带有一个或多个 with_option 参数。这个参数有 5 个选项,详细介绍如下:

GRANT OPTION:被授权的用户可以将这些权限赋予给别的用户;MAX_QUERIES_PER_HOUR count:设置每个小时可以允许执行 count 次查询;MAX_UPDATES_PER_HOUR count:设置每个小时可以允许执行 count 次更新;MAX_CONNECTIONS_PER_HOUR count:设置每小时可以建立 count 个连接;MAX_USER_CONNECTIONS count:设置单个用户可以同时具有的 count 个连接。

MySQL 中可以授予的权限有如下几组:

列权限,和表中的一个具体列相关。例如,可以使用 UPDATE 语句更新表 students 中 name 列的值的权限。表权限,和一个具体表中的所有数据相关。例如,可以使用 SELECT 语句查询表 students 的所有数据的权限。数据库权限,和一个具体的数据库中的所有表相关。例如,可以在已有的数据库 mytest 中创建新表的权限。用户权限,和 MySQL 中所有的数据库相关。例如,可以删除已有的数据库或者创建一个新的数据库的权限。

对应地,在GRANT 语句中可用于指定权限级别的值有以下几类格式:

*:表示当前数据库中的所有表。*.*:表示所有数据库中的所有表。db_name.*:表示某个数据库中的所有表,db_name 指定数据库名。db_name.tbl_name:表示某个数据库中的某个表或视图,db_name 指定数据库名,tbl_name 指定表名或视图名。db_name.routine_name:表示某个数据库中的某个存储过程或函数,routine_name 指定存储过程名或函数名。TO 子句:如果权限被授予给一个不存在的用户,MySQL 会自动执行一条 CREATE USER 语句来创建这个用户,但同时必须为该用户设置密码。

转载自:MySQL中授权(grant)和撤销授权(revoke - Boblim - 博客园 ()

转载自:MySQL GRANT:用户授权 ()

(3)mysql revoke:删除用户权限有2种语法格式

简单概括:revoke 权限 on 数据库对象 from用户

1)删除特定用户的特定权限:

REVOKE priv_type [(column_list)]...

ON database.table

FROM user [, user]...

REVOKE 语句中的参数与 GRANT 语句的参数意思相同。其中:

priv_type 参数表示权限的类型;column_list 参数表示权限作用于哪些列上,没有该参数时作用于整个表上;user 参数由用户名和主机名构成,格式为“username'@'hostname'”。

2)删除特定用户的所有权限:

REVOKE ALL PRIVILEGES, GRANT OPTION FROM user [, user] ...

删除用户权限需要注意以下几点:

REVOKE 语法和 GRANT 语句的语法格式相似,但具有相反的效果。要使用 REVOKE 语句,必须拥有 MySQL 数据库的全局 CREATE USER 权限或 UPDATE 权限。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。