Expert support for MySQL schema design, query optimization, and transaction management.
Install
mkdir -p .claude/skills/mysql && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/17535" && unzip -o skill.zip -d .claude/skills/mysql && rm skill.zipInstalls to .claude/skills/mysql
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Plan and review MySQL/InnoDB schema, indexing, query tuning, transactions, and operations. Use when creating or modifying MySQL tables, indexes, or queries; diagnosing slow/locking behavior; planning migrations; or troubleshooting replication and connection issues. Load when using a MySQL database.Key capabilities
- →Plan and review MySQL/InnoDB schema designs
- →Optimize indexing strategies for performance
- →Tune SQL queries using `EXPLAIN` and `EXPLAIN ANALYZE`
- →Manage transactions and locking behavior
- →Plan table migrations and partitioning strategies
- →Troubleshoot replication and connection issues
How it works
This skill provides best practices and workflows for MySQL/InnoDB, covering schema design, indexing, query tuning, transactions, and operations. It emphasizes evidence-based validation and safe changes.
Inputs & outputs
When to use mysql
- →Optimize SQL queries
- →Plan table migrations
- →Design indexing strategy
- →Troubleshoot locking
About this skill
MySQL
Use this skill to make safe, measurable MySQL/InnoDB changes.
Workflow
- Define workload and constraints (read/write mix, latency target, data volume, MySQL version, hosting platform).
- Read only the relevant reference files linked in each section below.
- Propose the smallest change that can solve the problem, including trade-offs.
- Validate with evidence (
EXPLAIN,EXPLAIN ANALYZE, lock/connection metrics, and production-safe rollout steps). - For production changes, include rollback and post-deploy verification.
Schema Design
- Prefer narrow, monotonic PKs (
BIGINT UNSIGNED AUTO_INCREMENT) for write-heavy OLTP tables. - Avoid random UUID values as clustered PKs; if external IDs are required, keep UUID in a secondary unique column.
- Always
utf8mb4/utf8mb4_0900_ai_ci. PreferNOT NULL,DATETIMEoverTIMESTAMP. - Lookup tables over
ENUM. Normalize to 3NF; denormalize only for measured hot paths.
References:
Indexing
- Composite order: equality first, then range/sort (leftmost prefix rule).
- Range predicates stop index usage for subsequent columns.
- Secondary indexes include PK implicitly. Prefix indexes for long strings.
- Audit via
performance_schema— drop indexes withcount_read = 0.
References:
Partitioning
- Partition time-series (>50M rows) or large tables (>100M rows). Plan early — retrofit = full rebuild.
- Include partition column in every unique/PK. Always add a
MAXVALUEcatch-all.
References:
Query Optimization
- Check
EXPLAIN— red flags:type: ALL,Using filesort,Using temporary. - Cursor pagination, not
OFFSET. Avoid functions on indexed columns inWHERE. - Batch inserts (500–5000 rows).
UNION ALLoverUNIONwhen dedup unnecessary.
References:
Transactions & Locking
- Default:
REPEATABLE READ(gap locks). UseREAD COMMITTEDfor high contention. - Consistent row access order prevents deadlocks. Retry error 1213 with backoff.
- Do I/O outside transactions. Use
SELECT ... FOR UPDATEsparingly.
References:
Operations
- Use online DDL (
ALGORITHM=INPLACE) when possible; test on replicas first. - Tune connection pooling — avoid
max_connectionsexhaustion under load. - Monitor replication lag; avoid stale reads from replicas during writes.
References:
Guardrails
- Prefer measured evidence over blanket rules of thumb.
- Note MySQL-version-specific behavior when giving advice.
- Ask for explicit human approval before destructive data operations (drops/deletes/truncates).
When not to use it
- →When working with database systems other than MySQL/InnoDB
- →When performing destructive data operations (drops/deletes/truncates) without explicit human approval
Limitations
- →Specific to MySQL/InnoDB databases
- →Requires explicit human approval for destructive data operations
- →Advice is based on measured evidence rather than blanket rules
How it compares
This skill offers a structured, evidence-based approach to MySQL changes, including validation with `EXPLAIN` and rollback plans, which is more reliable than applying general database advice.
Compared to similar skills
mysql side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| mysql (this skill) | 0 | 5mo | No flags | Advanced |
| sql-optimization-patterns | 64 | 2mo | No flags | Advanced |
| redis-inspect | 6 | 6mo | Review | Beginner |
| supabase-postgres-best-practices | 4 | 6mo | No flags | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
sql-optimization-patterns
wshobson
Master SQL query optimization, indexing strategies, and EXPLAIN analysis to dramatically improve database performance and eliminate slow queries. Use when debugging slow queries, designing database schemas, or optimizing application performance.
redis-inspect
civitai
Inspect Redis cache keys, values, and TTLs for debugging. Supports both main cache and system cache. Use for debugging cache issues, checking cached values, and monitoring cache state. Read-only by default.
supabase-postgres-best-practices
davila7
Postgres performance optimization and best practices from Supabase. Use this skill when writing, reviewing, or optimizing Postgres queries, schema designs, or database configurations.
supabase-performance-tuning
jeremylongshore
Optimize Supabase API performance with caching, batching, and connection pooling. Use when experiencing slow API responses, implementing caching strategies, or optimizing request throughput for Supabase integrations. Trigger with phrases like "supabase performance", "optimize supabase", "supabase latency", "supabase caching", "supabase slow", "supabase batch".
batch-processing
dadbodgeoff
Collect-then-batch pattern for database operations achieving 30-40% throughput improvement. Includes graceful fallback to sequential processing when batch operations fail.
analyzing-query-performance
jeremylongshore
Execute use when you need to work with query optimization. This skill provides query performance analysis with comprehensive guidance and automation. Trigger with phrases like "optimize queries", "analyze performance", or "improve query speed".