1️⃣ 前提准备

  • 已安装 Claude Code CLI (claude)
  • 已在 WSL 或 Linux 下配置好 Node.js 和 npx
  • 已创建 Spring Boot 项目,并且有一个开发环境的 MySQL 数据库

2️⃣ 数据库账号和权限设置(安全必做)

不要直接用 root 账号!

假设开发库名为 dev_db,MySQL 命令如下:

CREATE DATABASE dev_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

CREATE USER 'dev_user'@'%' IDENTIFIED BY 'dev_pass';

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER ON dev_db.* TO 'dev_user'@'%';

FLUSH PRIVILEGES;

✅ 注意:

  • 不要授予 DROP DATABASEGRANT 权限
  • 只允许开发库被操作

3️⃣ 在项目里配置 MySQL MCP(project 级别)

切换到 Spring Boot 项目根目录:

cd /mnt/d/projects/my-springboot-app

执行:

claude mcp add mysql -s project \
-e MYSQL_HOST=127.0.0.1 \
-e MYSQL_PORT=3306 \
-e MYSQL_USER=dev_user \
-e MYSQL_PASSWORD=dev_pass \
-e MYSQL_DATABASE=dev_db \
-- npx -y @modelcontextprotocol/server-mysql

-s project 确保 MCP 配置只对当前项目生效

配置成功后,.claude.json 文件里会有类似内容:

{
  "mcpServers": {
    "mysql": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-mysql"],
      "env": {
        "MYSQL_HOST": "127.0.0.1",
        "MYSQL_PORT": "3306",
        "MYSQL_USER": "dev_user",
        "MYSQL_PASSWORD": "dev_pass",
        "MYSQL_DATABASE": "dev_db"
      }
    }
  }
}

4️⃣ Spring Boot 数据源配置(可选)

如果你希望 MCP 操作和 Spring Boot 使用同一个数据库环境,建议使用环境变量:

.bashrc 或项目 .env 中:

export DB_HOST=127.0.0.1
export DB_PORT=3306
export DB_USER=dev_user
export DB_PASS=dev_pass
export DB_NAME=dev_db

application.yml

spring:
  datasource:
    url: jdbc:mysql://${DB_HOST}:${DB_PORT}/${DB_NAME}
    username: ${DB_USER}
    password: ${DB_PASS}

这样 MCP 和 Spring Boot 都能自动连接到 dev 数据库。


5️⃣ 验证 MCP 是否生效

claude mcp list

应该看到类似输出:

mysql: npx -y @modelcontextprotocol/server-mysql - ✓ Running

如果失败,检查:

  • Node.js 代理是否生效
  • 数据库是否能连通
  • .claude.json 是否在项目根目录

6️⃣ Claude 操作数据库示例

进入项目目录:

cd /mnt/d/projects/my-springboot-app
claude

在 Claude CLI 里:

/init

然后就可以让 Claude 生成建表语句、增删改查:

/create table user(id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50), email VARCHAR(100));
/insert into user(name, email) values("FishG", "fishg@example.com");
/select * from user;

MCP 会把这些命令通过 dev_user 连接到 dev_db 执行。


7️⃣ 权限和安全最佳实践

  1. MCP 只连开发库,不连测试或生产
  2. 开发库账号只给必要权限
  3. 日志留存,每次 Claude 执行 SQL 都可以追踪
  4. 如果需要多人开发,每人都可以配置 project 级 MCP,互不干扰

✅ 总结

  • 每个后端项目只需 一个 project 级 MySQL MCP,连开发库即可
  • 环境变量管理数据库连接,保证 Spring Boot 和 MCP 一致
  • 测试 / 生产不要给 MCP 权限
  • 安全权限控制 + 日志追踪
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