- 5
- 0
- 约8.87千字
- 约 29页
- 2020-11-11 发布于浙江
- 举报
MySQL数据库应用与实践教程
卜耀华 石玉芳 编著
第1章 数据库技术基础
学习要点
通过本章的学习,能够了解数据的安全控制机制;掌握数据库安全控制的各种方法。能够对MySQL数据库中的用户和权限进行管理;能够对MySQL日志文件进行管理;熟悉每种数据备份与数据恢复的使用。
第8章 数据库安全管理
第1章 数据库技术基础
第8章 数据库安全管理
学习内容
8.1 MySQL的安全性
8.2 用户管理
8.3 权限管理
课堂实践1:创建数据管理员用户
8.4 日志文件
8.5 数据备份与恢复
课堂实践2:备份教务管理系统数据库
第1章 数据库技术基础
第8章 数据库安全管理
8.1 MySQL的安全性
8.1.1 MySQL安全性概述
数据库的安全控制有多种措施,通常使用用户和权限管理的方法。用户管理用来阻止非法的用户登录到数据库服务器中,而利用操作权限管理来控制越权的非法操作。
8.1.2 MySQL安全管理等级
MySQL安全管理等级包括:
1.操作系统安全性
2.服务器安全性
3.数据库安全性
4.数据库对象安全性
第1章 数据库技术基础
第8章 数据库安全管理
8.2 用户管理
8.2.1 创建用户
在MySQL中,使用CREATE USER语句创建用户。其语法格式如下:
CREATE USER 用户 [IDENTIFIED BY [PASSWORD] 密码]
[,用户n [IDENTIFIED BY [PASSWORD] 密码n]][,…];
例8.1 创建两个新用户U_student1和U_student2。密码分别为1234和5678。SQL语句如下:
create user U_student1@localhost identified by ‘1234’,
U_student2@localhost identified by ‘5678’;
use mysql;
select user,host,authentication_string from user;
第1章 数据库技术基础
第8章 数据库安全管理
8.2.2 修改用户名和密码
1.修改用户名
语法格式如下:
RENAME USER 旧用户名 TO 新用户名
[,旧用户名n TO 新用户名n][,…];
例8.2 将用户U_student1的名称改为U_stu1。SQL语句如下:
rename user U_student1@localhost to U_stu1;
2.修改用户密码
语法格式如下:
SET PASSWORD [FOR 用户]= PASSWORD(新密码);
例8.3 将用户U_student2的密码修改为abc123。SQL语句如下:
set password for U_student2@localhost = password(abc123);
第1章 数据库技术基础
第8章 数据库安全管理
8.2.3 删除用户
使用DROP USER语句可删除一个或多个MySQL用户,并取消其权限。DROP USER语句必须拥有MySQL数据库的全局CREATE USER权限或DELETE权限。其语法格式如下:
DROP USER 用户[,…];
例8.4 删除U_stu1和U_student2用户。SQL语句如下:
drop user U_stu1,U_student2@localhost;
第1章 数据库技术基础
第8章 数据库安全管理
8.3 权限管理
8.3.1 权限概述
(1)列权限:作用于在一个给定表的单个列。例如,使用UPDATE语句更新student表中学号列值的权限。
(2)表权限:作用于一个给定表的所有列。例如,使用SELECT语句查询student表的所有数据的权限。
(3)数据库权限:作用于一个给定数据库的所有表。例如,在已有的D_sample数据库中创建新表的权限。
(4)全局权限:作用于一个给定服务器上的所有数据库。例如,删除已有的数据库或者创建一个新的数据库的权限。
第1章 数据库技术基础
第8章 数据库安全管理
权限的管理包含如下两个内容。
(1)授予权限:允许用户具有某种操作权。
(2)收回权限:不允许用户具有某种操作权,或者收回曾经授予的权限。
8.3.2 授予权限
在MySQL中,使用GRANT语句授予权限。拥有GRANT权限的用户才可以执行GRANT语句。其语法格式如下:
GRANT 权限名称 [(列名)][,权限名称 [(列名)]][,…n]
ON [TABLE|FUNCTION|PROCEDURE]
{表名或视图名|*|*.*|数据库名.*|数据库名.表名或视图名}
TO 用户[IDENTIFIED BY [PASSWORD] 密码]
[,用户 [ID
原创力文档

文档评论(0)