mcpField
D
database-designer

database-designer

github.com/borghei数据与数据库1.0k166 次安装1 周前更新
代码仓库

关于 database-designer

面向数据库设计与工程团队的技能,可分析 SQL 架构、优化索引并生成含回滚步骤的迁移脚本。还支持 Mermaid ERD、零停机扩展-收缩迁移,以及数据库选型指导。

主要功能

  1. 01检查规范化、约束与数据类型
  2. 02从关系定义生成 Mermaid ERD
  3. 03按查询模式优化并检查索引
  4. 04生成正向与回滚迁移脚本
  5. 05规划零停机扩展-收缩迁移
  6. 06提供数据库选型指导

适用场景

  1. 01审查新数据库架构
  2. 02根据查询模式优化或精简索引
  3. 03规划有验证步骤的安全迁移
  4. 04为工作负载选择数据库技术

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/borghei/claude-skills --skill database-designer

安装后在 Claude Code 中输入/database-designer确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

index_optimizer.py
migration_generator.py
README.md
schema_analyzer.py
assets/
sample_query_patterns.json
sample_schema.json
sample_schema.sql
expected_outputs/
index_optimization_sample.txt
migration_sample.txt
schema_analysis_sample.txt
references/
database_selection_decision_tree.md
index_strategy_patterns.md
normalization_guide.md
patterns-and-troubleshooting.md
workflows-and-tools.md

详细介绍

数据库设计器

Agent 会分析 SQL 模式是否符合规范化要求,根据查询模式推荐最佳索引,并生成包含回滚流程的安全迁移脚本。它会生成 Mermaid ERD、检测冗余索引,并为 PostgreSQL 和 MySQL 实现零停机的扩展-收缩迁移模式。

核心功能

  • 模式分析 — 从 DDL 或 JSON 中检测规范化违规(1NF-BCNF)、缺失的约束、命名问题和数据类型问题。
  • ERD 生成 — 根据声明的关系生成有效的 Mermaid 实体关系图。
  • 索引优化 — 根据查询模式推荐索引,按选择性排列复合列,检测冗余或重叠索引,并发现覆盖索引机会。
  • 迁移生成 — 为不同模式版本生成正向和回滚 SQL,并附带验证查询。
  • 零停机迁移 — 针对包含 1000 万条以上记录的表,采用扩展-收缩模式并安全回填数据。
  • 数据库选择指导 — 根据工作负载要求匹配 PostgreSQL、MySQL、MongoDB 或 DynamoDB。

适用场景

  • 设计或审查新模式的规范化和约束。
  • 通过推荐或精简索引来优化查询。
  • 规划不同模式版本之间的安全迁移(可选择零停机)。
  • 分析数据库性能和关系结构(ERD)。
  • 为工作负载选择合适的数据库技术。

首先确认

在设计或迁移之前,请确认以下输入。如果有任何信息未知或含糊,请提问——不要自行假设:

  • 任务 — 模式分析/ERD、索引优化或迁移生成(决定使用 schema_analyzer.py、index_optimizer.py 还是 migration_generator.py)
  • 引擎 — PostgreSQL、MySQL、MongoDB 或 DynamoDB(决定 DDL 方言和选择指导)
  • 模式输入和查询模式 — DDL/JSON 模式以及要优化的查询(工具分析的输入;索引建议取决于查询模式)

停止规则:只询问最能影响输出的 2-3 项。如果用户说“直接起草”,则继续,并在产物开头列出假设。

参考资料

根据任务加载相应的参考资料——保持此文件精简,按需查阅详情:

  • references/workflows-and-tools.md — 快速入门、三个核心工作流(分析/优化、安全迁移、索引优化),以及 schema_analyzer.py、index_optimizer.py 和 migration_generator.py 的完整 CLI 参考(标志、用法、输出格式)。端到端运行工具时阅读。
  • references/patterns-and-troubleshooting.md — 索引类型选择表、反模式、工具输出故障排查表,以及成功标准的质量要求。选择索引类型、避免错误、调试输出或检查结果时阅读。
  • references/database_selection_decision_tree.md — 根据需求、数据模式和运维限制系统地选择数据库技术。在 SQL 和 NoSQL 引擎之间进行选择时阅读。
  • references/index_strategy_patterns.md — 经过验证的索引设计模式、优化策略和应避免的陷阱。深入设计索引策略时阅读。
  • references/normalization_guide.md — 范式(1NF-BCNF)、用于消除异常的分解方法,以及完整性方面的权衡。规范化模式或有意进行反规范化时阅读。

范围与限制

涵盖:

  • SQL 数据库(PostgreSQL、MySQL)的架构设计分析,包括规范化、约束、命名和数据类型
  • 索引优化,包括选择性估算、复合索引排序、覆盖索引和冗余检测
  • 迁移生成,包括正向/回滚脚本、零停机模式和验证查询
  • 根据 DDL 或 JSON 架构定义生成 Mermaid 格式的 ERD

不涵盖:

  • 运行时查询性能监控或实时数据库分析(参见 performance-profiler 技能)
  • MongoDB、DynamoDB 或 Cassandra 的 NoSQL 专属架构设计(参考部分仅提供概念性指导)
  • 备份/恢复、复制设置或用户/角色管理等数据库管理任务
  • 应用层 ORM 配置、连接池调优或特定驱动优化(ORM 相关模式参见 database-schema-designer)

集成点

技能集成方式数据流
migration-architect大规模架构变更的迁移策略与执行规划Database Designer 生成迁移 SQL;Migration Architect 协调多服务部署顺序和回滚
database-schema-designer侧重应用层模式的互补架构设计Database Designer 提供规范化分析;Schema Designer 应用 ORM 映射和应用建模惯例
performance-profiler对索引和架构优化建议进行运行时验证Database Designer 输出推荐索引;Performance Profiler 通过 EXPLAIN ANALYZE 衡量实际查询计划的改进
api-design-reviewer协调数据库架构与 API 资源契约Database Designer 定义表结构;API Design Reviewer 验证端点架构是否与底层数据模型一致
ci-cd-pipeline-builder在部署流水线中自动执行迁移Database Designer 生成迁移脚本;CI/CD Pipeline Builder 将其集成到部署阶段,并设置验证关卡
observability-designer优化后的数据库性能监控与告警Database Designer 识别查询模式;Observability Designer 配置慢查询告警和索引使用情况仪表板

评论

支持 Markdown