[pgsql-jp: 39614] Re: データベースのI|5l

ITAGAKI Takahiro itagaki.takahiro @ oss.ntt.co.jp
2008年 10月 15日 (水) 12:16:32 JST


板垣です。

WF3M-DT @ j.asahi-net.or.jp (mail) wrote:

> globalディレクトリだけがバックアップ出来ませんでした。
> その他のディレクトリはバックアップ出来たのですが
> 復旧する良い方法はありませんでしょうか?

base 以下が無事ならば、データベースごと置き換えることで、
ある程度は救えるかもしれません。

新しく initdb 後、CREATE DATABASE して空のデータベースを作ります。
そのデータベースの OID を確認しておき、
ディレクトリ base/{dboid} をバックアップしたディレクトリで置き換えます。
もし、どのファイルがどのテーブルなのかが予想が付くならば、
テーブルのファイル単位で似たようなことができるかもしれません。

また、これだけだとXIDの関係でデータが見えない場合があるので、
適当に pg_resetxlog で XID を設定してやる必要があるでしょう。


ただ、やはり完全に救うのは難しいと思います。
pg_filedump 等で直接ダンプするしかないかもしれないです。





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