mysql怎么增加权限

mysql中可用GRANT语句为用户增加权限,语法“GRANT 权限类型 ON 权限级别值 TO user [IDENTIFIED BY 密码] [WITH子句];”;其中参数“user”表示用户账户,格式为“用户名@主机名”。 本教程操作

    <blockquote><p>mysql中可用GRANT语句为用户增加权限,语法“GRANT 权限类型 ON 权限级别值 TO user [IDENTIFIED BY '密码'] [WITH子句];”;其中参数“user”表示用户账户,格式为“'用户名'@'主机名'”。</p></blockquote>

本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。

在 MySQL 中,可以利用GRANT 语句为用户授权,增加权限。

其语法格式如下:

priv_type 参数表示权限类型;

columns_list 参数表示权限作用于哪些列上,省略该参数时,表示作用于整个表;

database.table 用于指定权限的级别;

user 参数表示用户账户,由用户名和主机名构成,格式是“'username'@'hostname'”;

IDENTIFIED BY 参数用来为用户设置密码;

password 参数是用户的新密码。

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 权限的用户才可以执行 GRANT 语句.

示例:

使用 GRANT 语句创建一个新的用户 testUser,密码为 testPwd。用户 testUser 对所有的数据有查询、插入权限,并授予 GRANT 权限。

1.png

扩展知识:权限类型说明

1)授予数据库权限时,<权限类型>可以指定为以下值:

4) 最有效率的权限是用户权限。

授予用户权限时,<权限类型>除了可以指定为授予数据库权限时的所有值之外,还可以是下面这些值:

CREATE USER:表示授予用户可以创建和删除新用户的权限。

SHOW DATABASES:表示授予用户可以使用 SHOW DATABASES 语句查看所有已有的数据库的定义的权限。

【相关推荐:mysql视频教程】

以上就是mysql怎么增加权限的详细内容,更多请关注每日运维其它相关文章!