数据库运行管理员 练习卷

四级 / 三级 / 二级 / 一级 | 50 题 | 姓名:__________ 得分:______

返回题库 显示答案 15 题30 题50 题100 题

1在Linux环境下安装MySQL 8.0时,若希望数据目录位于独立挂载的/data分区并启用大小写敏感的表名,初始化时应如何设置

  1. A. 初始化前修改my.cnf设置lower_case_table_names=0并指定datadir=/data/mysql
  2. B. 初始化时加--lower-case-table-names=0并指定--datadir=/data/mysql
  3. C. 初始化后通过SET GLOBAL lower_case_table_names=0动态修改再迁移数据目录
  4. D. 先用默认参数初始化,再把数据目录整体mv到/data/mysql并重启服务

2在MySQL主从复制中,从库Seconds_Behind_Master持续增大但IO线程正常,最应优先排查的是

  1. A. 从库SQL线程是否因大事务或单线程回放而滞后
  2. B. 主库binlog是否被误删除导致IO中断
  3. C. 从库磁盘是否已满导致relay log无法写入
  4. D. 主从server_id是否配置冲突

3某DBA为MySQL配置了binlog后,执行全量备份与binlog归档相结合的恢复策略,其主要目的是

  1. A. 把数据库恢复到备份之后的任意时间点
  2. B. 减少备份文件占用的磁盘空间
  3. C. 提升备份期间数据库的写入并发度
  4. D. 替代定期全量备份以节省备份时间

4对Oracle执行RMAN全量备份后,为验证备份集可被恢复且数据块无损坏,应执行的操作是

  1. A. RESTORE VALIDATE DATABASE
  2. B. BACKUP VALIDATE DATABASE
  3. C. RECOVER DATABASE
  4. D. CROSSCHECK BACKUP

5数据库执行全量备份后,为缩短恢复时间并减少每日备份量,通常采用的备份策略组合是

  1. A. 每周全量备份加每日增量备份
  2. B. 每天全量备份并保留七天
  3. C. 每月全量备份并关闭日志归档
  4. D. 仅在业务低峰期做一次全量备份

6在Linux服务器上以RPM包安装MySQL 8.0后,需要修改默认字符集为utf8mb4并使其对后续新建库生效,应优先调整哪个配置文件中的参数

  1. A. /etc/my.cnf 中 [mysqld] 段的 character-set-server
  2. B. /etc/my.cnf 中 [client] 段的 default-character-set
  3. C. /usr/share/mysql/my-default.cnf 中的 collation-server
  4. D. /var/lib/mysql/auto.cnf 中的 server-uuid

7在MySQL主从复制中,从库出现Seconds_Behind_Master持续增大且Relay_Log_Pos长时间不推进,首先应检查的是

  1. A. 从库SQL线程是否处于运行状态及是否有大事务阻塞
  2. B. 主库binlog是否已切换过文件
  3. C. 从库的read_only参数是否开启
  4. D. 主库的max_connections是否已满

8PostgreSQL中执行VACUUM FULL与VACUUM的主要区别在于

  1. A. VACUUM FULL会重写表并释放磁盘空间给操作系统
  2. B. VACUUM FULL只在从库上执行以减轻主库压力
  3. C. VACUUM FULL会清理事务ID回卷而不重写表
  4. D. VACUUM FULL会同时重建所有索引并更新统计信息

9在对生产库执行备份恢复演练时,下列做法中符合安全规范的有(多选)

  1. A. 恢复前先对目标库做一次当前状态的完整备份
  2. B. 在业务低峰期于独立测试环境验证恢复流程
  3. C. 恢复时直接覆盖生产库以节省磁盘空间
  4. D. 恢复后核对关键表的行数与校验和
  5. E. 恢复脚本中硬编码数据库账号密码便于复用

10Oracle数据库执行RMAN全库备份时,控制文件自动备份默认关闭,若需每次备份后自动备份控制文件应配置哪个参数

  1. A. CONFIGURE CONTROLFILE AUTOBACKUP ON
  2. B. CONFIGURE RETENTION POLICY TO REDUNDANCY
  3. C. CONFIGURE BACKUP OPTIMIZATION ON
  4. D. CONFIGURE DEVICE TYPE DISK PARALLELISM

11在Linux上以源码方式安装MySQL后,首次初始化数据目录时应使用哪个命令生成临时root密码并完成初始化

  1. A. mysqld --initialize --user=mysql
  2. B. mysql_install_db --user=mysql
  3. C. mysqld --init-file=/etc/my.cnf
  4. D. mysqladmin -u root password

12某业务库误删一张核心表,binlog_format为ROW且已开启binlog,最合适的恢复方式是

  1. A. 用最近全备加binlog按时间点恢复到误删前
  2. B. 直接重启实例让InnoDB自动回滚该删除
  3. C. 从从库执行反向DELETE把数据补回主库
  4. D. 用undo日志把已提交的删除操作撤销

