mysql/mariadb 创建数据库时字符集和校对集的选择

分享讨论IT相关的内容
回复
头像
BobMaster
锋芒初露
锋芒初露
帖子: 1186
注册时间: 2020年 12月 7日 08:05
来自: 神秘的东方
我的状态: 🎯
为圈友点赞: 338 次
被赞次数: 177 次
联系:

mysql/mariadb 创建数据库时字符集和校对集的选择

帖子 BobMaster »

首先mariadb的文档列举了其支持的 Character SetsCollations
https://mariadb.com/kb/en/supported-cha ... ollations/
接下来就是选择问题,大部分情况我们需要的是UTF-8编码的字符集,推荐使用utf8mb4的字符集,因为其还支持 Basic Multilingual Plane 之外的增补字符。
https://dev.mysql.com/doc/refman/8.0/en ... rsion.html

接下来就是考虑校对集collation,是用utf8mb4_general_ci还是utf8mb4_unicode_ci?
stackoverflow上的这个帖子给了解释和选择建议
What's the difference between utf8_general_ci and utf8_unicode_ci?
对于现代的数据库,应该尽量使用新添加的校对集,如utf8mb4_unicode_520_ci

所以我为项目创建mariadb数据库时,会使用下面的命令:

代码: 全选

CREATE DATABASE nextcloud
  CHARACTER SET = 'utf8mb4'
  COLLATE = 'utf8mb4_unicode_520_ci';
人生如音乐,欢乐且自由
回复
  • 猜你喜欢
    回复总数
    阅读次数
    最新帖子
  • nextcloud 从 postgresql 数据库迁移到 mariadb/mysql
    BobMaster » » 位于 玩机交流
    0 回复总数
    365 阅读次数
    最新帖子 BobMaster
  • mariadb 将 character_set_client 从 latin1 修改为 utf8mb4
    BobMaster » » 位于 玩机交流
    1 回复总数
    166 阅读次数
    最新帖子 ejsoon

在线用户

正浏览此版面之用户: 没有注册用户 和 1 访客