重新引入“未知的初始字符集索引”错误?

重新引入“未知的初始字符集索引”错误?,第1张

重新引入“未知的初始字符集索引”错误?

本文讨论了自8.0以来发生的更改。已列出供您参考的要点之一是:

字符集支持

重要更改:默认字符集已从latin1更改为utf8mb4。这些系统变量会受到影响:

character_set_server和character_set_database系统变量的默认值已从 latin1 更改为
utf8mb4

在collat​​ion_server的和collat​​ion_database查看系统变量的缺省值已经从 latin1_swedish_ci
utf8mb4_0900_ai_ci

因此,除非指定了明确的字符集和排序规则,否则新对象的默认字符集和排序规则会与以前不同。这包括数据库和其中的对象,例如表,视图和存储的程序。


保留先前默认值的一种方法是使用

my.cnf
文件中的以下行启动服务器:

[mysqld]character_set_server=latin1collation_server=latin1_swedish_ci

由于您正在运行docker,因此另一个选择是将这些配置选项指定为docker run命令的命令行参数。例如:

docker run -d --network my-net -h mysqldb --name mysqldb -p 3306:3306 -e MYSQL_RANDOM_ROOT_PASSWORD=yes -e MYSQL_DATAbase=mydb -e MYSQL_USER=admin -e "MYSQL_PASSWORD=admin" mysql:8 --character-set-server=latin1 --collation-server=latin1_swedish_ci

在客户端上,如果您要进行更改-希望这些更改就足够了:

要将4字节UTF-8字符集与Connector /
J一起使用,请使用配置MySQL服务器

character_set_server=utf8mb4
,并保留
characterEncoding
Connector
/ J连接字符串的位置。

然后,Connector / J将自动检测

UTF-8
设置

希望这可以帮助!



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5000633.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-14
下一篇2022-11-14

发表评论

登录后才能评论

评论列表(0条)

    保存