“数据库类课程资源建设( MySQL 数据库应用与设计)”教学方向资源建设
1
【任务 6-15】在命令行授予用户数据表权限和字段权
限
【任务描述】
( 1)授予 happy 用户对 book 数据库的“ 图书类型 ”表的“ Select、 Insert”权限。
( 2)授予 happy 用户在 book 数据库“图书信息”表的“图书名称、作者、价格”的
“ Select、 Update”权限。
( 3)如果用户 lucky 不存在,授予该用户 book 数据库的“图书类型”数据表的 Select
和 Delete 权限。
【任务实施】
( 1)授予 happy 用户对数据表的操作权限
在命令行中输入以下语句授予 happy 用户对数据表的操作权限:
Grant Select , Insert On book.图书类型 To "happy"@"localhost" ;
该语句执行成功时,会出现以下提 示信息:
Query OK, 0 rows affected (0.07 sec)
在命令行中输入以下语句查看 tables_priv 数据表中 happy 用户的相关信息:
Select Db, User, Table_name, Grantor, Table_priv, Column_priv From mysql.tables_priv
Where user="happy" And Host="localhost" ;
查看结果如图 6-35 所示。
图 6-35 授予 happy 用户对“ 图书类型 ” 表的“ Select、 Insert”权限的结果
“数据库类课程资源建设( MySQL 数据库应用与设计)”教学方向资源建设
2
( 2)授予 happy 用户对数据表字段的操作权限。
在命令行中输入以下语句授予 happy 用户对数据表字段的操作权限:
Grant Select(图书名称 ,作者 ,价格 ) , Update(图书名称 ,作者 ,价格 ) On book.图书信息
To "happy"@"localhost" ;
该语句执行成功时,会出现以下提示信息:
Query OK, 0 rows affected (0.02 sec)
在命令行中输入以下语句查看 columns_priv 数据表中 happy 用户的相关信息:
Select Db, User, Table_name, Column_name, Column_priv From
mysql.columns_priv
Where user="happy" And Host="localhost" ;
查看结果如图 6-36 所示。
图 6-36 授予 happy 用户在“图书信息”表指定字段“ Select、 Update”权限的结果
( 3)给不存在的用户授予权限。
在命令行中输入以下语句授予目前不存在的用户 lucky 授权:
Grant Select, Delete On book.图书信息 To "lucky"@"localhost" Identified By "123456" ;
该语句执行成功时,会出现以下提示信息:
Query OK, 0 rows affected, 1 warning (0.00 sec)
在命令行中输入以下语句查看 user 数据表中用户列表及相关权限:
Select Host,User,Select_priv,Insert_priv,Update_priv,Delete_priv From mysql.user ;
查看结果如图 6-37 所示。
“数据库类课程资源建设( MySQL 数据库应用与设计)”教学方向资源建设
3
图 6-37 查看 user 数据表中用户列表及相关权限的结果
从图 6-37 中可以看出,授予权限时自动创建了一个用户 lucky,但该用户对数据库不具
有全局权限。
在命令行中输入以下语句查看 tables_priv 数据表中用户列表及相关信息:
Select Db, User, Table_name, Grantor, Table_priv, Column_priv From mysql.tables_priv ;
查看结果如图 6-38 所示。
图 6-38 查看 tables_priv 数据表中用户列表及相关信息的结果
|
|