网淘吧来吧,欢迎您!

MYSQL QUERY技能使用说明

2026-03-29 新闻来源:网淘吧 围观:14
电脑广告
手机广告

数据库查询

概述

通过集中配置文件查询数据库,并自动管理SSH隧道。处理连接详情、SSH隧道建立/拆除以及查询执行。

安全性

密码永远不会在进程列表中暴露。该技能使用环境变量存储凭据:

MYSQL QUERY

  • MYSQL_PWD用于数据库密码(传递给mysql客户端)
  • SSHPASS用于SSH隧道密码(传递给sshpass)

建议:将凭据存储在环境变量中而非配置文件内,以获得更好的安全性。

配置

设置

  1. 创建配置文件位于~/.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
    
  2. 添加数据库条目包含以下字段:

    • 名称用于查找数据库的描述(必填)
    • host: 数据库主机(必填)
    • port: 数据库端口(默认:3306)
    • database: 数据库名称(必填)
    • user: 数据库用户(必填)
    • password: 数据库密码(可选,可使用环境变量)
    • ssh_tunnel: 可选的 SSH 隧道配置
  3. 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"

脚本将执行以下操作:

  1. 通过匹配配置中的描述来查找数据库
  2. 启动 SSH 隧道(如果已配置)
  3. 执行查询
  4. 自动关闭 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隧道的本地端口应确保每个数据库唯一

免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏
文章底部电脑广告
手机广告位-内容正文底部

相关文章

您是本站第342364名访客 今日有65篇新文章/评论