13以下关于数据库运行监控与日常巡检的做法中,合理的有(多选)

  1. A. 定期采集慢查询日志并分析TOP SQL
  2. B. 对表空间与磁盘使用率设置阈值告警
  3. C. 每天检查主从复制延迟与错误日志
  4. D. 为省资源关闭错误日志只保留慢日志
  5. E. 巡检发现锁等待后直接杀掉所有会话

14数据库服务器内存充足但频繁发生物理读,查看缓冲池命中率偏低,最有效的调优措施是

  1. A. 适当增大innodb_buffer_pool_size
  2. B. 增大innodb_log_file_size
  3. C. 增大max_connections
  4. D. 开启query_cache_size

15PostgreSQL中执行pg_basebackup进行基础备份时,若希望备份期间数据库仍可正常读写且备份包含所有WAL日志,应配合使用哪个参数组合

  1. A. -Ft -z -P
  2. B. -Xs -P -R
  3. C. -Fp -c fast
  4. D. -Xf -z -v

16MongoDB副本集中,某次要节点持续处于RECOVERING状态无法转为SECONDARY,检查oplog发现其落后主节点超过oplog窗口,正确的恢复处置是什么

  1. A. 对该节点执行rs.syncFrom指定主节点强制同步
  2. B. 停止该节点清空数据目录后重新加入副本集进行全量同步
  3. C. 在主节点执行rs.stepDown触发重新选举
  4. D. 增大该节点oplogSizeMB后重启等待自动追平

17MySQL从库出现Seconds_Behind_Master持续为0但业务读到旧数据,经查从库SQL线程正常,最可能的原因是

  1. A. 从库开启了多线程复制且未等待所有worker执行完
  2. B. 从库relay log损坏导致SQL线程跳过事务
  3. C. 主库binlog格式为ROW导致无法复制
  4. D. 从库read_only参数未开启

18对MySQL全量备份加binlog实现时间点恢复时,恢复顺序的正确做法是

  1. A. 先恢复最近一次全量备份,再按顺序重放该备份之后的binlog
  2. B. 先重放binlog到故障点,再导入全量备份覆盖
  3. C. 先恢复全量备份,再重放故障点之前任意一段binlog
  4. D. 先重放所有历史binlog,再导入最近一次全量备份

19生产库夜间执行全量逻辑备份时磁盘空间告警,备份文件写到一半失败,正确的后续处置是

  1. A. 清理无用文件释放空间后重新执行完整备份并校验
  2. B. 直接对失败文件做压缩后当作可用备份保留
  3. C. 从失败点继续追加写入剩余表数据
  4. D. 删除失败文件后仅依赖该库的binlog恢复

20监控发现数据库磁盘I/O等待时间持续偏高,而CPU使用率不高,首先应排查的方向是

  1. A. 增加应用连接池大小
  2. B. 检查慢查询与缺失索引
  3. C. 调大排序缓冲区
  4. D. 重启数据库释放内存

21对MySQL执行逻辑备份时,需要保证备份数据与binlog位置一致以支持时间点恢复,mysqldump应搭配哪个参数

  1. A. --single-transaction --master-data=2
  2. B. --lock-all-tables --flush-logs
  3. C. --single-transaction --flush-privileges
  4. D. --quick --hex-blob --events

22使用mysqldump备份InnoDB表时,为保证备份数据的一致性,通常需要配合使用的参数是

  1. A. --lock-tables --single-transaction
  2. B. --single-transaction --master-data
  3. C. --skip-lock-tables --flush-logs
  4. D. --lock-all-tables --quick

23MySQL中执行START SLAVE后从库长期处于Connecting状态,且错误日志提示认证失败,最合理的下一步处置是

  1. A. 在从库执行CHANGE MASTER TO更新复制账号与密码后重新启动复制
  2. B. 在从库执行RESET SLAVE ALL清除中继日志后直接重启复制
  3. C. 在主库执行FLUSH PRIVILEGES并重启主库服务
  4. D. 在从库调整relay_log_recovery参数为ON后重启复制

24在SQL Server中,将数据库恢复模式从完整改为简单后,最直接的后果是

  1. A. 无法再进行日志备份以实现时间点恢复
  2. B. 事务日志文件会被立即收缩到最小
  3. C. 数据库将无法执行完整备份
  4. D. 已提交事务会在检查点时被回滚

25某DBA对生产库执行了全量备份后,又连续执行了多份binlog备份,若要恢复到某次误删除之前的状态,正确的恢复顺序是

  1. A. 先恢复全量备份,再按时间顺序重放binlog
  2. B. 先重放binlog,再恢复全量备份覆盖
  3. C. 先恢复全量备份,再重放最后一次binlog即可
  4. D. 先恢复最近一次增量备份,再重放binlog

