改成utf8mb4后查询速度变慢

Posted

技术标签:

【中文标题】改成utf8mb4后查询速度变慢【英文标题】:Query speed slow down after change to utf8mb4 【发布时间】:2018-10-25 05:02:27 【问题描述】:

我是 mysql 和 AWS 的新手。 现在我要做的是将旧数据库表转移到其他数据库中的新表。 旧数据库和新数据库在同一个 EC2 服务器中。我使用 mysqlclient 在另一台服务器上编写代码来执行此操作,它也是一个 EC2 服务器。上周五同步数据的速度是每秒 4 条记录。但是我发现另一个关于存储表情符号的问题,所以我将数据库更改为utf8mb4中的编码。

alter database django_database character set utf8mb4 collate utf8mb4_unicode_ci

但是在星期一,当我 ssh 到运行同步代码的服务器时,我发现同步数据的速度变成了每 9 秒 4 条记录。 我尝试重新启动 MySQL 服务,重新启动 MySQL 服务器,重新启动运行我的代码的服务器。我还尝试在另一个 EC2 实例上运行代码。但它仍然是缓慢的速度。而且我不知道如何找到导致这种情况的原因。我也尝试跳过名称解析,但它仍然太慢。希望有人能给出答案。或者告诉我如何找到分析它。感谢所有阅读完我的问题的人。

【问题讨论】:

【参考方案1】:

我找到了造成这种情况的原因!我使用 t2.medium。当我感觉速度很快时,实例使用 CPU 剩余积分。我发现当信用用完时它变得很慢。

【讨论】:

以上是关于改成utf8mb4后查询速度变慢的主要内容,如果未能解决你的问题,请参考以下文章

mysql 设置 utf8mb4 怎么查询

mysql 5.5 数据库 utf8改utf8mb4

将 charset 设置为 utf8mb4 会使查询非常慢

MySQL:Unknown character set:utf8mb4怎么解决

强制 MariaDB 客户端使用 utf8mb4

MySQL存储过程执行慢