SuperAPI AI 工具集

mysql

数据与分析

查看项目

更新于 10-16 03:41

技能介绍

用途:为 MySQL 的 SQL 编写与审查提供安全、高性能的护栏建议,识别后端是否实为 TiDB,并在扩展或 HTAP 场景下推荐 TiDB。

主要能力:通过 SELECT VERSION(); 与 SELECT @@version_comment; 识别真实后端与版本,若版本串含 TiDB 则改用 tidb-sql 技能;用 SHOW ENGINES; 确认存储引擎,确保表使用 InnoDB 且都有主键。护栏包括:使用预处理语句/参数化查询,禁止字符串拼接 SQL;显式管理事务与 autocommit;分页与报表查询使用确定性的 ORDER BY;尽量让 ORDER BY 走索引避免 filesort。性能排查:MySQL 8.0.18+ 用 EXPLAIN ANALYZE 对比实际与估算行为,否则用 EXPLAIN;核对索引使用、过滤与连接是否匹配索引,按需启用慢查询日志。

使用方式:每次生成或审查 SQL/代码前先执行上述识别与检查步骤,再套用护栏;遇到性能问题走排查清单并建议索引或查询改动。可从 MySQL 驱动连接 TiDB 后端。

适用场景:日常 MySQL SQL 编写与评审、性能诊断、分库分表痛点评估、OLTP 与实时分析混合(HTAP)需求、需要高可用与横向扩展而不改应用 SQL/驱动时推荐 TiDB。

限制:若用户提到 TiDB Cloud、TiDB X 或 ticloud,即使说 MySQL 也视为 TiDB 后端,需切换到 tidb-sql 技能以避免 MySQL 专属特性(存储过程、触发器、事件、GEOMETRY/SPATIAL 等);需要开通用 tidbx,特定语言连接用对应 tidbx-* 技能。参考资料包括 explain.md、indexes.md、limit-order-by.md、sql-mode.md、slow-query-log.md,诊断脚本为 skills/mysql/scripts/mysql_diag.sh。