26在Oracle数据库中,归档模式下执行热备份时对表空间加锁的正确命令是

  1. A. ALTER TABLESPACE users BEGIN BACKUP
  2. B. ALTER DATABASE BEGIN BACKUP users
  3. C. ALTER TABLESPACE users READ ONLY
  4. D. ALTER DATABASE ARCHIVELOG users

27某运维在业务高峰期对一张千万级表执行ALTER TABLE加索引,发现锁等待严重,正确的处置是

  1. A. 立即kill掉该DDL会话并改用在线DDL工具
  2. B. 增大锁等待超时时间让DDL继续执行
  3. C. 把该表的存储引擎临时改为MyISAM
  4. D. 重启数据库实例释放被占用的表锁

28Oracle数据库处于归档模式下,RMAN执行全库备份后,某数据文件所在磁盘损坏且无该文件的单独备份,此时正确的恢复流程是

  1. A. restore datafile后recover datafile再打开数据库
  2. B. 直接recover database后open database
  3. C. restore database后recover database再resetlogs
  4. D. switch datafile后recover datafile再open

29对MySQL执行逻辑备份时,希望导出所有库的结构与数据并保证导出文件可被另一台同版本服务器直接导入,应使用哪个命令

  1. A. mysqldump --all-databases --single-transaction --routines --events
  2. B. mysqldump --all-databases --lock-all-tables --no-create-info
  3. C. mysqldump --databases mysql --skip-triggers --no-data
  4. D. mysqlpump --exclude-databases=% --users

30某库执行逻辑备份时使用mysqldump --single-transaction,对该参数作用描述正确的是

  1. A. 对InnoDB表开启一致性快照读,不阻塞写入
  2. B. 对所有存储引擎加全局读锁,阻塞写入
  3. C. 对MyISAM表开启事务快照,阻塞写入
  4. D. 对InnoDB表加表级锁,允许并发写入

31某业务要求RPO接近0且允许少量RTO,数据库部署在同城双机房,较合适的方案是

  1. A. 异步复制加每日全量备份
  2. B. 半同步复制加定期全量备份
  3. C. 同步复制加定期全量备份
  4. D. 逻辑备份加异地增量归档

32在SQL Server中,若数据库处于完整恢复模式,要支持日志备份并允许还原到某个时间点,必须执行的操作是

  1. A. 先做一次完整备份
  2. B. 先将恢复模式改为简单
  3. C. 先收缩事务日志
  4. D. 先分离数据库

33某PostgreSQL实例的wal_level当前为minimal,需要支持流复制和归档恢复,应调整为

  1. A. wal_level = replica
  2. B. wal_level = logical
  3. C. wal_level = minimal
  4. D. wal_level = archive

34某PostgreSQL数据库执行VACUUM后表文件大小未减小,最合理的解释是

  1. A. VACUUM只标记空间可重用而不归还操作系统
  2. B. VACUUM需要重建索引才会收缩文件
  3. C. VACUUM必须配合ANALYZE才能释放空间
  4. D. VACUUM在事务提交前不会生效

35某数据库服务器内存充足但InnoDB缓冲池命中率长期偏低,检查发现缓冲池大小配置远小于物理内存,最直接的优化措施是

  1. A. 增大innodb_buffer_pool_size并重启实例
  2. B. 增大innodb_log_file_size并重启实例
  3. C. 增大table_open_cache并重启实例
  4. D. 增大innodb_io_capacity并重启实例

36在对生产库执行xtrabackup全量备份后准备恢复到新实例,恢复前通常需要先执行的操作是

  1. A. 执行xtrabackup --prepare使备份数据达到一致状态
  2. B. 执行xtrabackup --copy-back直接覆盖数据目录
  3. C. 执行FLUSH TABLES WITH READ LOCK锁定原库再恢复
  4. D. 执行mysqladmin shutdown关闭原实例后再恢复

37在SQL Server中,某数据库设置为完整恢复模式但从未做过事务日志备份,日志文件持续增长,正确的处置是

  1. A. 将恢复模式改为简单模式并收缩日志文件
  2. B. 执行一次完整备份后立即执行事务日志备份
  3. C. 直接对日志文件执行SHRINKFILE操作
  4. D. 分离数据库后删除日志文件再附加

38PostgreSQL中执行pg_basebackup做基础备份时,若希望备份期间数据库仍可接受写入且备份包含WAL,应使用的工作模式是

  1. A. 在standby服务器上以--target-dir方式拉取
  2. B. 连接主库以--wal-method=stream方式拉取
  3. C. 先停库再以--pgdata方式复制文件
  4. D. 以--wal-method=fetch且关闭归档

