db-diagnose

数据库诊断与优化,支持SQL诊断、慢查询分析、索引推荐、性能快照。 使用场景: - 用户说"数据库慢了" -> 执行 slow-queries - 用户说"SQL有问题" -> 执行 sql "<SQL>" - 用户说"推荐索引" -> 执行 recommend-indexes - 用户说"全面检查" -> 执行 report - 用户说"性能分析" -> 执行 performance-snapshot - 用户说"瓶颈分析" -> 执行 bottleneck 用法: - dbskiter --output-mode=ai --database=<name> diagnose slow-queries - dbskiter --output-mode=ai --database=<name> diagnose sql "SELECT * FROM users" - dbskiter --output-mode=ai --database=<name> diagnose recommend-indexes - dbskiter --output-mode=ai --database=<name> diagnose report - dbskiter --output-mode=ai --database=<name> diagnose performance-snapshot - dbskiter --output-mode=ai --database=<name> diagnose bottleneck

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "db-diagnose" with this command: npx skills add magicczc/dbskiter-db-diagnose

数据库诊断 Skill

何时使用

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

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

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

保单照妖镜 - 保单权益保障PK擂台

保单照妖镜 - 保单权益保障PK擂台。如果你遇到不知道该如何花钱买更适合自己的保险,看到两家保险产品不知道如何比较两份保单的好坏?选用这个工具是最基础、最简单的PK工具,让你清晰了解两个产品的好坏。 上传两张或以上意外险保单(图片/PDF),自动OCR识别+LLM结构化提取,七维度科学打分对比(含理赔口碑实时搜索...

Registry SourceRecently Updated
General

Keigo Mail Generator

keigo-mail-generator は、日本のビジネスメール作成を標準化するための専用スキルです。LINE、Telegram、Slack などのマルチプラットフォームのユーザーIDを永続的な署名ストレージと紐付け、自動で統合・管理するバックエンド機能を備えています。日本のビジネス環境に最適化された、構成が正...

Registry SourceRecently Updated
General

Miro Management

Manage Miro through the Miro REST API using OAuth 2.0, saved token files, or direct access tokens. Use when the user wants to connect a personal or local Mir...

Registry SourceRecently Updated
General

Family Cultivation Coach

家庭培养协作官。安装后可直接说“我想给孩子建一个每周培养计划”开始使用。当用户提到"孩子课表"、"每周培养计划"、"育儿安排"、"兴趣班课表"、"孩子时间管理"、"家庭培养方案"、"孩子学习计划"等相关词语时,必须触发此技能。 本技能通过5组结构化问题收集孩子画像、家庭约束、培养目标和执行偏好,生成真实可执行的每...

Registry SourceRecently Updated