[pgsql-jp: 38149] Re: データ損失について

vitz.kun @ nifty.com vitz.kun @ nifty.com
2007年 3月 14日 (水) 17:23:18 JST


片岡様

アドバイスどうもありがとうございます。

最初のほうのrestoreの方ですけどpg_dumpからおこなって
確かめてみます。

途中でgzipを行いながらpg_dumpをおこなったのですが・・

このような形です。
pg_dump -Ft -b database_name | gzip >database_name.dmp.gz

今までも同じ形でバックアップをとり別のサーバで展開していたので
データベースの方のデータが壊れていないか確認してみます。

二件目の方ですけど、こちらの方もデータが壊れていると思って
作業してみます。

どうもお騒がせ致しました。




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




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