MySQL数据库技术与应用(慕课版)课后习题答案_第1页
MySQL数据库技术与应用(慕课版)课后习题答案_第2页
MySQL数据库技术与应用(慕课版)课后习题答案_第3页
MySQL数据库技术与应用(慕课版)课后习题答案_第4页
MySQL数据库技术与应用(慕课版)课后习题答案_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章数据库概述

1.填空题

(1)Oracle

(2)U1U2U4U

(3)体积小、安装成本低、速度快、源码开放

(4)Memcached>Redis>mongoDB

(5)大、中、小型网站中

2.选择题

(1)A

(2)B

(3)A

(4)A

(5)D

3.简答题

(1)

常见的关系型数据库有MySQL、Oracle、SQLServer和Access数据库。MySQL数据库主要应

用在广泛地应用到互联网上的大、中、小型网站中;Oracle数据库主要应用在传统大企业、

政府机构、金融机构、证券机构等;SQLServer数据库主要应用在部分电商和使用Windows

服务器平台的企业;Access数据库早期应用于小型程序系统ASP+Access、系统留言板、校

友录等。

(2)

关系型数据库按照结构化的方法存储数据,具备纵向扩展能力,采用结构化查询语言,强调

ACID规则,强调数据的强一致性,可以控制事务原子性细粒度,并且一旦操作有误或者有

需要,可以回滚事务。

非关系型数据库不需要固定的表结构,一般情况下也不存在对数据的连续操作。

不同点:关系型数据库使用表结构,非关系型的数据库格式灵活。关系型数据库支持SQL语

言,支持事务,非关系型数据库不提供SQL语言,无事务处理。相对于关系型数据库,非关

系型数据库在大数据存取上具备无法比拟的性能优势。

(3)

应该注意MySQL的版本和开发人员使用的版本。

第2章环境的安装与基本配置

L填空题

(1)UbuntuCentOSRedHat

(2)RPM包二进制包源码包

(3)仅主机模式NAT模式桥接模式

(4)数据库语言

(5)Mysqladmin、mysqldump等命令

2.选择题

(1)A

(2)B

(3)B

(4)D

(5)D

3.简答题

(1)

在企业中应该使用源码编译方式安装MySQL,使用源码安装在编译安装过程可以设定参数,

按照需求,进行安装,并且安装的版本,可以自己选择,灵活性比较大。

(2)

VMware虚拟平台提供3种网络模式。

仅主机模式:本机作为路由器给你的虚拟机分配一个IP,将虚拟机与外网隔开,使得虚拟机

成为一个独立的系统,只与主机通信,虚拟系统和真实的网络是被隔开的。适合在地址紧张

的时候使用。

NAT模式:NAT是虚拟机中默认的网络配置,用于共享主机的P地址,相当于虚拟系统把物

理主机作为路由器访问互联网,虚拟机和主机在共享一个P地址。

桥接模式:直接连接物理网络。在此模式下虚拟机相当于台新的.独立的计算机,可以分配

到独立的IP(与主机的P相同网段)。

(3)

第一,要手动下载安装依赖包。

第二,如果编译中途失败,需要删除cmake生成的预编译配置参数的缓存文件和make编译

后生成的文件,再重新编译。

第三,编译过程需要消耗大量的系统资源,如果编译不通过,建议将系统内存调至2GB以

上。

第四,复制可执行文件到指定的目录下,并修改名字为mysqld,授予执行权限,设置开机自

启。

第五,服务启动完成后,检查MySQL的服务状态和端口占用情况,验证MySQL源码编译安

装是否成功。

第3章MySQL数据操作

1.填空题

(1)SELECT

(2)指定数据

(3)WHERE

(4)存储固定长度的字符串

(5)取值范围

2.选择题

(1)B

(2)A

(3)B

(4)A

(5)C

3.简答题

(1)

