* 文字コードが違うバックアップのリストアでEUDCでエラー回避する [#i2fd6624]
* 外字領域の文字コード変換 [#k57882c3]
** 目的 [#fb8f6d4b]
- EUCJPのデータベースのバックアップダンプを、UTF8のデータベースにリストアすると、
-- ERROR: character with byte sequence 0xfa 0xf5 in encoding "EUC_JP" has no equivalent in encoding "UTF8"
- のように文字コードの変換失敗でエラーが発生する事がある。
- このエラーを回避する為にEUDCモジュールを使う。
** 手順 [#z45b9892]
*** EUDCモジュールの入手 [#o4bc0d65]
http://pgfoundry.org/frs/?group_id=1000298 からソースコードをダウンロードする。
*** EUDCモジュールのインストール [#l35906db]
tar zxvf eudc-1.2.0.tar.gz
cd eudc-1.2.0/
make
sudo make install
事前にpg_configコマンドをインストールしてパスを通しておく事。
*** EUDCモジュールの有効化 [#x360e741]
psql foo_db
foo_db=# create extension eudc;
*** データベースのリストア [#i0806318]
createdb foo_db -O foo_user -E UTF8 --template=template0
pg_restore -U foo_user -d foo_db < foo_db.euc.dump
** 参考 [#ha8d7d9f]
http://textsearch-ja.projects.pgfoundry.org/eudc.html