Files
loan-pricing/doc/implementation-report-2026-03-28-chinese-data-repair.md

1.6 KiB

中文数据修复实施记录

问题现象

  • 目标库 116.62.17.81:3307/loan-pricing 中系统菜单、角色、用户昵称等中文字段显示为 ?

根因结论

  • 源库 116.62.17.81:3306/loan-pricing 中中文数据实际是正确的 UTF-8 字节
  • 通过 SET NAMES utf8mb4 读取源库时,可以正确得到中文内容
  • 之前生成的 sql/loan_pricing_required_data_20260328.sqlmysqldump 产出,文件中的中文已经被导出成问号
  • 目标库乱码不是 collation 调整导致,而是导入了这份已损坏的数据 SQL

本次修复

  • 放弃使用已损坏的 mysqldump 数据文件
  • 直接从源库 3306utf8mb4 正确读取 17 张必要数据表
  • 将这 17 张表重新覆盖写入目标库 3307
  • 重新生成 sql/loan_pricing_required_data_20260328.sql,确保文件内中文内容为正常 UTF-8

修复范围

  • loan_pricing_workflow
  • model_corp_output_fields
  • model_retail_output_fields
  • sys_config
  • sys_dept
  • sys_dict_data
  • sys_dict_type
  • sys_job
  • sys_menu
  • sys_notice
  • sys_post
  • sys_role
  • sys_role_dept
  • sys_role_menu
  • sys_user
  • sys_user_post
  • sys_user_role

验证结果

  • 目标库 sys_user.nick_name 已恢复为 若依测试管理员
  • 目标库 sys_role.role_name 已恢复为 超级管理员普通角色管理员
  • 目标库 sys_menu.menu_name 已恢复为 系统管理利率定价管理流程列表
  • 重新生成的 sql/loan_pricing_required_data_20260328.sql 中已包含 管理员若依系统管理用户管理利率定价管理