一直以来, Linux环境下中文排序总以一种中国人无法理解的顺序排列,不信你可以在RedHat5x或者CentOS5x下用srot 排序看看。
这其实是因为中文本地化数据并没有包含拼音排序的信息。
现在通过安装一种额外的中文本地化数据zh_CN@pinyin就可以让你在UTF-8和GB18030字符集下都可以正确的排序中文。
RedHat6.0和CentOS6.0以上版本不会有此问题。
@H_404_9@
@H_404_9@
安装:
系统需求:
1、系统需要有符合X/Open标准的localedef工具
2、5.8.1以上的perl
安装:
#make
#make install
@H_404_9@
配置
==
为了生效,你必须正确配置locale环境变量。
推荐仅设置LC_COLLATE为本locale,比如:
LANG=zh_CN.UTF-8
LC_COLLATE=zh_CN@pinyin.utf8
注意:不要同时设置LC_ALL和LC_COLLATE,这样可能会导致本locale不能正确生
效。
@H_404_9@
编辑/etc/environment
@H_404_9@
则将下面的代码添加到文末尾(UTF-8.zh_CN环境适用)
LC_COLLATE=zh_CN@pinyin.utf8
重新登录新session。
@H_404_9@
重新安装postgresql
字符集选择zh_CN@pinyin.utf8
@H_404_9@
@H_404_9@
下载地址:
https://gro.clinux.org/frs/download.PHP/1962/locale-pinyin-0.1.tar.gz
http://forum.ubuntu.org.cn/download/file.PHP?id=12053
原文链接:https://www.f2er.com/postgresql/196142.html