MySQL支持的数值类型有TINYINT、SMALLINT.MEDIUMINTsINT/INTEGER、BIGINT、FLOAT

和DOUBLEo

(2)

数值类型分为整数类型、浮点类型、定点数类型、位类型。

(3)

修改字段名的语法格式如下。

ALTERTABLE表名CHANGE原字段名新字段名新数据类型。

第4章数据库单表查询

L填空题

(1)SELECT...FROM..

(2)所有字段

(3)WHERE

(4)LIMIT

(5)COUNTf)

2.选择题

(1)C

(2)C

(3)A

(4)B

(5)A

3.简答题

(1)

关系运算符中"一表示等于,"!=”表示不等于,“<>”表示不等于,隈”表示小于,“<="

表示小于等于,表示大于,“"”表示大于等于。

<2)

AND关键字表示“与"(&),即同时满足多个条件。OR关键字表示“或"(||),过滤时

只要满足其中一个查询条件即可。

(3)

聚合函数中COUNT。函数用于返回某列的行数,SUM()函数用于返回某列值的和,AVG()函数

用于返回某列的平均值,MAX()函数用于返回某列的最大值,MIN()函数用于返回某列的最小

值。

第5章数据的完整性

L填空题

(1)唯一组合

(2)NULL

(3)加快对数据的访问速度、保证数据库表中每一行数据的唯一性、表和表之间的连

接、减少查询中分组和排序的时间

(4)实体完整性域完整性引用完整性

(5)普通索引唯一索引全文索引

2.选择题

(1)D

(2)C

(3)C

(4)D

(5)B

3.简答题

(1)

数据的完整性主要分为实体完整性、域完整性和引用完整性。实体完整性可以通过定义主键

约束、唯•约束和自动增长列实现,域完整性可以通过数据类型约束、非空约束和默认值约

束实现,引用完整性可以通过外键约束实现。

(2)

区别:1.主键是唯标识条记录,不能重复,不允许为空;而外键可以重复,可以是空值。

2.主键是用来保持数据完整性,外键是用来建立与其他表联系用的。3.主键只有一个,外键

可以有多个。

关系:外键一定是另外某个表的主键。

(3)

索引的优点:L可以加快数据的检索速度。2.可以保证数据库表中每一行数据的唯一性。3.

加速表和表之间的连接。4.在使用分组或者排序子句时,可以减少查询中分组和排序的时间。

索引的缺点:1.在数据库建立过程中,需花费较多的时间去建立并维护索引,特别是随着数

据总量的增加,所花费的时间将不断递增。2.过多的索引需要占大量的物理空间。3.当对数

据进行增、删、改操作时,用户也需要对索引进行相应的维护,降低了数据的维护速度。

第6章数据库多表查询

1.填空题

(1)一对----对多多对一多对多

(2)左表

(3)符合连接条件

(4)笛卡尔积

(5)子查询在SELECT语句中包含SELECT语句

2.选择题

(1)A

(2)BC

(3)D

(4)C

(5)B

3.简答题

(1)

表与表之间的关系包括一对一、一对多(多对一)、多对多。一对一关系可以简单地理解为

一张表的一条记录只能与另外一张表的一条记录进行对应;一对多关系可以简单地理解为一

张表中的一条记录可以对应另外一张表中的一条或者多条记录,也可以没有记录与之关联;

多对一关系与一对多关系本质相同,只是从不同的角度来看问题;在多对多关系中,两个数

据表中的数据需要通过“中间人”实现数据的连接,每条记录都可以和另一个数据表里任

意数量的记录相关联。

(2)

区别:使用UNION关键字合并数据时会去除重复的数据,UNIONALL关键字不会去除掉合

并结果中重复的数据。

(3)

区别:左外连接以左表为基准,查询结果中不仅显示左表满足条件的数据,还显示不满足条

件的数据(左表的数据全部显示),而右表只保留满足条件的数据,不满足条件的显示为空。

