Claude Code 连 MySQL:保姆级教程

Claude Code 连 MySQL:保姆级教程 🐣

本教程专治"数据库配置恐惧症",手把手教你让 Claude Code 和 MySQL 牵手成功 💑


这是啥玩意儿?

想象一下:你有个超级聪明的 AI 助手(Claude Code),但它是个"宅男",只会写代码,不会出门看数据库。

这时候来了个"媒婆"------mcp-server-mysql,它负责把 Claude Code 介绍给 MySQL,让它们能互相聊天 💬

简单说:装了这个,Claude Code 就能直接帮你查数据库了!


先准备啥?

  1. MySQL 数据库 - 就是你要查的那个库,得先有
  2. Claude Code - 已经装好的 AI 助手
  3. 一根网线(或者 WiFi)- 确保能连上数据库

开始安装!

第一步:装"媒婆"

打开终端,输入:

bash 复制代码
npm install -g @benborla29/mcp-server-mysql

这就像给媒婆办个上岗证,让它能开始工作 🎫


配置方法:两条路选一条

🛣️ 方法一:命令行(懒人首选)

一行命令搞定,复制粘贴就行:

bash 复制代码
claude mcp add mysql-local \
  -e MYSQL_HOST="127.0.0.1" \
  -e MYSQL_PORT="3306" \
  -e MYSQL_USER="root" \
  -e MYSQL_PASS="你的密码" \
  -e MYSQL_DB="你的数据库" \
  -- npx @benborla29/mcp-server-mysql

注意: 把"你的密码"和"你的数据库"换成你自己的!


🛣️ 方法二:改配置文件(强迫症最爱)

找到这个文件:~/.claude.json(在你的用户目录下)

打开它,加上这段:

json 复制代码
{
  "mcpServers": {
    "mysql-test": {
      "command": "npx",
      "args": ["@benborla29/mcp-server-mysql"],
      "env": {
        "MYSQL_HOST": "127.0.0.1",
        "MYSQL_PORT": "3306",
        "MYSQL_USER": "你的用户名",
        "MYSQL_PASS": "你的密码",
        "MYSQL_DB": "你的数据库"
      }
    }
  }
}

就像填相亲表格:

  • MYSQL_HOST = 对方住哪(数据库地址)
  • MYSQL_USER = 你叫啥名字(用户名)
  • MYSQL_PASS = 你的暗号(密码)
  • MYSQL_DB = 去哪个房间(数据库名)

配置好之后咋用?

重启 Claude Code

就像手机装了新 App 要重启一样,关掉 Claude Code 再打开。

验证一下

输入命令看看媒婆上岗了没:

bash 复制代码
claude mcp list

看到 connected 就是上岗成功了 ✅


实战演示:问问数据库

场景一:查数据

复制代码
你: 查一下产品线二级申请单表的前10条数据

Claude: [掏出小本本,连线数据库...]

┌─────┬──────────┬─────────────────────────────┬─────────┐
│ ID  │ 申请单号 │         申请标题            │ 状态    │
├─────┼──────────┼─────────────────────────────┼─────────┤
│ 1   │ EJ202... │ 产品线二级申请_检测产品线    │ APPROV..│
│ 2   │ EJ202... │ 产品线二级申请_IBG产品线     │ APPROV..│
...

场景二:问表结构

复制代码
你: orders 表有哪些字段?

Claude: orders 表有这些字段:
- id (主键)
- user_id (用户ID)
- amount (金额)
- created_at (创建时间)
...

进阶:连多个数据库 💼

如果你有好几个数据库(比如测试库、生产库),就像有好几个相亲对象...

配置多个"媒婆"

