国家开放大学数据库运维形考实验15答案

实验答案在文末

实验1MySQL数据库服务器配置(预备知识:第1,2章;分值:16分;需辅导教师评分)

1.实验目的

掌握MySQL的安装方法,练习MySQL数据库服务器的使用,理解MySQL服务器的组成,掌握MySQL服务器的配置方法。

2.实验内容

下载当前最新版本的MySQL,或者之前某个版本的MySQL,并在Windows上完成安装。

安装完毕后,找到MySQL的配置文件;并查看初始化配置文件的内容。

使用start和stop命令启动和关闭mysql数据库。

连接到MySQL服务器,连接成功后是一个mysql的提示。

在MySQL数据库服务器端找到错误日志文件,并查看错误日志的内容。

通过初始化配置文件,启用二进制日志、慢查询日志和通用查询日志。

查看二进制日志、慢查询日志和通用查询日志的内容。

关闭二进制日志、慢查询日志和通用查询日志。

用CREATEDATABASE语句创建数据库,使用SHOWDATABASES命令查看显示所有数据库,可以看到新建的数据库名称。

使用Workbench图形化管理工具创建数据库。

使用SHOWSTATUS命令查看系统状态参数;使用SHOWVARIABLES命令查看服务器变量设置。

使用命令“select

basedir”和“select

datadir”寻找到MySQL的安装目录和数据存放目录。

使用SHOWENGINES查看所有引擎,在配置文件中更改默认存储引擎default-storage-engine变量,改为MyISAM。重启MySQL,查看默认存储引擎是否改变。

创建一个数据表t_myisam(idintauto_increment,namevarchar(30),primarykey(id)),创建时显式指定存储引擎为MyISAM。使用“ALTERTABLETABLE_NAMEENGINE=ENGINE_NAME”语句,更改表t_myisam的存储引擎为InnoDB。

使用“SHOWTABLESTATUSFROMDB_NAMEWHERENAME=’TABLE_NAME’”和“SHOWCREATETABLETABLE_NAME”命令查看数据库DB_NAME下表TABLE_NAME的存储引擎。

InnoDB的I/O相关配置,根据公式:

事务日志的总大小=Innodb_log_files_size*Innodb_log_files_in_group

来设置64M大小的事务日志缓冲区并设置在每次事务提交执行log写入cache,并flush到磁盘。

3.实验要求

(1)所有操作均在命令行或者MySQLWorkbench中完成。

(2)将操作过程以屏幕抓图的方式复制,形成实验文档,并对照本章内容写出分析报告。

实验2MySQL数据库对象管理(预备知识:第3章;分值:16分;需辅导教师评分)

1.实验目的

理解数据字典、表、索引、视图的作用,掌握数据字典的操纵方式,掌握库、表、索引、视图的操作方法。

2.实验内容

查看INFORMATION_SCHEMA.SCHEMATA表中的信息。

查看INFORMATION_SCHEMA.TABLES表中的信息。

查看INFORMATION_SCHEMA.COLUMNS表中的信息。

查看INFORMATION_SCHEMA.STATISTICS表中的信息。

查看INFORMATION_SCHEMA.CHARACTER_SETS表中的信息。

查看INFORMATION_SCHEMA.COLLATIONS表中的信息。

使用CREATEDABASE语句创建school数据库。

将school数据库的字符集设为utf-8。

在school数据库下创建stu_info表,包括stunovarchar(10)、stunamevarchar(8)、stubirdate、stuageint;创建表course,包括cournovarchar(3)、cournamevarchar(10)、schyeardate、creditint;创建stuandcour表,包括stunovarchar(10)、cournovarchar(3)、gradeint。

使用SHOW、DESCRIBE语句查看所建的表。

使用ALTERTABLE语句将stuinfo表的表名改为stuinfo,并且增加stugendervarchar(4)字段,将course表中courno字段的类型改为varchar(5)。

将前边建的表复制到test数据库中,如果没有test数据库就新建一个。

删除test数据库中的course表。

创建stuinfo表上stuno的索引。

创建stuandcour表上stuno字段和courno字段上的多列索引。

删除创建的索引。

创建stuinfo表上的单源视图。

创建stuinfo表和stuandcour上的多源视图,包含stuno、stuname、courno、grade。

分别通过访问information_schema的views表和tables表,查看已经创建好的视图;使用DESCRIBE语句查看已经创建好的视图。

使用SELECT语句查询创建好的视图。

