2016年08月18日

PostgreSQL9.6.0beta4 GUIインストール ロケール(国際化と地域化)

PostgreSQL9.6.0beta4のGUIインストールで、ロケール(locale/(国際化と地域化)とエンコーディング(encoding)の指定を理解するためのメモとリンク。

postgresql locale 
postgresql locale encoding
postgresql locale 変更
などて、検索してみる


ロケール(国際化と地域化)
8系の、この記事で、気になるのは、5行からの
『ただし、C ロケール以外を設定すると、インデックスが使われないなどの性能への影響がある場合もあります』

一番の注意:「万能な」ロケールは無い とあります。



CREATE TABLEでロケールなどを指定してみる

上記では、initdbで作成したデータベースクラスターの値を確認しました。
以下、CREATE DATABASEでロケールを指定してみます。

  1. encoding = eucjp, locale=ja_JP.eucjp
    createdb --encoding=eucjp --locale=ja_JP.eucjp --template=template0 db1
  2. locale=C
    createdb --locale=C --template=template0 db2
  3. locale=C, encoding=SQL_ASCII
    createdb --locale=C --encoding=SQL_ASCII --template=template0 db3

のようなことが、可能。


ロケール無し=ロケールC

「initdb locale=C」と「initdb --no-locale」は同じ意味。
ロケールをC以外にするなら、必ずエンコーディングも同じにする

例えば、ロケールをEUC_JPにするなら、一緒にエンコーディングもEUC_JPに設定して、createdbしないといけない。




initdbのやり直し
initdbをやり直したい場合は一度/var/lib/pgsql/9.x/data配下を削除した上で、改めてinitdbを実行する。
rm /var/lib/pgsql/9.x/data -rf




[postgres]$ initdb --encoding=UTF8 --no-locale





















posted by a23 at 09:59| Comment(0) | PostgreSQL
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: