2019秋电大数据库运维复习资料.pdf
数据库运维复习资料数据库运维复习资料一、单项选择题一、单项选择题1.哪个选项是用来创建和修改数据库结构的()。ADDL BDMLCDCL DDQL2.数据库中数据的逻辑独立性是指()。A数据与储存结构的逻辑相互独立B数据元素之间的逻辑相互独立C存储结构与物理结构的逻辑相互独立D数据与程序之间的逻辑相互独立3.MySQL 服务器的存储引擎中支持事务处理、支持外键、支持崩溃修复能力和并发控制的存储引擎是()。A.InnoDB B.MyISAMC.Memory D.NDB4.MySQL 中设置停止二进制文件的操作是()。A.删除文件中mysqld组里 log-bin 内容B.使用 SET 命令设置 SQL_LOG_BIN 的值为 0C.执行二进制日志删除命令删除全部二进制文件即可D.以上都对5.在 MySQL 数据库中,以下数据库对象与数据库三级模式对应关系正确的是()。A.表属于模式、索引属于内模式、视图属于外模式B.表属于模式、索引属于外模式、视图属于内模式C.表属于外模式、索引属于内模式、视图属于模式D.表属于外模式、索引属于模式、视图属于内模式6.DELETE FROM student 语句的作用是()。A.删除当前数据库中 student 表内的当前行B.删除当前数据库中 student 表内的所有行C.由于没有 where 语句,所以不删除任何数据D.删除当前数据库中 student 表,包括表结构7.关系数据库中,主键是()。A创建唯一的索引,允许空值B只允许以表中第一字段建立C允许有多个主键的D为标识表中唯一的实体8.用户自定义完整性中,不同表的两列或多列之间可能存在的直接要求关系,这种直接要求关系涉及两个不同的表,这种约束为()。A元组约束 B域约束C关系间约束 D完整性约束9.数据库中缓冲区写入磁盘使用的算法是()。B.LFU D.LRU10.系统故障的恢复操作正确的是()。A.反向扫描日志文件,对故障发生前已经提交的事务记入重做队列,故障发生时未完成的事务计入撤销队列 B.反向扫描日志文件,对故障发生前已经提交的事务记入撤销队列,故障发生时未完成的事务计入重做队列C.正向扫描日志文件,对故障发生前已经提交的事务记入撤销队列,故障发生时未完成的事务计入重做队列D.正向扫描日志文件,对故障发生前已经提交的事务记入重做队列,故障发生时未完成的事务计入撤销队列11.InnoDB 引擎使用哪一种算法管理缓冲池()。(最近最少使用)(最近未使用)(最佳置换)(先来先出)12.查询优化策略中,正确的策略是()。A.尽可能早地执行笛卡尔积操作B.尽可能早地执行并操作C.尽可能早地执行差操作D.尽可能早地执行选择操作13.以下不符合数据类型选择总体原则的是()。A.更小的数据类型通常更好B.尽量避免把列设置为 NOT NULLC.更简单的数据类型通常更好D.注意数据的存储范围以及数据的精度14.下列有关中继日志文件介绍错误的是()。A.中继日志文件和日志文件索引的保存路径可以通过-relay-log 和-relay-log-index 参数进行自定义B.中继日志文件拥有与二进制日志文件不同的结构C.遇到了从数据库节点主机名修改的情况时,可以通过修改中继日志、相关日志文件名的方式解决D.启动 Slaves 节点 I/O 线程时会触发创建新的中继日志文件,并更新相关的索引文件15.显示复制线程状态(分行显示)的命令是()。A.Show slave statusB.Show slave statusgC.Show master statusGD.Show master logs16.数据库中数据的物理独立性是指()。A.数据库与数据库管理系统的相互独立B.用户程序与 DBMS 的相互独立C.用户的应用程序与存储在磁盘上数据库中的数据是相互独立的D.应用程序与数据库中的数据的逻辑结构相互独立17.MySQL 可视化管理工具 MySQL GUI Tools 中方便数据库迁移的图形化应用程序是()。AMySQL Administrator BMySQL Migration ToolkitCMySQL Query Browser DMySQL Workbench18.在 MySQL 数据库中,InnoDB 数据缓冲池用于数据读写描述正确的是()A.数据以段为单位读取B.采用 LRU 算法策略C.数据缓存的大小对于查询性能没有影响D.数据以记录为单位读取19.MySQL replication复制中主机和从机是通过什么进行数据同步的()A.Redo log B.BinlogC.文件系统 D.磁盘备份20.下列关于数据库对象的描述,错误的是()A.存储过程、函数均可接收输入参数B.触发器可以在数据更新时被激活C.域可以由用户创建,可以加约束条件D.一个关系可以有多个主码21.索引设计属于数据库设计的()阶段A.需求分析 B.概念设计 C.逻辑设计 D.物理设计22 对好的加密算法描述不正确的是()A.对授权用户来说,加密数据和解密数据相对简单B.对授权用户来说,加密模式应依赖于算法的保密C.对入侵者来说,确定密钥是及其困难的D.对入侵者来说,有些数据库产品提供数据加密例行程序23.用于控制用户对数据库表建立或删除索引的权限为()A.select 权限 B.index权限C.alter 权限 D.create权限24.下列操作不能够释放会话某一表的当前所有锁的是()A执行命令 UNLOCK TABLESB.对另一表执行 LOCK TABLESC.执行命令 START TRANSACTIOND.对同一表执行 LOCK TABLES中,可以用于备份数据库的命令是()Amysqlimport B.mysqldumpC.mysql D.copy26.关于 InnoDB 缓冲区以下哪个说法是错误的()AInnoDB 缓冲区能够同时缓存索引和数据BInnodb_buffer_pool_pages_total表示缓冲区总页面数CInnoDB 缓冲区页面大小默认为 32KibDInnoDB 缓冲区可以有效减少访问磁盘的次数27.关于查询优化技术,说法错误的是()A.查询重用方法节省查询的时间但是会占用更多内存B.相同查询任务对应的查询语句也是一样的C.并行查询将查询计划分解到多个实例上并行计算再合并结果D.同一条查询语句可能有多种执行计划28.关于数据类型的使用建议,以下不正确的是()A.确定不会出现负数的字段时,建议使用unsigned 定义类型的性能远低于 CHAR 类型或者是 VARCHAR 类型类型的存储空间少于 DATE 类型D.关联查询最好使用同一数据类型29.下列哪个选项可以让从数据库变成其他服务器的主数据库()A.relay_logB.log_slave_updatesC.log-binD.binlog_do_db30.从数据库服务器中 I/O 线程的作用是()A.中继日志文件的管理B.保存节点自身产生的事件C.保存接收来自其他节点的事件D.访问主数据库的二进制文件存放在中继日志文件中二、多项选择题二、多项选择题1数据库系统日常的运维管理中包括日维护作业计划,以下属于日维护作业计划的是(A.检查数据库网络连通与否B检查磁盘空间的使用情况,监视数据库的表空间利用率C.对数据库的主要配置文件及参数进行检测、调整及备份D.收集数据库性能统计数据,检查高速缓存区命中率、资源争用统计信息2.MySQL 数据库中,关于 Memory 存储引擎描述正确的是()A.默认使用哈希索引B.MySQL 使用 Memory 存储引擎作为临时表来存放查询的中间结果集C.支持外键和事务处理D.将表中数据存放在内存中3.视图的作用有()。)A.简化用户的数据操作 B.提供了一定程度的逻辑独立性C.提供了一定程度的逻辑独立性 D.提高查询性能4.必须明确指定组成视图的所有列名的情况有()A.在视图的定义中使用 ORDER BY 语句B.多表连接时选出了几个同名列作为视图的字段C.需要在视图中为某个列启用新的、更合适的名字D.某个目标列不是单纯的属性名,而是聚集函数或列表达式5.数据完整性约束包含的三大方面为()A实体完整性 B参照完整性C主键完整性 D用户定义完整性6.MySQL 服务器安装时,自动建立两个数据库,首先是mysql 数据库,该数据库是 MySQL权限系统的核心,包含以下哪几个表:()A.user 表 B.db表C.procs_priv 表 D.tables_priv表7.MySQL 可以授予的权限包括()A列权限 B.表权限C数据库权限 D用户权限8.按照不同的划分标准,备份类型划分为()A.在线备份与离线备份 B.物理备份与逻辑备份C.完全备份与增量备份 D.本地备份与异地备份9.基于拷贝文件的恢复说法正确的是()A.在恢复过程中不需要关闭MySQL 服务器B.进行数据库恢复的 MySQL 服务的版本要与备份的MySQL 服务的版本保持一致C.恢复过程中需要备份的配置文件与数据文件D.恢复过程中只需要数据文件10.从数据库节点会在满足下列条件时触发创建新的中继日志文件,并更新相关的索引文件()A.启动 Slaves 节点 I/O 线程时B.执行日志刷新命令C.中继日志文件达到指定最大值D.查询当前配置时11数据库运维的目标是保证数据库系统的()。A共享性 B高性能C高可用性 D安全性12.在数据库中事务的 ACID 原则中,包含下列哪些内容()A.原子性 B.一致性C.隔离性 D.持久性13.关于 DELETE 和 TRUNCATE TABLE说法正确的是()A.两者都可以删除表中所有记录B.两者都可以删除指定条目的记录C.前者可以删除指定条目的记录,后者不能D.后者可以清空一个表的所有数据,并归1 自增 ID 的值语言集几个功能模块为一体,其中包括()DCL B.DML C.DNL D.DDL表权限列包括以下哪几个字段()ACreate_routine_priv B.GrantorC.Alter_routine_priv D.Timestamp16.下列工具可以用于 MySQL 的备份和恢复的是()AMySQL Enterprise Backup BmylvmbackupCmydumper Dmysqlhotcopy17.使用复制来进行恢复的主要方式有()A延迟复制实现快速恢复B实现 InnoDB 崩溃恢复C使用日志服务其进行恢复D同步复制实现快速恢复18.吞吐量指标常用的测试单位有()A.TPS B.FPSC.DPS D.QPS19.查询语句优化有以下哪些方法()A.查询重写 B.并行查询C.查询重用 D.拆分查询 20.为了实现主数据库二进制文件在从数据库的复用在从服务器中引入了()A.中继日志文件 B.二进制日志文件C.I/O 线程 D.SQL线程三、综合题三、综合题1.数据库 company 中有如下两张表表 offices(office_code,city,address,country,postal_code)office_code 为主键,表 employees(employee_number,name,mobile,office_code,job_title,note,gender),employee_number为主键且自增.(1)创建数据库 company,写出创建语句;(3 分)(2)创建表 offices 和 employees,写出创建语句;(8 分)(3)将表 employees 的 mobile 字段修改到 office_code 字段后面;(3 分)(4)修改表 employees 的 gender 字段,数据类型为 CHAR(1),非空约束;(3 分)(5)给表 employees 增加字段名 favoriate_activity,数据类型为 VARCHAR(100);(3分)2.登录 root 账户创建普通账户并给普通账户授权:(1)创建一个密码为“123456”的普通用户账户“databasenormal”;(2 分)(2)创建名为 student 的数据库(2 分)(3)创建名为 student2 的表,包括 stuno(学号列)、stubir(生日列)、age(年龄列),并设置主键为 stuno;(8 分)(4)使用 grant 命令对其进行 student 数据库的 student2 的表的 stuno 列的 select操作授权;(2 分)(5)查看 mysql 数据库下 user 表中该用户的条目;(2 分)(6)查看 mysql 数据库下 table_priv 表中该用户条目;(2 分)(7)查看 mysql 数据库下 columns_priv 表中该用户条目;(2 分)3.仓库业务中,一个仓库数据库包括如下三张表:仓库表 warehouses(wid,name,area),wid 是主键零件表 compnents(cid,name,mode,unit,price),cid 为主键组装表 stores(wid,cid,qrty),wid、cid 是外键,分别参照仓库表的wid 和零件表的cid(1)创建以上表,写出创建语句;(10 分)(2)创建一个包含仓库号、仓库名、零件号、零件名、价格、库存量的视图VIEW1,写出创建语句;(3 分)(3)创建零件表上的聚簇索引,写出创建语句;(3 分)(4)使用 create user 创建新用户“wangwu”,密码为“666666”,写出创建语句;(2分)(5)授予 wangwulocalhost 用户在视图 view1 在列库存量上的 select 权限,并且限定该用户此种 select 访问权限的每小时最多访问次数为20 次,写出授权语句;(2 分)4.假设有两台服务器 A 与 B,IP 分别为 A(),B()两台服务器的操作系统都使用windows 系统,且两台服务器的 Mysql 数据库版本一致,请完成下列操作:(1)在 A 数据库上创建一个用户“user”用于 B 数据库访问并设置登录密码“1234”,写出创建语句;(2 分)(2)为(1)中创建的用户赋予可以进行用户复制的权限,写出执行语句;(2 分)(3)执行权限刷新,写出执行语句;(2 分)(4)查询 B 是否有了对 user 的访问权限,写出查询语句;(2 分)(5)在 A 数据库的文件中写出命令以打开二进制日志并指定服务器ID(默认 ID 为1);(6 分)(6)为了确认二进制日志文件是否已经在A 数据库上创建,写出检查命令;(2 分)(7)假设在 B 数据库也完成相关配置之后,将B 数据库连接到 A 数据库并重放其二进制日志,写出执行语句;(2 分)(8)复制启动之后,通过B 数据库查询复制进程,写出查询命令;(2 分)一、单项选择题一、单项选择题1.A2.D3.A4.B5.A6.B7.D8.C9.D10.D11.A12.D13.B14.B15.B16.C17.B18.B19.B20.D试题参考答案试题参考答案21.D22.B23.B24.B25.B26.C27.B28.C29.B30.D二、多项选择题二、多项选择题1 AB2.ABD3.ABC4.BCD5.ACD6.ABD7.ABCD8.ABCD9.BC10.ABC11 BC12.ABCD13.ACD14.ABD15.AC16.ABCD17.AC18.AD19.ABC20.ACD三、三、综合题综合题1.数据库 company 中有如下两张表表 offices(office_code,city,address,country,postal_code)office_code 为主键,表 employees(employee_number,name,mobile,office_code,job_title,note,gender),employee_number为主键且自增.(1)创建数据库 company,写出创建语句;(3 分)答案:CREATE DATABASE company;(2)创建表 offices 和 employees,写出创建语句;(8 分)答案:CREATE TABLE offices(Office_code int(10)not null,city varchar(50),address varchar(50),country varchar(50),postal_code varchar(15)PRIMARY KEY(office_code);CREATE TABLE employees(Employee_number INT(10)NOT NULL PRIMARY KEY AUTO_INCREMENT,name VARCHAR(50),mobile VARCHAR(25),office_code INT(10),job_title VARCHAR(50),note VARCHAR(255),gender VARCHAR(5),);(3)将表 employees 的 mobile 字段修改到 office_code 字段后面;(3 分)答案:ALTER TABLE employees MODIFY mobile VARCHAR(25)AFTER office_code;(4)修改表 employees 的 gender 字段,数据类型为 CHAR(1),非空约束;(3 分)答案:ALTER TABLE employees MODIFY gender CHAR(1)NOT NULL;(5)给表 employees 增加字段名 favoriate_activity,数据类型为 VARCHAR(100);(3分)答案:ALTER TABLE employees ADD favoriate_activity VARCHAR(100);2.登录 root 账户创建普通账户并给普通账户授权:(1)创建一个密码为“123456”的普通用户账户“databasenormal”;(2 分)答案:create userdatabasenormallocalhost identified by 123456;(2)创建名为 student 的数据库(2 分)答案:create database student;(3)创建名为 student2 的表,包括 stuno(学号列)、stubir(生日列)、age(年龄列),并设置主键为 stuno;(8 分)答案:create table student2 (stuno char(50),stubir char(4),age int,PRIMRY KEY stuno );(4)使用 grant 命令对其进行 student 数据库的 student2 的表的 stuno 列的 select操作授权;(2 分)答案:grant select(stuno)on to databasenormallocalhost;(5)查看 mysql 数据库下 user 表中该用户的条目;(2 分)答案:select*from user where User=databasenormal G(6)查看 mysql 数据库下 table_priv 表中该用户条目;(2 分)答案:select*from tables_priv where User=databasenormal;(7)查看 mysql 数据库下 columns_priv 表中该用户条目;(2 分)答案:select*from columns_priv where User=databasenormal;3.仓库业务中,一个仓库数据库包括如下三张表:仓库表 warehouses(wid,name,area),wid 是主键零件表 compnents(cid,name,mode,unit,price),cid 为主键组装表 stores(wid,cid,qrty),wid、cid 是外键,分别参照仓库表的wid 和零件表的cid(1)创建以上表,写出创建语句;(10 分)答案:CREATE TABLE warehouses(wid char(11),Name char(30)Area numerirc(4,1)PRIMRY KEY wid);CREATE TABLE compnents(cid char(11),Name char(50),mode char(50),unit char(8),price numerirc(4,1)PRIMRY KEY cid);CREATE TABLE stores(wid char(11),cid char(11)qrty numerirc(4,1)FOREIGN KEY(wid)REFERENCES warehouses(wid)FOREIGN KEY(cid)REFERENCES compnents(cid);(2)创建一个包含仓库号、仓库名、零件号、零件名、价格、库存量的视图VIEW1,写出创建语句;(3 分)答案:CREATE VIEW view1 AS SELECT wid,cid,price,qrtyFROM warehouse,stores,compnentsWHERE=and=;(3)创建零件表上的聚簇索引,写出创建语句;(3 分)答案:CREATE TABLE compnents(cid int(11),Name char(50),PRIMRY KEY cid);(4)使用 create user 创建新用户“wangwu”,密码为“666666”,写出创建语句;(2分)答案:CREATE USER“wangwulocalhost”666666”;(5)授予 wangwulocalhost 用户在视图 view1 在列库存量上的 select 权限,并且限定该用户此种 select 访问权限的每小时最多访问次数为20 次,写出授权语句;(2 分)答案:mysqlGRANT SELECT(qrty)ON view TO wangwulocalhost WITHMAX_QUERIES_PER_HOUR 20;4.假设有两台服务器 A 与 B,IP 分别为 A(),B()两台服务器的操作系统都使用windows 系统,且两台服务器的 Mysql 数据库版本一致,请完成下列操作:(1)在 A 数据库上创建一个用户“user”用于 B 数据库访问并设置登录密码“1234”,写出创建语句;(2 分)答案:mysqlCREATE USER user IDENTIFIED BY 1234;(2)为(1)中创建的用户赋予可以进行用户复制的权限,写出执行语句;(2 分)答案:mysqlgrant replication slave on*.*to user identified by 1234;(3)执行权限刷新,写出执行语句;(2 分)答案:mysqlflush privileges(4)查询 B 是否有了对 user 的访问权限,写出查询语句;(2 分)答案:mysqlselect user,host from;(5)在 A 数据库的文件中写出命令以打开二进制日志并指定服务器ID(默认 ID 为1);(6 分)答案:server-id=1log_bin=master-binlog_bin-index=(6)为了确认二进制日志文件是否已经在A 数据库上创建,写出检查命令;(2 分)答案:SHOW MASTER STATUS(7)假设在 B 数据库也完成相关配置之后,将B 数据库连接到 A 数据库并重放其二进制日志,写出执行语句;(2 分)答案:change master to master_host=(8)复制启动之后,通过B 数据库查询复制进程,写出查询命令;(2 分)答案:SHOW SLAVE STATUSG