MYSQL QUERY技能使用说明
2026-03-29
新闻来源:网淘吧
围观:10
电脑广告
手机广告
数据库查询
概述
通过集中配置文件查询数据库,并自动管理SSH隧道。处理连接详情、SSH隧道建立/拆除以及查询执行。
安全性
密码永远不会在进程列表中暴露。该技能使用环境变量存储凭据:

MYSQL_PWD用于数据库密码(传递给mysql客户端)SSHPASS用于SSH隧道密码(传递给sshpass)
建议:将凭据存储在环境变量中而非配置文件内,以获得更好的安全性。
配置
设置
-
创建配置文件位于
~/.config/clawdbot/db-config.json:mkdir -p ~/.config/clawdbot # Copy example config and edit cp /usr/lib/node_modules/clawdbot/skills/db-query/scripts/config.example.json ~/.config/clawdbot/db-config.json -
添加数据库条目包含以下字段:
名称用于查找数据库的描述(必填)host: 数据库主机(必填)port: 数据库端口(默认:3306)database: 数据库名称(必填)user: 数据库用户(必填)password: 数据库密码(可选,可使用环境变量)ssh_tunnel: 可选的 SSH 隧道配置
-
SSH 隧道配置(如需要):
enabled: 启用/禁用ssh_host: 远程 SSH 主机ssh_user: SSH 用户名ssh_port: SSH 端口(默认:22)local_port要转发的本地端口(例如:3307)remote_host:SSH 隧道后的远程数据库主机(默认:localhost)remote_port:远程数据库端口(默认:3306)
环境变量(推荐)
建议使用环境变量,而非将密码存储在配置文件中:
# Format: DB_PASSWORD_<DATABASE_NAME> (spaces replaced with underscores, uppercase)
export DB_PASSWORD_PRODUCTION_USER_DB="your_db_password"
# Format: SSH_PASSWORD_<DATABASE_NAME> for SSH tunnel password
export SSH_PASSWORD_PRODUCTION_USER_DB="your_ssh_password"
配置示例
{
"databases": [
{
"name": "Production User DB",
"host": "localhost",
"port": 3306,
"database": "user_db",
"user": "db_user",
"password": "",
"ssh_tunnel": {
"enabled": true,
"ssh_host": "prod.example.com",
"ssh_user": "deploy",
"local_port": 3307
}
}
]
}
设置环境变量(推荐):
export DB_PASSWORD_PRODUCTION_USER_DB="your_db_password"
export SSH_PASSWORD_PRODUCTION_USER_DB="your_ssh_password"
使用方法
列出数据库
python3 /usr/lib/node_modules/clawdbot/skills/db-query/scripts/db_query.py --list
查询数据库
python3 /usr/lib/node_modules/clawdbot/skills/db-query/scripts/db_query.py \
--database "Production User DB" \
--query "SELECT * FROM users LIMIT 10"
脚本将执行以下操作:
- 通过匹配配置中的描述来查找数据库
- 启动 SSH 隧道(如果已配置)
- 执行查询
- 自动关闭 SSH 隧道(对于清理工作很重要)
使用自定义配置路径
python3 /usr/lib/node_modules/clawdbot/skills/db-query/scripts/db_query.py \
--config /path/to/custom-config.json \
--database "test" \
--query "SHOW TABLES"
系统要求
- MySQL 客户端:
apt install mysql-client或等效 - SSH客户端:通常在Linux/Mac系统上已预装
- Python 3.6+
注意事项
- 查询执行后,SSH隧道会自动关闭
- 使用
--list命令可查看所有已配置的数据库及其描述 - 数据库搜索基于
名称字段进行不区分大小写的部分匹配 - SSH隧道的本地端口应确保每个数据库唯一
文章底部电脑广告
手机广告位-内容正文底部
上一篇:AIsa Twitter API技能使用说明
下一篇:Python技能使用说明


微信扫一扫,打赏作者吧~