[SQL] Query netshop start [ERR] 1273 - Unknown collation: 'utf8mb4_0900_ai_ci' [ERR]
时间: 2024-01-03 10:03:10 浏览: 122
MySQL 编码utf8 与 utf8mb4 utf8mb4_unicode_ci 与 utf8mb4_general_ci
5星 · 资源好评率100%
这个错误通常是因为 MySQL 版本不兼容导致的。在 MySQL 8.0.1 以后的版本中,使用了新的 utf8mb4_0900_ai_ci 字符集代替了旧的 utf8mb4_general_ci 字符集。如果你的 MySQL 版本较旧,可能不支持新的字符集,就会出现这个错误。
要解决这个问题,可以尝试以下几个方法:
1. 升级 MySQL 版本到 8.0.1 或以上版本。
2. 在创建表时指定字符集为 utf8mb4_general_ci,而不是 utf8mb4_0900_ai_ci。
例如,创建一个名为 netshop 的表,指定字符集为 utf8mb4_general_ci:
```
CREATE TABLE netshop (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
price DECIMAL(10,2) NOT NULL
) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
```
3. 修改 MySQL 配置文件,将默认字符集设置为 utf8mb4_general_ci。
打开 MySQL 配置文件 my.cnf,添加以下内容:
```
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
```
保存并重启 MySQL 服务,使配置生效。
希望这些方法能帮助你解决问题。
阅读全文