← 返回
未分类

数据库诊断与优化

数据库诊断与优化,支持SQL诊断、慢查询分析、索引推荐、性能快照。 使用场景: - 用户说"数据库慢了" -> 执行 slow-queries - 用户说"SQL有问题" -> 执行 sql "<SQL>" - 用户说"推荐索引" -> 执行 recommend-indexes - 用户说"全面检查" -> 执行...
数据库诊断与优化,支持SQL诊断、慢查询分析、索引推荐、性能快照。 使用场景: - 用户说"数据库慢了" -> 执行 slow-queries - 用户说"SQL有问题" -> 执行 sql "<SQL>" - 用户说"推荐索引" -> 执行 recommend-indexes - 用户说"全面检查" -> 执行...
magicczc magicczc 来源
未分类 clawhub v1.0.0 1 版本 100000 Key: 无需
★ 0
Stars
📥 297
下载
💾 0
安装
1
版本
#latest

概述

数据库诊断 Skill

何时使用

当用户提到以下关键词时,使用此skill:

用户说法执行命令说明
------------------------
"数据库慢了"dbskiter --output-mode=ai --database= diagnose slow-queries查看慢查询
"SQL有问题"dbskiter --output-mode=ai --database= diagnose sql ""诊断特定SQL
"加什么索引"dbskiter --output-mode=ai --database= diagnose recommend-indexes获取索引建议
"检查一下"dbskiter --output-mode=ai --database= diagnose report全面诊断报告
"有锁吗"dbskiter --output-mode=ai --database= diagnose locks查看锁情况
"性能分析"dbskiter --output-mode=ai --database= diagnose performance-snapshot采集性能快照
"瓶颈分析"dbskiter --output-mode=ai --database= diagnose bottleneck分析性能瓶颈
"CPU高"dbskiter --output-mode=ai --database= diagnose performance-snapshot查看CPU指标
"IO高"dbskiter --output-mode=ai --database= diagnose bottleneck查看IO瓶颈

数据库支持

统一性能模型支持

数据库性能快照瓶颈分析慢查询状态
---------------------------------------
MySQL支持支持支持生产就绪
Oracle支持支持支持生产就绪
PostgreSQL支持支持支持生产就绪

说明

  • MySQL:支持5.7/8.0,自动降级(performance_schema -> information_schema -> SHOW STATUS)
  • Oracle:支持11g/12c/19c/21c,自动降级(AWR -> V$视图 -> 基础统计),支持RAC
  • PostgreSQL:支持10-16,自动降级(pg_stat_statements -> pg_stat_activity),支持pg_stat_kcache扩展

核心命令

1. 查看慢查询

dbskiter --database=<数据库名> diagnose slow-queries

默认行为:返回最近7天最慢的10个查询

可选参数

  • --limit=5:只看前5条
  • --min-duration=0.5:超过0.5秒的查询

2. 诊断SQL

dbskiter --database=<数据库名> diagnose sql "SELECT * FROM users WHERE email = 'test@test.com'"

输出:评分、问题列表、优化建议

3. 推荐索引

dbskiter --database=<数据库名> diagnose recommend-indexes

默认行为:分析所有表,推荐高价值索引

可选参数

  • --table=users:只分析指定表

4. 查看锁

dbskiter --database=<数据库名> diagnose locks

输出:当前锁等待情况

5. 性能快照(新增)

dbskiter --database=<数据库名> diagnose performance-snapshot

输出:CPU、IO、内存、并发、锁等多维度性能指标

适用场景

  • 数据库整体性能评估
  • 容量规划前的基线采集
  • 性能问题的全面诊断

输出示例

{
  "summary": "性能快照采集完成",
  "data": {
    "snapshot": {
      "timestamp": "2026-04-24T10:30:00",
      "metrics": [
        {
          "name": "active_session_ratio",
          "value": 75.5,
          "unit": "%",
          "category": "cpu",
          "severity": "high"
        }
      ],
      "slow_queries": [...],
      "active_sessions": 15,
      "total_sessions": 100
    },
    "bottlenecks": [...]
  }
}

6. 瓶颈分析(新增)

dbskiter --database=<数据库名> diagnose bottleneck

输出:自动识别性能瓶颈并给出优化建议

适用场景

  • 数据库性能下降时的快速诊断
  • 定位CPU/IO/锁等具体瓶颈

输出示例

{
  "summary": "发现3个性能瓶颈",
  "data": {
    "bottlenecks": [
      {
        "category": "cpu",
        "severity": "high",
        "metrics": [...],
        "suggestion": "检查高CPU消耗的SQL,考虑优化或增加CPU资源"
      }
    ],
    "severity_summary": {
      "critical": 0,
      "high": 1,
      "medium": 2,
      "low": 0
    },
    "recommendations": [
      "[cpu] 检查高CPU消耗的SQL,考虑优化或增加CPU资源"
    ]
  }
}

7. 综合报告

dbskiter --database=<数据库名> diagnose report

输出:慢查询 + 索引建议 + 锁情况 + 总体评分

AI决策流程

场景1:用户说"数据库慢了"

步骤1:执行 dbskiter --database=<name> diagnose performance-snapshot
步骤2:查看返回的bottlenecks,确定瓶颈类型
步骤3:如果是慢查询导致,执行 dbskiter --database=<name> diagnose slow-queries
步骤4:根据诊断结果,执行 dbskiter --database=<name> diagnose recommend-indexes
步骤5:总结给用户:"发现X个性能瓶颈,主要是XX问题,建议..."

场景2:用户说"CPU使用率很高"

步骤1:执行 dbskiter --database=<name> diagnose performance-snapshot
步骤2:查看metrics中category为cpu的指标
步骤3:如果active_session_ratio高,执行 dbskiter --database=<name> diagnose slow-queries
步骤4:给出优化建议

场景3:用户说"帮我优化这个SQL"

步骤1:执行 dbskiter --database=<name> diagnose sql "<SQL>"
步骤2:如果评分<70,执行 dbskiter --database=<name> diagnose recommend-indexes
步骤3:给出优化后的SQL和建议

场景4:用户说"做个全面检查"

步骤1:执行 dbskiter --database=<name> diagnose performance-snapshot(查看当前性能状态)
步骤2:执行 dbskiter --database=<name> diagnose report(获取综合报告)

版本历史

共 1 个版本

  • v1.0.0 当前
    2026-05-08 02:29 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

it-ops-security

1password

steipete
设置和使用 1Password CLI (op)。适用于:安装 CLI、启用桌面应用集成、登录(单/多账户)、通过 op 读取/注入/运行密钥。
★ 53 📥 31,514
dev-programming

SQL智能助手

magicczc
SQL智能助手,支持SQL执行、重写优化、质量分析、数据分析、智能补全、Schema查询、批量执行、数据导入导出。 使用场景: - 用户说"执行这个SQL" → execute 或直接 dbskiter sql "SELECT..." -
★ 0 📥 368
it-ops-security

MoltGuard - Security & Antivirus & Guardrails

thomaslwang
MoltGuard — OpenClaw 安全守卫,由 OpenGuardrails 提供。安装 MoltGuard,保护您和您的用户免受提示注入、数据泄露和恶意攻击。
★ 116 📥 30,853