数据库运行管理员 练习卷

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

返回题库 显示答案 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并重启服务

2MySQL中查询information_schema.tables时发现某表DATA_LENGTH远大于实际行数据量,且删除大量历史数据后空间未释放,最恰当的处置是

  1. A. 执行OPTIMIZE TABLE回收表空间
  2. B. 执行ANALYZE TABLE更新统计信息
  3. C. 执行FLUSH TABLES刷新表缓存
  4. D. 执行CHECK TABLE检查表完整性

3Oracle数据库执行RMAN全量备份后,若要验证备份集是否可正常用于恢复且不实际还原数据文件,应使用哪个命令

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

4在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

5数据库运行中监控到大量Waiting for table metadata lock,最可能的原因是

  1. A. 存在未提交的长事务持有该表元数据锁
  2. B. 磁盘剩余空间不足触发写入阻塞
  3. C. 缓冲池过小导致页换出频繁
  4. D. 二进制日志文件数量超过上限

6在Linux上安装MySQL 8.0后,希望数据目录使用独立挂载的/data分区并启用二进制日志,下列配置组合最合理的是

  1. A. datadir=/data/mysql,log-bin=/data/mysql/binlog,并确保/data分区属主为mysql
  2. B. datadir=/var/lib/mysql,log-bin=/data/binlog,并确保/data分区属主为root
  3. C. datadir=/data/mysql,log-bin=/var/lib/mysql/binlog,并确保/data分区属主为mysql
  4. D. datadir=/data/mysql,log-bin=/data/binlog,并确保/data分区属主为root

7对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

8某生产库的innodb_buffer_pool_size配置为物理内存的80%,但监控发现磁盘读IOPS持续偏高,最可能的原因是

  1. A. 缓冲池仍不足以覆盖热点数据
  2. B. redo log文件过大
  3. C. binlog格式为ROW
  4. D. 表空间使用独立表空间

9在Linux服务器上通过源码编译方式安装MySQL后,首次初始化数据目录时,用于生成临时root密码并初始化系统表的命令是哪个

  1. A. mysqld --initialize --user=mysql
  2. B. mysql_install_db --user=mysql --random-password
  3. C. mysqld_safe --skip-grant-tables --initialize
  4. D. mysqladmin -u root password --initialize

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

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

11在Linux服务器上完成MySQL 8.0二进制方式安装后,首次启动前需要初始化数据目录,以下初始化命令中能正确设置root密码并生成临时随机密码记录的是

  1. A. mysqld --initialize --user=mysql
  2. B. mysqld --initialize-insecure --user=mysql
  3. C. mysqld --init-file=/tmp/init.sql --user=mysql
  4. D. mysql_install_db --user=mysql --random-pass

12在Linux上以源码方式安装MySQL 8.0后,首次初始化数据目录时使用了mysqld --initialize-insecure,与--initialize相比,其直接结果是

  1. A. root@localhost账户生成随机临时密码并写入错误日志
  2. B. root@localhost账户密码为空且无需首次登录后强制修改
  3. C. 初始化过程跳过InnoDB日志文件创建以加快启动
  4. D. 数据目录权限被自动设置为750且属主为mysql

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

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

14在PostgreSQL中配置流复制时,主库postgresql.conf中wal_level参数应设置为哪个值才能支持物理复制

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

15以下关于数据库索引维护的做法中,正确的有(多选)

  1. A. 定期检查并重建碎片率过高的索引以提升扫描效率
  2. B. 对频繁更新的列建立大量索引以加速所有查询
  3. C. 删除长期未被使用且确认无业务依赖的冗余索引
  4. D. 在查询条件列上创建索引前先分析该列的选择性
  5. E. 为每张表的所有列都建立单列索引以保证覆盖