1在Linux环境下安装MySQL 8.0时,若希望数据目录位于独立挂载的/data分区并启用大小写敏感的表名,初始化时应如何设置
- A. 初始化前修改my.cnf设置lower_case_table_names=0并指定datadir=/data/mysql
- B. 初始化时加--lower-case-table-names=0并指定--datadir=/data/mysql
- C. 初始化后通过SET GLOBAL lower_case_table_names=0动态修改再迁移数据目录
- D. 先用默认参数初始化,再把数据目录整体mv到/data/mysql并重启服务
2在数据库性能调优中,下列属于通过减少物理IO来提升查询效率的措施有(多选)
- A. 为高频过滤列建立合适索引
- B. 将热点表数据缓存在内存缓冲池
- C. 对大表频繁执行全表扫描以获取最新数据
- D. 定期重建碎片率过高的索引
- E. 对返回大量行的查询取消排序操作
3MySQL中查询information_schema.tables时发现某表DATA_LENGTH远大于实际行数据量,且删除大量历史数据后空间未释放,最恰当的处置是
- A. 执行OPTIMIZE TABLE回收表空间
- B. 执行ANALYZE TABLE更新统计信息
- C. 执行FLUSH TABLES刷新表缓存
- D. 执行CHECK TABLE检查表完整性
4在Linux服务器上以RPM包安装MySQL 8.0后,需要修改默认字符集为utf8mb4并使其对后续新建库生效,应优先调整哪个配置文件中的参数
- A. /etc/my.cnf 中 [mysqld] 段的 character-set-server
- B. /etc/my.cnf 中 [client] 段的 default-character-set
- C. /usr/share/mysql/my-default.cnf 中的 collation-server
- D. /var/lib/mysql/auto.cnf 中的 server-uuid
5Oracle数据库执行RMAN全量备份后,若要验证备份集是否可正常用于恢复且不实际还原数据文件,应使用哪个命令
- A. RESTORE DATABASE VALIDATE
- B. VALIDATE BACKUP
- C. CROSSCHECK BACKUP
- D. LIST BACKUP SUMMARY
6在Linux服务器上通过源码编译方式安装MySQL后,执行初始化命令时指定--initialize-insecure参数,该参数的作用是什么
- A. 初始化数据目录但不生成root随机密码
- B. 初始化数据目录并强制使用空密码登录
- C. 初始化数据目录同时创建默认测试数据库
- D. 初始化数据目录并跳过权限表加载过程
7在Linux上以源码方式安装MySQL后,首次初始化数据目录时应使用哪个命令生成临时root密码并完成初始化
- A. mysqld --initialize --user=mysql
- B. mysql_install_db --user=mysql
- C. mysqld --init-file=/etc/my.cnf
- D. mysqladmin -u root password
8针对OLTP库的慢查询优化,为某高频等值查询列建立索引后写入性能下降明显,最可能的原因是
- A. 索引维护增加了每次写入的额外开销
- B. 索引把查询计划强制改为全表扫描
- C. 索引导致缓冲池命中率降为零
- D. 索引使事务隔离级别被自动提升
9数据库运行中监控到大量Waiting for table metadata lock,最可能的原因是
- A. 存在未提交的长事务持有该表元数据锁
- B. 磁盘剩余空间不足触发写入阻塞
- C. 缓冲池过小导致页换出频繁
- D. 二进制日志文件数量超过上限
10MongoDB副本集中,某次要节点持续处于RECOVERING状态无法转为SECONDARY,检查oplog发现其落后主节点超过oplog窗口,正确的恢复处置是什么
- A. 对该节点执行rs.syncFrom指定主节点强制同步
- B. 停止该节点清空数据目录后重新加入副本集进行全量同步
- C. 在主节点执行rs.stepDown触发重新选举
- D. 增大该节点oplogSizeMB后重启等待自动追平
11在Linux上安装MySQL 8.0后,希望数据目录使用独立挂载的/data分区并启用二进制日志,下列配置组合最合理的是
- A. datadir=/data/mysql,log-bin=/data/mysql/binlog,并确保/data分区属主为mysql
- B. datadir=/var/lib/mysql,log-bin=/data/binlog,并确保/data分区属主为root
- C. datadir=/data/mysql,log-bin=/var/lib/mysql/binlog,并确保/data分区属主为mysql
- D. datadir=/data/mysql,log-bin=/data/binlog,并确保/data分区属主为root
12某DBA为生产库配置物理备份时,将备份集与数据库数据文件放在同一块物理磁盘上,这种做法最直接的风险是
- A. 备份时锁表时间变长
- B. 磁盘故障导致数据与备份同时丢失
- C. 备份文件校验速度下降
- D. 恢复时无法使用增量备份
13对MySQL执行逻辑备份时,需要保证备份数据与binlog位置一致以支持时间点恢复,mysqldump应搭配哪个参数
- A. --single-transaction --master-data=2
- B. --lock-all-tables --flush-logs
- C. --single-transaction --flush-privileges
- D. --quick --hex-blob --events
14在Linux环境下安装MySQL后,首次启动服务前需要初始化数据目录,以下关于初始化命令与参数配合的描述中正确的是
- A. mysqld --initialize会生成随机root密码并写入错误日志
- B. mysqld --initialize-insecure会生成随机root密码并写入错误日志
- C. mysqld --initialize会创建空密码root账户并允许直接登录
- D. mysqld --initialize-insecure会拒绝启动直到手动设置root密码
15某生产库的innodb_buffer_pool_size配置为物理内存的80%,但监控发现磁盘读IOPS持续偏高,最可能的原因是
- A. 缓冲池仍不足以覆盖热点数据
- B. redo log文件过大
- C. binlog格式为ROW
- D. 表空间使用独立表空间
16在Oracle数据库中,归档模式下执行热备份时对表空间加锁的正确命令是
- A. ALTER TABLESPACE users BEGIN BACKUP
- B. ALTER DATABASE BEGIN BACKUP users
- C. ALTER TABLESPACE users READ ONLY
- D. ALTER DATABASE ARCHIVELOG users
17在Linux服务器上通过源码编译方式安装MySQL后,首次初始化数据目录时,用于生成临时root密码并初始化系统表的命令是哪个
- A. mysqld --initialize --user=mysql
- B. mysql_install_db --user=mysql --random-password
- C. mysqld_safe --skip-grant-tables --initialize
- D. mysqladmin -u root password --initialize
18在Oracle中执行RMAN备份时,希望备份集能够只备份已使用过的数据块以减小备份体积,应启用哪个特性
- A. 备份优化与块变更跟踪配合增量备份
- B. 开启归档模式后执行全库全量备份
- C. 设置控制文件自动备份并保留多份副本
- D. 使用备份集压缩并指定maxpiecesize参数
19某业务要求RPO接近0且允许少量RTO,数据库部署在同城双机房,较合适的方案是
- A. 异步复制加每日全量备份
- B. 半同步复制加定期全量备份
- C. 同步复制加定期全量备份
- D. 逻辑备份加异地增量归档
20某企业要求数据库备份满足RPO接近零,且主库故障时能快速切换,最符合该要求的方案是
- A. 搭建同步复制的主备集群并配置自动故障转移
- B. 每天凌晨做一次全量逻辑备份
- C. 每小时做一次增量物理备份
- D. 每周做一次差异备份并异地存放
21在Linux服务器上完成MySQL 8.0二进制方式安装后,首次启动前需要初始化数据目录,以下初始化命令中能正确设置root密码并生成临时随机密码记录的是
- A. mysqld --initialize --user=mysql
- B. mysqld --initialize-insecure --user=mysql
- C. mysqld --init-file=/tmp/init.sql --user=mysql
- D. mysql_install_db --user=mysql --random-pass
22在对生产库执行xtrabackup全量备份后准备恢复到新实例,恢复前通常需要先执行的操作是
- A. 执行xtrabackup --prepare使备份数据达到一致状态
- B. 执行xtrabackup --copy-back直接覆盖数据目录
- C. 执行FLUSH TABLES WITH READ LOCK锁定原库再恢复
- D. 执行mysqladmin shutdown关闭原实例后再恢复
23在Linux上以源码方式安装MySQL 8.0后,首次初始化数据目录时使用了mysqld --initialize-insecure,与--initialize相比,其直接结果是
- A. root@localhost账户生成随机临时密码并写入错误日志
- B. root@localhost账户密码为空且无需首次登录后强制修改
- C. 初始化过程跳过InnoDB日志文件创建以加快启动
- D. 数据目录权限被自动设置为750且属主为mysql
24某数据库服务器磁盘IO持续接近饱和,慢查询日志显示大量全表扫描,优先考虑的调优措施是
- A. 为高频查询条件字段建立合适索引
- B. 增大InnoDB缓冲池容量
- C. 调整数据库连接池最大连接数
- D. 开启查询缓存减少磁盘读取
25MySQL中某张日志表按天分区,运维发现查询最新一天数据时仍扫描了全部分区,执行计划中partitions列显示所有分区名,最可能的原因是
- A. 分区键与查询条件字段类型不一致导致无法裁剪
- B. 分区表未建立局部索引导致扫描全表
- C. 查询使用了ORDER BY导致优化器放弃分区裁剪
- D. 分区数量超过优化器裁剪上限自动降级
26某OLTP库慢查询日志显示大量查询在等行锁,information_schema.innodb_trx中可见长事务,首先应查看哪个视图定位持锁与被阻塞关系
- A. performance_schema.data_locks与data_lock_waits
- B. information_schema.processlist中的State字段
- C. performance_schema.events_statements_summary_by_digest
- D. information_schema.tables中的AUTO_INCREMENT值
27在PostgreSQL中配置流复制时,主库postgresql.conf中wal_level参数应设置为哪个值才能支持物理复制
- A. replica
- B. minimal
- C. logical
- D. archive
28对数据库执行逻辑备份恢复到测试环境时,发现恢复后部分表数据比生产少,排查备份脚本发现mysqldump未加--single-transaction且备份期间有写入,最合理的解释是
- A. 备份文件被压缩损坏导致丢行
- B. 备份期间并发写入造成表间数据不一致
- C. 恢复时字符集不匹配导致部分行被过滤
- D. 目标库磁盘空间不足导致写入中断
29以下关于数据库索引维护的做法中,正确的有(多选)
- A. 定期检查并重建碎片率过高的索引以提升扫描效率
- B. 对频繁更新的列建立大量索引以加速所有查询
- C. 删除长期未被使用且确认无业务依赖的冗余索引
- D. 在查询条件列上创建索引前先分析该列的选择性
- E. 为每张表的所有列都建立单列索引以保证覆盖
30数据库服务器内存充足但查询响应仍慢,执行计划显示对大表做全表扫描,统计信息最近未更新,下一步最合理的操作是
- A. 直接增加临时表空间大小
- B. 收集该表的统计信息后重新评估计划
- C. 对该表的所有列都建立单列索引
- D. 关闭自动统计信息收集任务