相关疑难解决方法(0)

将MySQL UTF8迁移到UTF8MB4的问题和疑问

我试图将我的UTF8 MySQL 5.5.30数据库转换为UTF8MB4.我看过这篇文章https://mathiasbynens.be/notes/mysql-utf8mb4但有一些问题.

我做过这些

ALTER DATABASE database_name CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;
ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Run Code Online (Sandbox Code Playgroud)

最后一个用62个表手动完成,其中一个给了我这个警告

13:08:30 ALTER TABLE bradspelold.games CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci 101289 row(s)受影响,2警告:1071指定密钥太长; 最大密钥长度为767字节1071指定密钥太长; 最大密钥长度为767字节记录:101289重复:0警告:2 3.016秒

  1. 这是一个问题吗?我该怎么办才能修好它?

下一步是

ALTER TABLE table_name CHANGE column_name column_name
         VARCHAR(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Run Code Online (Sandbox Code Playgroud)
  1. 我不确定命令,为什么有2列名?
  2. 我应该只在VARCHAR(191)列上执行此操作吗?我不认为我有他们中的任何一个?
  3. 你知道更多这样的artickels解释了更多id详细的原因和方法吗?

编辑:

桌上游戏

CREATE  TABLE `games` (
        `id` int(10) unsigned NOT NULL DEFAULT \'0\',
        `name` varchar(255) NOT NULL,
        `description` mediumtext,
        `yearPublished` …
Run Code Online (Sandbox Code Playgroud)

mysql migrate utf-8 utf8mb4

7
推荐指数
2
解决办法
1万
查看次数

标签 统计

migrate ×1

mysql ×1

utf-8 ×1

utf8mb4 ×1