成功解决7版本的数据库导入 8版本数据库脚本报错问题

我 | 在这里

⭐ 全栈开发攻城狮、全网10W+粉丝、2022博客之星后端领域Top1、专家博主。

🎓擅长 指导毕设 | 论文指导 | 系统开发 | 毕业答辩 | 系统讲解等。已指导60+位同学顺利毕业

✈️个人公众号:热爱技术的小郑 。回复 Java全套视频教程前端全套视频教程 即可获取 300G+ 教程资料,以及大量毕设项目源码。

🐬专注干货知识分享、项目实战案例开发分享

🚪 传送门:Github毕设源码仓库

文章目录

前言

  在使用可视化操作工具Navicate运行数据库脚本的时候 报的错误:Unknown collation: 'utf8mb4_0900_ai_ci'

  解释:这个错误通常是因为你的 MySQL 数据库版本不支持 utf8mb4_0900_ai_ci 排序规则。在 MySQL 5.7 之前,utf8mb4_0900_ai_ci 排序规则并不存在,因此如果你在更低版本的 MySQL 中尝试使用这个排序规则,就会遇到这个错误。

解决办法

  • 1、升级 MySQL 版本:如果可能,升级你的 MySQL 到 8.0 版本或更高,因为这些版本原生支持 utf8mb4_0900_ai_ci。

  • 2、更改排序规则:如果不能升级 MySQL,考虑将排序规则改为 utf8mb4_general_ci 或 utf8mb4_unicode_ci,它们在较老的 MySQL 版本中被广泛支持。

  你可以修改 SQL 脚本,或者在导入数据时进行全局替换。以下是如何进行替换的示例:【建议使用编辑本对脚本进行全局替换,方便快捷】

复制代码
ALTER TABLE your_table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

  或者在 SQL 文件中,将所有 utf8mb4_0900_ai_ci 替换为 utf8mb4_unicode_ci。

  • 3、修改导入脚本:如果是在导入脚本中出现问题,可以手动编辑该脚本,将 utf8mb4_0900_ai_ci 替换为适合你当前 MySQL 版本的排序规则。

修改前执行脚本报错

修改后执行脚本成功

注意

  重点看 CHARSETCOLLATE 设置的是否符合当前数据库版本

相关推荐
风跟我说过她13 分钟前
SQL 一键转经典 Chen 风格 ER 图:开源 CLI + 在线工具 + Agent Skill
数据库·python·sql·开源·开源软件
这个DBA有点耶15 分钟前
MySQL大表DDL锁表锁到崩溃?Online DDL的3个关键参数和实战避坑
数据库·mysql·架构
2302_1111 小时前
java依赖小结
java·运维·数据库
听到微笑2 小时前
Elasticsearch 如何存储与检索海量向量
数据库·elasticsearch
海浪仙人掌2 小时前
速动比率怎么分析?速动比率分析有哪些注意事项?
大数据·数据库·人工智能
企业数字化笔记2 小时前
固定资产历史数据怎么导入系统?Excel模板、字段映射和数据校验
android·java·数据库·后端
还是奇怪2 小时前
OpenAI GPT-5.6 构建指南拆解:创业公司如何用模型选择与 Responses API 降低 Agent 成本
java·数据库·人工智能·gpt
可涵不会debug2 小时前
LangChain 文本分割器详解:字符分割、Token 分割、硬约束递归分割实战
java·前端·数据库
风哥2号2 小时前
数据库教程FGMT21‑Oracle RAC+DG生产实战(1):Oracle19c/26ai for RHEL8/9安装配置+补丁
数据库·oracle
海鸥-w2 小时前
事务四大特性
数据库