右外连接以右表为基准,右表的数据行全部保留,左表保留符合连接条件的行。

第7章权限与账户管理

1.填空题

(1)information_schemamysqlperformance_schemasys

(2)Ctrl+z

(3)mysql.user

(4)Quit或者\q

(5)5

2.选择题

(1)D

(2)A

(3)A

(4)B

(5)B

3.简答题

(1)

第一个方法,SELECT语句查看用户权限,具体如下所示。

SELECThost,user,insert_pri\6select_privFROMmysql.userwhereuser='userl23';

第二个方法,查看用户权限的语法格式如下所示。

SHOWGRANTSFOR'username'@'hostname';。

(2)

如果删除用户信息表,root用户不能登录到数据库。

(3)

确保有网、有电、有足够的存储空间。

第8章存储过程与触发器

1.填空题

(1)特定功能

(2)减少应用程序和数据库服务器之间的流量提高SQL语句的重用性、共享性和

可移植性安全

(3)行

(4)存储过程

(5)审计表

2.选择题

(1)C

(2)A

(3)D

(4)B

(5)A

3.简答题

(1)

区别:1.存储过程是一组已创建并存储在数据库中的SQL语句,可以重用代码。而触发器是

种特殊的不是由用户直接调用存储过程,创建触发黯时,会定义在针对特定表或列进行特

定类型的数据修改时触发。2.用户可以使用Execute或Exec语句来直接调用或执行存储过

程,而无法直接调用或执行触发器。触发相关事件时,只会自动执行触发器。3.存储过程可

以采用输入参数,而触发器中不能将参数作为输入我们不能将参数作为输入传递给触发器。

4.存储过程可以返回零或n值,触发器无法返回值。5.在存储过程中可以使用事务,触发器

内不允许进行事务处理。8.存储过程通常用于执行用户指定的任务,触发器通常用于审计工

作。

(2)

查看存储过程:1.使用SHOWSTATUS语句查看存储过程。2.使用SHOWCREATE语句查看存

储过程。3.通过information_schema.Routines表查看存储过程。

(3)

使用CALL或EXECUTE语句调用存储过程,存储过程返回结果(例如SELECT语句的结果)。

这些结果可以由其他存储过程或应用程序使用。

第9章数据库事务与锁机制

1.填空题

(1)原子性一致性隔离性持久性

(2)SQL语句

(3)不可行的

(4)表锁行锁页锁

(5)脏读取不可重复读幻读

2.选择题

(1)B

(2)B

(3)C

(4)A

(5)C

3.简答题

(1)

幻读是指一个线程中的事务读取到了另外一个线程中提交的INSERT数据。例如,用户A将

数据库中所有学生的成绩从具体分数改为ABCDE等级,但是用户B此时插入了一条具体分

数的记录,用户A修改完成后发现还有一条记录没有改过来,就好像发生了幻觉一样,因此

称这种情况为幻读或者虚读。

(2)

区别:MySQL中InnoDB引擎支持行锁,但有时也会升级为表锁,而MylSAM引擎只支持表

锁。

(3)

在MySQL中可以通过“SHOWFULLPROCESSLIST”和“SHOWENGINEINNODBSTATUS”命令

来监控事务中的锁情况。另外,也可以通过查询informationschema库下的INNODBTRX>

INNODBLOCKS和INNODBLOCKWAITS这三张表来获取更加详细的锁的信息。

第10章MySQL数据备份

1.填空题

(1)物理备份逻辑备份

(2)热备份

(3)硬件故障软件故障自然灾害黑客攻击(或管理人员的误操作)

(4)灾难恢复审计测试

(5)低

2.选择题

(1)B

(2)A

(3)A

(4)C

(5)C

3.简答题

(1)

区别:物理备份主要备份的是真实的数据文件,而逻辑备份主要备份的是建表、建库、插入