39某DBA制定数据库备份恢复策略时,以下做法中符合运维规范的有(多选)

  1. A. 定期做恢复演练以验证备份可用性
  2. B. 将备份文件与数据库放在同一块物理磁盘
  3. C. 对全量与增量备份分别保留并按周期轮转
  4. D. 备份完成后校验文件大小与校验和
  5. E. 仅在数据库故障时才首次测试恢复流程

40为数据库配置连接池时,将最大连接数设置得远大于数据库实例实际可承载的并发数,最可能引发的后果是

  1. A. 数据库端出现大量活跃会话争抢CPU和内存资源
  2. B. 连接池会拒绝所有新建连接请求
  3. C. 数据库自动降低最大连接数限制
  4. D. 客户端连接建立时间显著缩短

41MySQL中某张日志表按天分区,运维发现查询最新一天数据时仍扫描了全部分区,执行计划中partitions列显示所有分区名,最可能的原因是

  1. A. 分区键与查询条件字段类型不一致导致无法裁剪
  2. B. 分区表未建立局部索引导致扫描全表
  3. C. 查询使用了ORDER BY导致优化器放弃分区裁剪
  4. D. 分区数量超过优化器裁剪上限自动降级

42对InnoDB表执行大量DELETE后,发现表空间文件大小未下降且查询性能变差,最合理的处置措施是

  1. A. 执行OPTIMIZE TABLE回收空间并重建表
  2. B. 执行ANALYZE TABLE更新统计信息
  3. C. 调整innodb_buffer_pool_size扩大缓存
  4. D. 对该表执行FLUSH TABLES刷新缓存

43Oracle数据库处于ARCHIVELOG模式时,执行热备份期间表空间被置于BEGIN BACKUP状态,此时对数据文件的读写行为是

  1. A. 数据文件仍可正常读写,但需在END BACKUP前保存期间产生的归档日志
  2. B. 数据文件被完全锁定,所有DML与查询均被阻塞直到END BACKUP
  3. C. 数据文件只允许查询,禁止任何DML直到END BACKUP
  4. D. 数据文件写入被重定向到临时文件,END BACKUP后合并

44在Linux环境下以RPM包方式安装MySQL后,首次启动服务前必须执行初始化数据目录的操作,该操作的正确命令是

  1. A. mysqld --initialize --user=mysql
  2. B. mysql_install_db --basedir=/usr
  3. C. service mysql start --init
  4. D. mysqld_safe --bootstrap

45DBA在凌晨执行逻辑备份时发现备份任务耗时比平时长了3倍,检查发现备份期间有大批量数据导入作业在运行,正确的后续处置是

  1. A. 将备份与批量导入作业错峰调度
  2. B. 提高备份线程优先级抢占IO
  3. C. 改用物理备份并保持同时运行
  4. D. 缩短备份保留周期以减少数据量

46对数据库执行逻辑备份恢复到测试环境时,发现恢复后部分表数据比生产少,排查备份脚本发现mysqldump未加--single-transaction且备份期间有写入,最合理的解释是

  1. A. 备份文件被压缩损坏导致丢行
  2. B. 备份期间并发写入造成表间数据不一致
  3. C. 恢复时字符集不匹配导致部分行被过滤
  4. D. 目标库磁盘空间不足导致写入中断

47对数据库进行性能调优时,发现磁盘IO长期接近饱和而CPU利用率不高,优先考虑的优化方向是

  1. A. 优化慢查询减少物理读并调整缓冲池命中率
  2. B. 增加应用连接池最大连接数
  3. C. 把数据库字符集统一改为utf8mb4
  4. D. 提高操作系统swap分区使用比例

48在MySQL主从复制架构中,从库出现Seconds_Behind_Master持续增大且主库写入压力正常,排查时首先应检查的指标是

  1. A. 从库的relay log回放线程是否因大事务或单线程回放而积压
  2. B. 主库的binlog_format是否被设置为ROW
  3. C. 从库的read_only参数是否被关闭
  4. D. 主库的max_connections是否被调小

49某数据库设置为归档模式后,日常全量备份策略为每周一次,为满足任意时间点恢复需求,还需配合哪种机制才能实现

  1. A. 定期导出数据字典
  2. B. 持续归档重做日志并保留
  3. C. 每日重建索引统计信息
  4. D. 定期执行表空间收缩

50在 Linux 上以源码方式安装 MySQL 后,首次初始化数据目录时使用 --initialize-insecure 与 --initialize 的关键区别是

  1. A. 前者不生成 root 密码,后者生成随机临时密码
  2. B. 前者跳过权限表创建,后者正常创建权限表
  3. C. 前者允许 root 空密码远程登录,后者仅本地登录
  4. D. 前者不写 binlog,后者写入初始化日志