如何正确转换系统模式“mysql”的字符集?

如何正确转换系统模式“mysql”的字符集?,mysql,Mysql,在步骤5.7->8.0.23中从5.6->5.7->8.0.23升级mysql时,我得到了一个建议: The following objects use the utf8mb3 character set. It is recommended to convert them to use utf8mb4 instead, for improved Unicode support. More Information: https://dev.mysql.com/doc/refman/8.0/en/

在步骤5.7->8.0.23中从5.6->5.7->8.0.23升级mysql时,我得到了一个建议:

The following objects use the utf8mb3 character set. It is recommended to convert them to use utf8mb4 instead, for improved Unicode support.
More Information:
https://dev.mysql.com/doc/refman/8.0/en/charset-unicode-utf8mb3.html

...
mysql - schema's default character set: utf8
...

那么,将schema
mysql
的字符集更改为utf8mb4就足够了吗?或者首先,是否需要将此架构的所有表转换为utf8mb4?

更改架构默认字符集的方法:

ALTER SCHEMA mysql DEFAULT CHARACTER SET utf8mb4;

但是,我不知道RDS上的管理员用户是否有权限在
mysql
系统模式上执行此操作。您可能不这样做,因为RDS限制了管理员用户的权限。

您的意思是您正在使用
mysql\u升级
可执行文件吗?或者其他一些升级机制这些字段需要显式转换,显式指定字符集作为默认值,在这种情况下不适用。我通过aws rds升级,我认为它使用mysql\u升级。是否可以在aws rds中更改
mysq
模式的字符集?否。我已经在rds实例上测试了这一点。尽管拥有ALTER权限,但用户在尝试
alterschemamysql
时会得到“拒绝访问”。我在本地MySQL实例上创建了一个测试用户,并授予了相同的权限,结果成功了。因此,亚马逊故意限制了修改
mysql
模式的权限。