什么是支持多语言的数据库的理想编码设置?

时间:2011-11-15 07:45:36

标签: mysql performance encoding

根据MySQL manual,MySQL包含字符集支持,使我们能够使用各种字符集存储数据,并根据各种排序规则进行比较。 可以在四个不同级别指定字符集

  • 服务器
  • 数据库

假设我有一个存储以下内容的数据库:

  • 用户ID(INT)
  • 电子邮件地址(VARCHAR 50)
  • 用户个人资料(TEXT - 多语言)
  • 系统标志(仅限CHAR 1 - a-z)

Latin1UTF-8之间,我应该选择四个不同的级别来实现最佳性能?

ADD注意:这只是一个简化的例子。在实际情况中,我希望存储多个列(a-zA-Z0-9)和存储多语言文本的一列或两列。这就是我担心表现的原因。

ADD NOTE2:我指的是一个存储数百万条记录的数据库。这就是性能对我很重要的原因。

2 个答案:

答案 0 :(得分:1)

我可能错了,但根据我的经验,您选择的字符集对您的整体数据库性能没有太大影响(如果您开始在不同的表中混合它们,现在 >可能会影响查询性能。)

如果您想支持多种语言,请转到utf8(甚至utf16)。

答案 1 :(得分:0)

您应该为整个数据库选择相同的编码。否则你作为开发人员将在以后混淆。由于文本是多语言的,因此只留下utf8作为您选择的编码。

请注意,您也可以为数据库连接选择编码。