《MySQL数据库技术及应用项目教程》项目7 课后习题答案.docxVIP

  • 86
  • 0
  • 约1.86千字
  • 约 3页
  • 2022-03-29 发布于安徽
  • 举报

《MySQL数据库技术及应用项目教程》项目7 课后习题答案.docx

项目7 选择题 1、B 2、B 3、A 4、D 5、C 6、D 填空题 1、用户能否登录系统和如何登录 用户能否使用数据库中的对象和执行相应操作 2、权限表 3、连接核实 请求核实 4、主机名 用户名 密码 user表 5、*.* 6、REVOKE DROP USER DELETE 判断题 1、对 2、错 3、错 4、对 5、对 6、对 简答题 1、 答:MySQL中可以授予的权限有以下4个层次:(1)全局级的user表;(2)数据库级的db表;(3)表级的tables_priv表;(4)列级的columns_priv表。 即MySQL中权限的分配是按照user表、db表、table_priv表和colums_priv表的顺序进行分配的。这几个表的权限级别依次递减,全局权限覆盖局部权限。 2、 答:用于指定权限级别的值有以下6类格式: (1)*:如果未选择数据库,则其含义同*.*;否则为当前数据库的所有表。 (2)*.*:全局权限,表示所有数据库中的所有表。 (3)数据库名.*:数据库权限,表示指定数据库中的所有表。 (4)数据库名.表名:表权限,表示指定数据库中的指定表或视图。 (5)表名:表权限,表示指定表或视图中的所有列。 (6)数据库名.子程序名:表示指定数据库中的指定存储过程或函数。 3、 答:如果数据库有很多用户,其中大多数用户的权限基本相同,那么单独授权给某个用户的话,不便于集中管理,如当权限变化时,管理员可能需要逐个修改用户的权限,非常麻烦。而如果将这些权限相同的用户都赋予同一个角色,则它们就都继承了该角色拥有的权限,若角色的权限变化了,这些相关的用户权限也都会发生相应的变化。因此,通过角色可将用户分为不同的类,同一类用户(具有相同角色)赋予相同的操作权限,从而方便管理员集中管理用户的权限。 4、 答:在MySQL中,如果要启用角色,有两种方式:一种是通过SET DEFAULT ROLE语句为用户设置默认角色;另一种是通过SET ROLE语句设置当前会话(用户)的活动角色。 (1)通过SET DEFAULT ROLE语句启用角色的语法格式为: SET DEFAULT ROLE {NONE | ALL | 角色[,角色] [,…n]} TO用户[,用户] [,…n]; (2)通过SET ROLE语句启用角色的语法格式为: SET ROLE {DEFAULT | NONE | ALL | ALL EXCEPT 角色[,角色] [,…n] | 角色[,角色] [,…n]}; 项目实践(训)题 1、 CREATE USER dbuser@localhost IDENTIFIED BY abc123 PASSWORD HISTORY 5; SELECT host, user FROM mysql.user WHERE User LIKE dbu%; 2、 ALTER USER dbuser@localhost IDENTIFIED BY 123456 PASSWORD REQUIRE CURRENT; 3、 GRANT SELECT,INSERT,UPDATE ON people.* TO dbuser; 4、 CREATE ROLE emp_role; GRANT SELECT ON people.bemployee TO emp_role; SHOW GRANTS FOR emp_role; 5、 CREATE USER emp_user@localhost IDENTIFIED BY 123456; GRANT emp_role TO emp_user@localhost; SHOW GRANTS FOR emp_user@localhost USING emp_role; 6、 # 首先在root用户会话下,输入并执行如下语句 SET DEFAULT ROLE emp_role TO emp_user@localhost; # 然后在emp_user用户会话下,查看当前会话已激活的角色 SELECT CURRENT_ROLE(); 7、 REVOKE ALL FROM emp_user@localhost; SHOW GRANTS FOR emp_user@localhost;

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档