# 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` - 本次变更已形成实施记录