数据等操作所执行的SQL语句。物理备份恢复速度比较快,占用空间比较大,逻辑备份速度

比较慢,占用空间比较小。逻辑备份的恢复成本高。

(2)

使用xtrabackup进行全量备份时,备份后的数据并不能直接使用,还需要将同时备份出的事

务日志应用到备份中,才可以能得到一份完整、一致、可用的数据。在prepare阶段时•,不

建议中断xtrabackup进程,因为这可能会造成备份数据文件损坏,从而无法保证备份有效

性。在f配置中指定数据恢复的路径datadir时,为了可以正常的恢复数据,需要确保

已将MySQL服务停止。

使用xtrabackup进行增量备份时,提前进行全量备份。

(3)

合理的备份策略可以有效地防范网络攻击和IT中断。企业在选择备份解决方案时,需要考

虑以下三个因素:针对远程优先进行优化、同步与备份以及恢复

以下四个简单的因素可以帮助其做出有关备份策略的决策。

笫一,灵活性-确保企业的备份解决方案所支持的生态系统比当前使用的更广泛。企业不希

望它阻碍其敏捷性或云计算服务的采用。

第二,自动化一寻找智能自动化(甚至是人工智能)有助于消除备份过程中的专家或日常元素,

并为IT团队腾出更多时间的解决方案。

第三,预算-长期需要重复数据删除设备的低成本软件,或者具有严格升级路径的设备,长

期来看在成本上可能会变得更加昂贵,企业需要对此更加关注。

第四,整合-许多产品通常意味着孤岛、浪费空间以及更加复杂性。将多个产品整合到备份

平台可以在节省基础设施成本和降低复杂性方面起到重要的作用。

第11章日志管理

L填空题

(1)错误日志查询日志二进制日志慢查询日志登录日志

(2)错误

(3)二进制

(4)慢查询

(5)系统日志

2.选择题

(1)B

(2)A

(3)C

(4)A

(5)D

3.简答题

(1)

详解见11.2节。

(2)

应该考虑温备的持锁多久、备份产生的负载、备份过程的时长、恢复过程的时长等。

(3)

首先在配置文件/etc/f中定义存储路径,然后配置/etc/syslogd文件的日志轮转。

第12章主从复制

1.填空题

(1)用户

(2)二进制

(3)I/OSQL

(4)同一台服务器

(5)省略Server・ID

2.选择题

(1)A

(2)C

(3)C

(4)B

(5)D

3.简答题

(1)

优点:两者都是日志文件里事件的一个标志,如果将整个mysql集群看作一个整体,pos就

是局部的,GTID就是全局的。因为不用手工设置日志偏移量,GTID方式可以很方便地进行

故障转移,如果启用log_slave_updates那么从库不会丢失主库上的任何修改。

(2)

流程:配置主服务器。第一,在主服务器上开启二进制日志并配置唯一的服务器ID,配置完

成后,创建相关的日志目录并赋予权限,重新启动mysqld服务。第二:在主服务器的f

配置文件中加入以下配置项:

innodb_flush_log_at_trx_commit=1

sync_binlog=1

将skip_networking选项设置为OFF状态。第三,创建一个专门用于复制数据的用户。

配置从服务器。第;在从服务器的f配置文件中添加Server旧,重新启动mysqld的

服务。第二,登录到从服务器的数据库中将备份的数据导入。第三,从服务器上配置连接到

主服务器,配置完成后,在从服务器开始复制线程,验证线程是否工作正常。

(3)

注意问题:主服务器需要修改新加入从服务器的Server-ID编号,建议用最新的备份数据。

第13章MySQL读写分离

1.填空题

(1)MySQLProxyAtlasDBProxyAmoeba

(2)数据库中间件

(3)schema.xml文件

(4)端口IP

(5)对不同请求的分发

2.选择题

(1)A

(2)B

(3)A

(4)C

(5)C

3.简答题

(1)

注意事项:1.使用W

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论