3.实验要求

(1)所有操作均在命令行或者MySQLWorkbench中完成。

(2)将操作过程以屏幕抓图的方式复制,形成实验文档,并对照本章内容写出分析报告。

实验3数据库安全性与完整性控制实验(预备知识:第4章;分值:16分;需辅导教师评分)

1.实验目的

练习安全性授权方法、安全性和完整性查看的操作方法。

2.实验内容

使用createuser创建用户,创建单个用户teacher,创建两个用户teacher1和student。

通过直接操作MySQL用户表创建用户,创建单个用户teacher2,创建两个用户teacher3和student2(请注意,新版的MySQL可能不支持使用此方法创建新用户)。

新建一个terminal窗口,使用mysql–u–h-p方式登录teacher。

再次新建一个terminal窗口,使用mysql–u–h-p方式登录student。

使用GRANT语句对用户student赋予所有数据库所有表的insert权限和update权限。

使用GRANT语句对用户student赋予school数据库所有表的select权限。

使用GRANT语句对用户student赋予school数据库stuinfo表的create访问权限。

使用GRANT语句对用户student赋予school数据库stuinfo表的stuno列上的select访问权限。

使用GRANT语句对用户student赋予s所有数据库所有表的select访问权限,并设定student每小时最多可使用select操作访问数据库的次数。

查看表INFORMATION_SCHEMA.USER_PRIVILEGES中有关student的信息,查看user表中的内容信息。

查看表INFORMATION_SCHEMA.SCHEMA_PRIVILEGES,找到student在school数据库下拥有的权限。

查看表INFORMATION_SCHEMA.TABLE_PRIVILEGES,查找school数据库中stuinfo数据表相关的表权限。

查看表INFORMATION_SCHEMA.COLUMN_PRIVILEGES,查找用户sutdent的其中一条记录,其数据库为school,表名为stuinfo,列名为stuno,查看其授予权限类型。

首先进入school数据库,如果没有,创建一个school数据库。

创建stuinfo表,包括stunovarchar(10)(加非空约束和主键约束)、stunamevarchar(8)、stubirdate、stuageint。

创建表course,包括cournovarchar(3)(非空约束)、cournamevarchar(10)、schyeardate(非空约束)、creditint,主键为课程号courno和学年schyear。

创建stuandcour表,包括stunovarchar(10)、cournovarchar(3)、chonovarchar(10),定义其主键为选课号chono,stuno为外键,参考stuinfo中的stuno列。

上述操作完成后,继续向stuandcour数据表中添加新的字段schyeardate,添加外键(courno,schyear)参照course表中的courno,并删除时置空值。

查看表INFORMATION_SCHEMA.TABLES——存放数据库中所有数据库表信息,所得到的记录值有很多条,然后观察其内部字段表示,进一步筛选表名为stuinfo的记录,school数据库stuinfo表的所有基本信息都在这里描述。

查看表INFORMATION_SCHEMA.TABLE_CONSTRAINTS——存放表中所存在的约束信息。进一步筛选表名为stuandcour的记录信息,可以看到关于该表有三条约束信息,与我们设定的一样,其拥有两个外键和一个主键。尽管这三种约束涉及四个列字段,但是基于表层面还是三个约束,因为有一个外键是由两个列组成的。

查看表INFORMATION_SCHEMA.KEY_COLUMN_USAGE——存放数据库里所有具有约束的键信息,然后通过对表名筛选,选出表stuandcour的所有以列为单位的约束信息,通过观察可以得出该查询结果与table级别约束的查询结果个数不同,这里出现四个结果,列名COLUMN_NAME部分涉及stuandcour表中所有约束包含的全部列。据我们所知,stuandcour表的主键为chono,为第一行结果;第一个外键只有一列,该列为stuno,出现在第二行结果;第二个外键含有两列,分别为courno、schyear,出现在第三行、第四行。

3.实验要求

(1)所有操作均在命令行或者MySQLWorkbench中完成。

(2)将操作过程以屏幕抓图的方式复制,形成实验文档,并对照本章内容写出分析报告。

实验4数据库备份与恢复实验(预备知识:第5章;分值:16分;需辅导教师评分)

1.实验目的

练习数据库备份与恢复的操作方法。说明:实验过程中可以使用MySQL


转载请注明:http://www.aierlanlan.com/cyrz/6985.html

  • 上一篇文章:
  •   
  • 下一篇文章: