文字コードが違うバックアップのリストアでEUDCでエラー回避する

目的

  • EUCJPのデータベースのバックアップダンプを、UTF8のデータベースにリストアすると、
    • ERROR: character with byte sequence 0xfa 0xf5 in encoding "EUC_JP" has no equivalent in encoding "UTF8"
  • のように文字コードの変換失敗でエラーが発生する事がある。
  • このエラーを回避する為にEUDCモジュールを使う。

手順

EUDCモジュールの入手

http://pgfoundry.org/frs/?group_id=1000298 からソースコードをダウンロードする。

EUDCモジュールのインストール

 tar zxvf eudc-1.2.0.tar.gz
 cd eudc-1.2.0/
 make 
 sudo make install

事前にpg_configコマンドをインストールしてパスを通しておく事。

EUDCモジュールの有効化

 psql foo_db
 foo_db=# create extension eudc;

データベースのリストア

 createdb foo_db -O foo_user -E UTF8 --template=template0
 pg_restore -U foo_user -d foo_db < foo_db.euc.dump

参考

http://textsearch-ja.projects.pgfoundry.org/eudc.html


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS