[pgsql-jp: 34945] Re: DROPDBした時の復旧

TANIDA Yutaka tanida @ sra.co.jp
2005年 2月 28日 (月) 16:33:37 JST


谷田です。

On Mon, 28 Feb 2005 11:48:40 +0900
"Mitsutoshi Kusakabe" <kusakabe @ asahikawa-med.ac.jp> wrote:

> 誤ってDROPDBした時の復旧方法はあるのでしょうか?

完全なものはありません。

ただし、ひょっとしたら以下のような方法で復旧できるのかもしれません。かつ
て成功例があった訳でもなく、またこの方法が完全であることを保証するもので
もないです。

1.
http://www.linux.or.jp/JF/JFdocs/Ext2fs-Undeletion/index.html

か何かを元に

$PGDATA/base/

以下にある削除されたデータを復旧します。運良く数字だけのディレクトリとそ
の中身が復旧された場合、即座にこれのコピーを取っておいてください。

2.
新しいデータベースを作り、PostgreSQLを終了します。

3.
2.で$PGDATA/baseに作られた新しい数字ディレクトリの中を空にし、1.で抽出で
きた中身をつっこみます。

4. PostgreSQLを起動します。

これで2.で作ったデータベースにそのときの中身が復旧している、かもしれませ
ん。

仮にこの方法が完璧で、かつ全てのプロセスが完全にうまくいったとしても、他
のプロセスによりデータの上書きがなされてしまった保証が無いので、いずれに
しても完全な復旧にはならない可能性が非常に高いですが・・・

#正直これに賭けるぐらいなら、土下座して謝るのを選びますね・・・

-- 
TANIDA Yutaka <tanida @ sra.co.jp>




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