[pgsql-jp: 38138] Re: データ損失について
Hiroki Kataoka
kataoka @ interwiz.jp
2007年 3月 14日 (水) 11:37:02 JST
片岡です。
レスが付かないようなので。
vitz.kun @ nifty.com wrote:
> 8.0.1のバージョンで
> pg_restoreでデータを展開すると下記のメッセージが表示されます。
> pg_restore: [tar archiver] could not find header for file 1700.dat in tar arch
> ive
>
> データ破損している可能性が高いでしょうか?
その前に、バックアップファイルがpg_restore用の正しいファイルか確認され
たほうがいいです。プレーンなSQLファイルとしてダンプしたのであれば、
pg_restoreコマンドではリストアできません。psqlコマンドでリストアさせる必
要があります。
> 他の別なデータベースの方ですけど、バージョンは8.0.1です。
> vacuum analyzeを行うと
> WARNING: some databases have not been vacuumed in over 2 billion transactions
> DETAIL: You may have already suffered transaction-wraparound data loss.
> VACUUM
>
> と表示されます。
> データ損失していないように見受けられないように見えますが、こちらもデータ損失し
> ている可能性が
> あるのでしょうか?
こちらは、高い確率でデータを失っています(データの実態はディスク上に
残っているのですがもう取り出せません)。2百万トランザクション以上の長期
間にわたりVACUUMを行っていないデータベースがありませんか? 基本的にはす
でに手遅れなので、あわててVACUUMしても取り出せるようになるどころか完全に
消えてなくなる可能性がありますので、いろいろいじる前にどの程度大事なもの
がなくなったのか調べてみることをおすすめします(それでどうするの?という
話もありますが…)。
ちなみに、この間にも他のトランザクションを実行しているなら、どんどん
データを失っていることになります。
--
Hiroki Kataoka <kataoka @ interwiz.jp>
pgsql-jp メーリングリストの案内