[pgsql-jp: 36795] Re: initdbとcreatedb の文字コード指定

Yoshiaki Kawazu kawaz-pgsql-jp=sra.co.jp @ 7cho-me.com
2006年 3月 1日 (水) 15:20:19 JST


河津です。

initdb の --no-locale に関してはMLにも定期的といってよいほどよく投げられる問題で、
既に日本語を扱い際の最重要FAQとなっていると思うのですが、
アナウンスがまだ足りていないように感じます。

以前に、--no-locale をデフォルトにするよう働きかけてポシャったような記憶があるので、
それを再燃させるのは難しいと思うので置いておきます。
それ以外に出来ることとしてはやはりまずアナウンスをもっと徹底することだと思います。

他に思いつくのは綺麗じゃないやり方ですが、initdb 時のロケールを見て、
ja だった場合は --nolocale を付けるよう促す警告メッセージを表示する、
といった対応もアリかと思います。

また、

> 私の場合は、ある専用サーバを借りたのですがすでにinitdbは実行された後のよ
> うでPostgreSQLは使える状態になっておりました。インストールする手間が省け
> た、と思っていたのですが、とんでもない事態となっていました。一応は動いて
> いたので、インデックスがなんとなく変と気が付いたのは1ヶ月以上経過してか
> らでした。OSはもちろんVineではありません。

こういった、既に --no-locale を付けずに initdb がされてしまっている環境で
管理者権限が無い為に自分ではどうしようも無いケースも多いと思います。
そういったケースで管理者への問い合わせたりといった負荷を軽減する為にも、
initdb 後に CREATE/ALTER DATABASE でデータベース毎に個別に初期化or再設定が
出来る仕組みがあればなお良いと思います。
エンコーディングはそれが出来るのに何故 locale は?と思ってしまいます。
(内部設計に詳しくないのでこれがどれ程のコストの要求なのかは分からないのですが、
これまでそういった対応がされていないということは難しいということなんでしょうか…)

PostgreSQL 8.1 もリリースされ、Windows 環境でも安定して利用できるようになってきた
のに、未だ初心者には分かりにくい --no-locale 問題が残っているというのは、
PostgreSQL を採用する際の障害の1つになっている気がします。


------------------------------------
株式会社 Syun
河津 佳章 <kawaz @ syun.co.jp>
TEL: 04-7165-7474 FAX: 04-7165-7484
URL: http://syun.jp/
------------------------------------




pgsql-jp メーリングリストの案内