json 复制代码
{
  "mcpServers": {
    "mysql-test": {
      "command": "npx",
      "args": ["@benborla29/mcp-server-mysql"],
      "env": {
        "MYSQL_HOST": "127.0.0.1",
        "MYSQL_DB": "test_db",
        "MYSQL_USER": "root",
        "MYSQL_PASS": "test密码"
      }
    },
    "mysql-uat": {
      "command": "npx",
      "args": ["@benborla29/mcp-server-mysql"],
      "env": {
        "MYSQL_HOST": "192.168.1.100",
        "MYSQL_DB": "uat_db",
        "MYSQL_USER": "admin",
        "MYSQL_PASS": "uat密码"
      }
    }
  }
}

怎么指定用哪个?

复制代码
你: 用 mysql-test 查一下用户表

Claude: [切换到测试库,开始查询...]

你: 在 mysql-uat 里看看今天的订单

Claude: [切换到 UAT 库,开始查询...]

就像点名: "媒婆 A 去帮我问一下数据库甲..."


安全小贴士 🛡️

默认是"只读模式"

新装的媒婆默认只能"看",不能"改"。

这是为了防止手滑删库跑路 😱

想要写数据怎么办?

加上这些"通行证":

json 复制代码
{
  "env": {
    ...
    "ALLOW_INSERT_OPERATION": "true",   // 允许插入
    "ALLOW_UPDATE_OPERATION": "true",   // 允许更新
    "ALLOW_DELETE_OPERATION": "true"    // 允许删除(慎用!)
  }
}

警告: 开了 DELETE 就像给了媒婆一把剪刀,用之前想清楚!


远程数据库怎么连?🛰️

数据库在远方服务器?用 SSH 隧道当"传送门":

json 复制代码
{
  "env": {
    "MYSQL_HOST": "127.0.0.1",
    "MYSQL_USER": "db_user",
    "MYSQL_PASS": "db密码",
    "MYSQL_DB": "remote_db",
    "SSH_HOST": "跳板机地址",
    "SSH_USER": "ssh用户",
    "SSH_PASS": "ssh密码"
  }
}

就像先坐公交(SSH)到跳板机,再换乘地铁到数据库 🚌➡️🚇


常见问题(踩坑指南)

❓ 连不上数据库?

检查清单:

  1. 数据库开机了吗? 🖥️
  2. 用户名密码对吗? 🔐
  3. 数据库名字拼写对吗? ✍️
  4. 网络通吗? 🌐
  5. 防火墙拦着吗? 🔥

❓ 写数据报错?

检查有没有加 ALLOW_xxx_OPERATION="true"

❓ 工具找不到?

运行 claude mcp list 看看媒婆上岗了没

❓ 配置改了不生效?

重启 Claude Code!就像手机装新 App 要重启一样。


总结:一句话版

装 mcp-server-mysql → 配连接信息 → 重启 Claude Code → 问数据库啥都行!


相关链接


祝你早日让 Claude Code 和数据库幸福牵手!🎉

相关推荐
HalvmånEver1 小时前
MySQL的内置函数
linux·数据库·学习·mysql
一条水里的鱼1 小时前
把本地 skill 注册到 Claude Code Plugin 的完整流程
claude code
小松加哲2 小时前
服务器LVM磁盘内部空闲空间无损扩容+挂载原理+MySQL Binlog自动清理完整实操
运维·mysql·服务器扩容
IT界的老黄牛2 小时前
MySQL 磁盘告警 1.2TB:从衣柜原理到 gh-ost 卧底,一次释放 540GB 的实战复盘
运维·数据库·mysql
deviant-ART2 小时前
MySQL 实战:如何根据 ID 将表 B 的字段更新到表 A
数据库·mysql
qq_283720052 小时前
高并发场景下 Python+MySQL 性能优化最佳实践
python·mysql·性能优化
@小柯555m2 小时前
MySql(基础操作符--用where过滤空值练习)
数据库·sql·mysql
极创信息3 小时前
信创领域五种主流CPU架构(X86 / ARM / RISC-V / MIPS / LoongArch)
java·arm开发·数据库·spring boot·mysql·软件工程·risc-v
小肝一下3 小时前
3. 数据类型
android·数据库·mysql·adb