# 后端切换到 MySQL 8.0 实施记录

## 变更背景

- 变更日期：2026-03-27
- 目标：将后端开发环境数据库从 `116.62.17.81:3306/ccdi` 切换到 `116.62.17.81:3307/ccdi`
- 原因：`3307` 实例已完成 MySQL 8.0 数据迁移，需要让后端默认连接 MySQL 8.0

## 变更内容

### 配置调整

- 修改 `ruoyi-admin/src/main/resources/application-dev.yml`
- 将 `spring.datasource.druid.master.url` 从：

```text
jdbc:mysql://116.62.17.81:3306/ccdi...
```

- 调整为：

```text
jdbc:mysql://116.62.17.81:3307/ccdi...
```

### 影响范围

- `application.yml` 当前激活 profile 为 `dev`，因此后端默认启动将直接连接 MySQL 8.0
- `bin/mysql_utf8_exec.sh` 会读取 `application-dev.yml`，后续通过该脚本执行 SQL 也将默认落到 `3307`

## 验证方式

1. 使用 MySQL 客户端确认 `116.62.17.81:3307/ccdi` 可正常访问。
2. 重新打包后端：

```bash
mvn -pl ruoyi-admin -am package -DskipTests
```

3. 使用独立测试端口启动后端：

```bash
java -jar ruoyi-admin/target/ruoyi-admin.jar --server.port=62319
```

4. 访问 `http://127.0.0.1:62319/swagger-ui.html`，确认服务启动成功。
5. 调用真实登录接口验证数据库读写链路：

```bash
curl -s -X POST 'http://127.0.0.1:62319/login/test' \
  -H 'Content-Type: application/json' \
  -d '{"username":"admin","password":"admin123"}'
```

6. 验证完成后关闭测试过程中启动的后端进程。

## 验证结果

- 配置已切换到 `3307`
- `mvn -pl ruoyi-admin -am package -DskipTests` 执行成功
- 后端在 `62319` 端口启动成功，日志中 `DruidDataSource` 初始化完成，Spring Boot 正常启动
- `swagger-ui.html` 可访问，HTTP 状态为 `302`
- `POST /login/test` 返回：

```json
{"msg":"操作成功","code":200,"token":"<JWT>"}
```

- 启动日志可见 `sys_user` 查询、登录信息更新与登录日志写入，说明后端已通过 MySQL 8.0 执行真实数据库读写
- 测试进程已在验证后关闭
