# 1. PITR 的实现,PG 12+ 通过 recovery.signal/standby.signal 进入恢复模式,restore_command 配置在 postgresql.conf? A recovery.signal 触发恢复模式,restore_command 从归档拉取 WAL 重放到目标 ✓ 正确答案 B standby.signal 用于完成一次恢复后立即停止 C restore_command 配置在 recovery.conf 中 D PG12+ 通过 recovery.conf 进入恢复模式
# 2. PostgreSQL 物理备份,pg_basebackup 的应用? A pg_basebackup 无法配合 WAL 归档实现 PITR B pg_basebackup 只能离线备份,需停机 C pg_basebackup 只能备份单张表 D pg_basebackup 在线创建一致性基础备份,不会阻塞正常读写 ✓ 正确答案
# 3. PostgreSQL 逻辑备份,pg_dump 的格式(plain、custom、directory、tar)? A tar 格式默认压缩 B plain 格式支持并行恢复 C custom 和 directory 格式支持 pg_restore 的选择性恢复与并行 ✓ 正确答案 D 所有格式都不能跨版本恢复
# 4. WAL 归档与 PITR 的协同? A 归档 WAL 只用于备库,不用于恢复 B PITR 只需基础备份,无需归档 WAL C WAL 归档与 PITR 无关 D PITR 需要基础备份配合归档 WAL,重放归档可恢复到任意时间点 ✓ 正确答案
# 5. PostgreSQL 备份的实现? A WAL 归档不能用于备份恢复 B 只需逻辑备份即可覆盖所有场景 C 备份完成后无需验证可恢复性 D 生产环境常用物理基础备份配合 WAL 归档实现 PITR,并定期验证恢复 ✓ 正确答案
# 6. pg_stat 系统视图族,pg_stat_activity、pg_stat_user_tables、pg_stat_user_indexes? A pg_stat_activity 查看会话活动,pg_stat_user_indexes 可识别未使用索引 ✓ 正确答案 B pg_stat_user_tables 用于统计索引 C pg_stat_activity 只能查看已提交事务 D 三个视图功能完全相同
# 7. pg_stat_replication 的复制状态监控? A 它显示 walsender 的复制状态,replay_lag 反映备库应用延迟 ✓ 正确答案 B 它只能在备库上查看 C sync_state 只有 sync 一种取值 D 它不包含复制延迟信息
# 8. pg_stat_statements 扩展的安装与查询,SQL 指纹、统计信息? A 它不包含执行时间信息 B 它无需预加载即可使用 C 它只统计当前会话的 SQL D 它按 SQL 指纹聚合统计执行次数与耗时,是性能调优核心工具 ✓ 正确答案
# 9. 分区裁剪(Partition Pruning)的优化? A 分区裁剪与 WHERE 条件无关 B 分区裁剪会扫描所有分区再合并 C 分区裁剪根据分区键条件跳过无关分区,减少扫描量 ✓ 正确答案 D 分区裁剪只对表继承生效,声明式分区无效
# 10. 分区的索引策略,全局索引 vs 局部索引? A PG 分区表采用局部索引,父表索引自动传播到各分区 ✓ 正确答案 B PG 支持跨分区的全局索引 C 分区表无法建索引 D 唯一约束可以不含分区键
# 11. pg_stat_database 的库级指标? A 它不包含连接数信息 B 它只统计单表指标 C 它按数据库提供连接数、事务、缓存命中、死锁等库级指标 ✓ 正确答案 D 它无法评估缓存命中率
# 12. 分区的 ATTACH/DETACH 操作? A DETACH 后分区数据仍属于原分区表 B ATTACH 必须重建整个分区表 C DETACH PARTITION CONCURRENTLY 可在线摘除分区,不阻塞写入 ✓ 正确答案 D 分区操作只能离线执行
# 13. 如何用 pg_stat_archiver 监控 WAL 归档进度与失败(archived_count、failed_count、last_archived_time)? A 归档失败不会影响主库 B 监控 failed_count 与 last_archived_time 可判断归档是否失败或卡住 ✓ 正确答案 C archived_count 表示失败次数 D 归档状态无法监控
# 14. pgBackRest 工具链的应用? A pgBackRest 支持增量/差异备份、压缩加密、归档管理与 PITR ✓ 正确答案 B pgBackRest 只能做全量备份 C pgBackRest 不支持 WAL 归档 D pgBackRest 无法恢复单一时间点
# 15. PostgreSQL 分区表在时间序列数据归档、历史分区 DETACH 转冷存储与保留策略中的应用? A 定期 DETACH 旧分区转冷存储并 DROP 过期分区是常见的保留策略 ✓ 正确答案 B 过期数据只能逐行 DELETE,无法用分区处理 C DETACH 后分区无法独立归档 D 分区表不适用于时间序列数据
# 16. pg_verifybackup 与 pg_checksums 如何验证物理备份与数据文件的完整性? A 两者都只能离线使用 B pg_verifybackup 验证备份清单一致性,pg_checksums 检测数据页静默损坏 ✓ 正确答案 C pg_checksums 无法检测数据损坏 D pg_verifybackup 用于线上数据校验
# 17. pg_stat_bgwriter 与 pg_stat_checkpointer 如何反映 checkpoint 频率与缓冲写回活动? A pg_stat_bgwriter 只统计归档 B checkpoint 频率无法统计 C pg_stat_checkpointer 的 num_timed 与 checkpoint_sync_time 可评估 checkpoint 频率与 fsync 开销 ✓ 正确答案 D checkpoint 与写入性能无关
# 18. pg_stat_wal 的 wal_records/wal_bytes 如何用于评估 WAL 写入量与全页写比例? A wal_fpi 表示逻辑复制记录数 B pg_stat_wal 不包含 WAL 统计数据 C 全页写与 checkpoint 无关 D wal_records/wal_bytes 评估 WAL 写入量,wal_fpi 反映全页写比例 ✓ 正确答案