我正在运行mysql Ver 8.0.20。
当前,归类和字符集设置为utf8mb4_0900_ai_ci和


我一直在尝试通过运行这些命令将它们更新到UTF8。但每次我关闭客户端并重新登录时,这些值都恢复为utf8mb4。
SET character_set_client = 'utf8';
SET character_set_connection = 'utf8';
SET character_set_database = 'latin1';
SET character_set_filesystem = 'binary';
SET character_set_results = 'utf8';
SET character_set_server = 'latin1';
SET character_set_system = 'utf8';
set collation_connection = 'utf8_general_ci';
set collation_database = 'latin1_swedish_ci';
set collation_database = 'latin1_swedish_ci'
commit;
ALTER DATABASE sanskvrcpu_db2 CHARACTER SET utf8 COLLATE utf8_general_ci;这些statmentnts的输出如下所示:
mysql> ALTER DATABASE sanskvrcpu_db2 CHARACTER SET utf8 COLLATE utf8_general_ci;
Query OK, 1 row affected, 2 warnings (0.00 sec)
Warning (Code 3719): 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous.
Warning (Code 3778): 'utf8_general_ci' is a collation of the deprecated character set UTF8MB3. Please consider using UTF8MB4 with an appropriate collation instead.发布于 2020-06-15 04:06:25
SET ...适用于当前的“会话”(也称为“连接”)。因此,当您将disconnect.SET GLOBAL ...应用于全局变量而不是当前会话时,信息会丢失。它仅适用于新连接。但当服务器宕机时,它们就会丢失。执行第3项时,也执行第2项。my.cnf或其他任何文件)将在下次重启后生效。执行项目2时,也执行项目3。SET PERSIST,这是一种无需同时执行项目3而通过项目2进行全局设置的方法。Ref: Ref(您完成了第1项。)
例外:某些设置既是'session‘又是'global';因此没有完全遵循上面的限制。
https://stackoverflow.com/questions/62373919
复制相似问题