pgAdminでバックアップファイルが作成できない
テスト用開発環境作成のため
pgAdminでデータベースのバックアップをとり
テスト用データベースにリストアーを行おうとしたら
以下のエラーを吐いた><
C:\Program Files\pgAdmin III\1.8\pg_dump.exe -h localhost -p 15432 -U
hogehoge -F c -b -v -f "D:\Desktop\hogegoge.backup" hogehoge
pg_dump: server version: 8.3.3; pg_dump version: 8.3.0
pg_dump: aborting because of version mismatch (Use the -i option to
proceed anyway.)
pg_dump: *** aborted because of error
プロセスは、1 のリターンコードを返しました。
自分のローカルにあるpg_dumpのバージョンとサーバのpostgreとのバージョンが違うのでエラーを出しているみいなのだが
どうやらこれは、PostgreSQL8.3のバグらしい
ローカルのPCに入っているpg_dump.exeとpg_dump_all.exeを置き換えると直るらしい。
C:\Program Files\pgAdmin III\1.8\pg_dump.exe
C:\Program Files\pgAdmin III\1.8\pg_dumpall.exe
ファイルのプロパティを開いてバージョン情報を確認し
8.3.0.842
と、なっていたら
次に、
C:\Program Files\PostgreSQL\8.3\bin\
の中にあるファイルのプロパティでバージョンが
8.3.3
かそれ以上なら動く可能性があるそうです。
けれど
バグだから怖かったのでサーバ側でバックアップとリストアーをやりました
$ pg_dump -U hogehoge -Ft -b hogehoge > hogehoge_dump
$ pg_restore -U mogumogu -d mogumogu < hogegoge_dump
オプションに関するリンク
http://www.sraoss.co.jp/PostgreSQL/Manual/document/pg835doc/html/app-pgdump.html
http://www.ksknet.net/postgresql/pg_dump.html