← 中文资源

简体中文版本

慢查询采样

安全维护数据库:分析索引使用,审查查询计划,并在带有已验证回滚路径的前提下应用变更。

阅读英文原文

概述

安全维护数据库:分析索引使用,审查查询计划,并在带有已验证回滚路径的前提下应用变更。本工作流属于数据库运维领域,目标是improve query performance without locking the table or risking a rollback that loses data.以下步骤将指导你完成关键操作,并在每一步设置可验证的中间状态,确保最终结果可复现、可审计、可回滚。

步骤详解

  1. Analyze index usage。 Query the index statistics and identify unused or duplicate indexes and hot tables missing a needed index.预期状态:A report lists unused indexes to drop and missing indexes to add.

  2. Review query plans。 Run EXPLAIN ANALYZE on the top slow queries and confirm they use the expected index without seq scans on large tables.预期状态:Slow queries use an index scan and their cost drops after the change.

  3. Apply with rollback。 Apply the index or migration in a single transaction where possible and keep the forward-rollback commands ready.预期状态:The change applies without a long lock and the rollback command is tested.

每一步都包含明确的动作与预期状态。执行时请记录实际输出,与预期状态逐一对照。若某一步未达预期,应停下排查而非继续推进,避免问题向后传递放大。

验证与后续

验证方法:improve query performance without locking the table or risking a rollback that loses data.完成后,将本次执行的命令、输出与参数归档,并更新团队运行手册。若用于生产环境,请先在预发环境完整演练一次,并确认团队熟悉回滚路径与应急联系人。本工作流难度级别为进阶(intermediate),预计耗时约25分钟。该流程已通过结构化校验,步骤与决策点均与英文版本严格一致,可在本地按工作流步骤复现并核对结果。

代码示例

EXPLAIN (ANALYZE, BUFFERS) SELECT * FROM orders WHERE user_id = $1;