数
数据库性能调试
作者:鹿Sir开发工具v3
通过查询分析、索引优化和执行计划审查诊断数据库性能问题,识别并修复慢查询。当用户需要排查慢查询、优化数据库性能、分析执行计划或进行索引优化时触发。触发词:慢查询、索引优化、执行计划、数据库调优。
下载量
249
点赞
63
价格
免费
技能文档
--- name: aj-geddes-database-performance-debugging title: 数据库性能调试 category: 开发工具 description: 通过查询分析、索引优化和执行计划审查诊断数据库性能问题,识别并修复慢查询。当用户需要排查慢查询、优化数据库性能、分析执行计划或进行索引优化时触发。触发词:慢查询、索引优化、执行计划、数据库调优。 --- # 数据库性能调试 通过查询分析、索引优化和执行计划审查诊断数据库性能问题,识别并修复慢查询。 ## 目录 - [概述](#概述) - [适用场景](#适用场景) - [快速入门](#快速入门) - [参考指南](#参考指南) - [最佳实践](#最佳实践) ## 概述 数据库性能问题直接影响应用响应速度。调试工作侧重于识别慢查询并优化执行计划。 ## 适用场景 - 应用响应时间缓慢 - 数据库CPU占用过高 - 已识别到慢查询 - 性能回退 - 负载压力测试 ## 快速入门 最小可用示例: ```sql -- Enable slow query log (MySQL) SET GLOBAL slow_query_log = 'ON'; SET GLOBAL long_query_time = 0.5; -- View slow queries SHOW GLOBAL STATUS LIKE 'Slow_queries'; SELECT * FROM mysql.slow_log; -- PostgreSQL slow queries CREATE EXTENSION pg_stat_statements; SELECT mean_exec_time, calls, query FROM pg_stat_statements ORDER BY mean_exec_time DESC LIMIT 10; -- SQL Server slow queries SELECT TOP 10 execution_count, total_elapsed_time, statement_text FROM sys.dm_exec_query_stats ORDER BY total_elapsed_time DESC; -- Query profiling EXPLAIN ANALYZE SELECT * FROM orders WHERE user_id = 123; // ... (see reference guides for full implementation) ``` ## 参考指南 详细实现请参考 `references/` 目录: | 指南 | 内容 | |---|---| | [识别慢查询](references/identify-slow-queries.md) | 识别慢查询 | | [常见问题与解决方案](references/common-issues-solutions.md) | 常见问题与解决方案 | | [执行计划分析](references/execution-plan-analysis.md) | 执行计划分析 | | [调试流程](references/debugging-process.md) | 调试流程 | ## 最佳实践 ### 推荐做法 - 遵循已建立的模式和规范 - 编写清晰、可维护的代码 - 添加适当的文档 - 部署前充分测试 ### 避免做法 - 跳过测试或验证 - 忽略错误处理 - 硬编码配置值
使用说明
# 数据库性能调试 通过查询分析、索引优化和执行计划审查诊断数据库性能问题,识别并修复慢查询。 ## 适用场景 - 应用响应时间缓慢,怀疑数据库性能瓶颈 - 数据库CPU占用过高需要排查 - 已识别到慢查询需要优化 - 系统出现性能回退需要定位原因 ## 快速入门 ```sql -- 启用慢查询日志 (MySQL) SET GLOBAL slow_query_log = 'ON'; SET GLOBAL long_query_time = 0.5; -- 查看慢查询 SHOW GLOBAL STATUS LIKE 'Slow_queries'; -- PostgreSQL 慢查询分析 CREATE EXTENSION pg_stat_statements; SELECT mean_exec_time, calls, query FROM pg_stat_statements ORDER BY mean_exec_time DESC LIMIT 10; -- 查询执行计划分析 EXPLAIN ANALYZE SELECT * FROM orders WHERE user_id = 123; ``` ## 参考指南 | 指南 | 内容 | |---|---| | 识别慢查询 | 定位和分析慢查询 | | 常见问题与解决方案 | 常见性能问题及对应方案 | | 执行计划分析 | 解读和优化执行计划 | | 调试流程 | 完整的性能调试流程 | ## 注意事项 - 遵循已建立的模式和规范 - 部署前充分测试查询性能 - 避免硬编码配置值 - 不要跳过错误处理
支持平台:Qoder · QoderWork · Claude · Codex 等 AI 编程助手