日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

1273 - Unknown collation: ‘utf8mb4_0900_ai_ci‘, Time: 0.222000s 解決

作者:一勺菠蘿丶 更新時間: 2024-01-31 編程語言

解釋

utf8mb4_0900_ai_ci 是 MySQL 8.0 之后的默認字符集和校對。它提供了一種新的方式來存儲和比較字符數據。其中:

  • utf8mb4 是字符集(charset),表示該字符集支持最大為4字節的UTF-8字符。
  • 0900 是 Unicode 校對的版本,這是 MySQL 8.0 使用的新版本。
  • ai 表示 “accent insensitive”(不區分重音符號)。
  • ci 表示 “case insensitive”(不區分大小寫)。

原因:

您可能正在從一個 MySQL 8.0(或更高版本)的實例導出數據,并試圖將其導入到一個更早版本的 MySQL 實例中,而早期的 MySQL 版本不支持 utf8mb4_0900_ai_ci 校對。

解決方法一:

  1. 更新目標MySQL版本:升級您的MySQL版本到8.0或更高版本,這樣您就可以直接使用這個字符集和校對。

  2. 修改SQL文件:使用文本編輯器打開導出的SQL文件,將所有的 utf8mb4_0900_ai_ci 替換為 utf8mb4_unicode_ci(或您的MySQL版本支持的其他校對)。然后,您可以嘗試再次導入。

例如,將:

CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci

替換為:

CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci
  1. 更改導出設置:如果您使用工具(如phpMyAdmin、MySQL Workbench等)導出數據,可能可以在導出時更改字符集和校對的設置。

在采取上述措施之前,建議備份您的數據庫和SQL文件,以防止數據丟失或損壞。

解決方法二:

如果您的目標數據庫版本是MySQL 5.7,那么您應該將字符集和校對方式更改為MySQL 5.7支持的版本。utf8mb4 字符集在 MySQL 5.7 中是支持的,但 utf8mb4_0900_ai_ci 校對是不支持的。

以下是如何修改導出的SQL文件以使其兼容MySQL 5.7:

  1. 使用文本編輯器打開導出的SQL文件。

  2. 找到并替換所有的 utf8mb4_0900_ai_ciutf8mb4_unicode_ci。

例如,將:

CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci

替換為:

CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci
  1. 同樣地,將:
CHARACTER SET utf8mb4 COLLATE utf8mb4_bin

保留不變,因為 utf8mb4_bin 在MySQL 5.7中是支持的。

  1. 保存SQL文件。

  2. 嘗試再次導入修改后的SQL文件到您的MySQL 5.7數據庫。

原文鏈接:https://blog.csdn.net/weixin_39973810/article/details/133298822

  • 上一篇:沒有了
  • 下一篇:沒有了
欄目分類
最近更新