40 lines
1.4 KiB
Markdown
40 lines
1.4 KiB
Markdown
|
|
# CCDI 数据库默认排序规则修复实施计划
|
||
|
|
|
||
|
|
## 保存路径确认
|
||
|
|
|
||
|
|
- 路径:`docs/plans/backend/2026-04-22-ccdi-database-default-collation-backend-implementation.md`
|
||
|
|
- 归类:后端实施计划
|
||
|
|
|
||
|
|
## 目标
|
||
|
|
|
||
|
|
- 将 `ccdi` 数据库默认字符集统一为 `utf8mb4`
|
||
|
|
- 将 `ccdi` 数据库默认排序规则统一为 `utf8mb4_general_ci`
|
||
|
|
|
||
|
|
## 背景
|
||
|
|
|
||
|
|
- 当前 `ccdi` 数据库默认排序规则为 `utf8mb4_unicode_ci`。
|
||
|
|
- 仓库数据库规范要求业务库默认排序规则统一为 `utf8mb4_general_ci`,避免新建表或新增字符字段继续继承错误默认值。
|
||
|
|
|
||
|
|
## 实施步骤
|
||
|
|
|
||
|
|
1. 新增数据库增量脚本,执行 `ALTER DATABASE ccdi CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci`。
|
||
|
|
2. 使用 `bin/mysql_utf8_exec.sh` 在当前开发库执行脚本。
|
||
|
|
3. 查询 `information_schema.SCHEMATA` 回查默认字符集与默认排序规则是否生效。
|
||
|
|
4. 补充实施记录,说明变更范围与验证结果。
|
||
|
|
|
||
|
|
## 验证命令
|
||
|
|
|
||
|
|
```bash
|
||
|
|
bin/mysql_utf8_exec.sh sql/migration/2026-04-22-fix-ccdi-database-default-collation.sql
|
||
|
|
```
|
||
|
|
|
||
|
|
```bash
|
||
|
|
mysql ... -e "SELECT SCHEMA_NAME, DEFAULT_CHARACTER_SET_NAME, DEFAULT_COLLATION_NAME FROM information_schema.SCHEMATA WHERE SCHEMA_NAME='ccdi';"
|
||
|
|
```
|
||
|
|
|
||
|
|
## 完成标准
|
||
|
|
|
||
|
|
- `ccdi` 的 `DEFAULT_CHARACTER_SET_NAME` 为 `utf8mb4`
|
||
|
|
- `ccdi` 的 `DEFAULT_COLLATION_NAME` 为 `utf8mb4_general_ci`
|
||
|
|
- 本次变更已形成实施记录
|