MySQL 连接与查询
SkillDatabases & dataConnect to MySQL and run read-only queries to inspect table data. Use when the user wants to query MySQL, show tables, view table contents, check schema, or run read-only SQL. Connection info must be provided by the user; do not read from environment or application config.
Use MySQL 连接与查询 in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add MySQL 连接与查询 and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the MySQL 连接与查询 skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; ahel provides instructions and does not run this skill.
No other account needed.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
What this skill tells your AI
The instructions your AI receives, as published by hashgraph-online/awesome-codex-plugins in plugins/Colin4k1024/tsp/skills/mysql-query/SKILL.md and read by ahel’s review.
何时使用
- 用户要求查询 MySQL、查询数据库里一共有哪些表、查看某张表数据、统计条数、检查表结构
- 必须由用户提供连接信息(host、port、user、password、database),不得从环境变量或 application.yml 读取
连接信息:必须由用户提供
- 禁止从
application.yml、application-*.yml、环境变量、.env等读取 MySQL 连接信息。 - 调用脚本或写代码时,必须使用用户本次提供的:host、port、user、password、database。
- 若用户未提供完整连接信息,应提示用户补全后再执行。
执行合同
适用前提
- 任务目标是只读查询、验数、查结构或排障取数,而不是写库或迁移。
- 用户已经在本次对话中提供了完整连接信息;若未提供完整信息,本 skill 只能停在待补充状态。
任务变量
host、port、user、password、database:全部必须来自用户当次提供。sql:本次准备执行的只读 SQL。<skill_dir>:当前安装环境中的mysql-query技能目录,用于定位脚本。
变量来源
- 所有连接变量只能来自用户消息、当前任务单或上游
/handoff中明确给出的数据库连接信息。 - 不允许从仓库配置、环境变量、历史默认值或示例命令中推断真实密码。
<skill_dir>为当前 skill 安装目录,由运行环境解析,不需要用户提供。- 若 SQL 语义不明确,应先把查询目标写清楚再执行,避免误查大表。
执行入口
- 先确认 SQL 是只读语句,并按需补
LIMIT。 - 优先使用当前 skill 的脚本执行,除非用户明确要求别的方式。
- 若连接信息不完整或只读边界不清晰,先停在
待确认项,不要私自补全。 - 不把密码写入仓库、脚本文件或长期日志。
输出回落
- 查询结果应按当前任务目标回落到
/team-execute、/team-review或/handoff的证据区,而不是只停留在终端输出。 - 若查询用于发布验证或数据核对,需在
/team-release或/team-review中注明表、条件、时间点和结论。 - 用户提供的连接信息只在本次任务内使用,不进入文档存档。
执行查询
使用脚本(推荐)
使用 python3,依赖:pip3 install pymysql。路径示例:<skill_dir>/scripts/query.py,其中 <skill_dir> 为当前安装环境里的 mysql-query 技能目录。
参数(均由用户提供):
--host:MySQL 主机(必填)--port:端口(可选,默认 3306)--user:用户名(必填)--password:密码(必填)--database:数据库名(必填)--sql:SELECT 语句(必填,或通过 stdin 传入)
# 用户提供连接信息后,按下列方式调用
python3 <skill_dir>/scripts/query.py \
--host 127.0.0.1 \
--port 3306 \
--user myuser \
--password '用户提供的密码' \
--database mydb \
--sql "SELECT * FROM users LIMIT 10"
# 从标准输入传 SQL
echo "SELECT id, name FROM products LIMIT 5" | python3 <skill_dir>/scripts/query.py \
--host 127.0.0.1 --port 3306 --user myuser --password 'xxx' --database mydb
脚本会:
- 只执行 read-only 类型的 SQL 语句(非 read-only 会报错退出)
- 将结果以表格形式打印到 stdout
内联代码时
若在项目内写一次性脚本,连接参数也必须来自用户当次提供的变量或输入,不要从 application.yml 或 os.environ 读取。
import pymysql
# 使用用户提供的变量(例如从 API 入参、用户输入传入)
host = user_provided_host
port = user_provided_port
user = user_provided_user
password = user_provided_password
database = user_provided_database
conn = pymysql.connect(host=host, port=port, user=user, password=password, database=database, charset="utf8mb4")
# ...
安全与约定
- 默认只做只读:未明确要求时不执行写操作或 DDL。
- LIMIT:对未知大表查询时建议加
LIMIT。 - 敏感信息:不把用户提供的密码写进仓库或日志;仅在当次请求中使用。
常见场景
| 用户需求 | 做法 |
|---|---|
| 看某张表前 N 条 | SELECT * FROM table_name LIMIT 20 |
| 查表结构 | DESCRIBE table_name 或 SHOW CREATE TABLE table_name |
| 统计行数 | SELECT COUNT(*) FROM table_name |
| 按条件查 | 用 WHERE,必要时加 LIMIT |
Overview
连接 MySQL 执行只读查询,支持查看表列表、表结构、表数据和聚合统计。连接信息(host/port/user/password/database)必须由用户在本次对话中提供,禁止从配置文件或环境变量读取。
本 skill 只执行只读 SQL,不执行 INSERT / UPDATE / DELETE 等写操作。
Signals
- GitHub stars
- 1k
- Forks
- 316
- Last commit
- Oct 2026
ahel review
K1binfo
installs-packagesK1binfo
installs-packages (in scripts/query.py)
Automated review, not a security audit. Ruleset v1+k2.
Advanced
- Item type
- skill
- Key
mysql-query- Source
- github.com/hashgraph-online/awesome-codex-plugins
github.com/hashgraph-online/awesome-codex-plugins
Related picks
Skill · wshobson
The pick for Pythonpython-pro
Skill · jeffallan
The pick for Pythonmysql-patterns
Skill · affaan-m
The pick for MySQLmysql
Skill · bagelhole
The pick for MySQLanalytics
Skill · coreyhaines31
More in Databases & datasupabase
Skill · supabase
More in Databases & data