[pgsql-jp: 25490] (解決) vacuumdb による PostgreSQL の停止
しょうなり [ml]
ml @ webappli.jp
2002年 4月 1日 (月) 17:06:22 JST
しょうなりです。
復旧しました、お騒がせしました。
※僕が原因だと思っていたことは見当違いでしたので、表題は変更しました。
問題
>>>200,000件ほど登録してあったデータベースを数件だけ残して削除し、
>>>vacuumdb をしたところそのまま落ちてしまい起動しなくなってしまいました。
>>>なお、今回の質問に関係ないかもしれませんが、
>>>再度起動しようとするときのエラーは次の通りです。
>>>
>>>[root @ www admin]# DEBUG: database system shutdown was interrupted at
>>>2002-04-01 13:13:37 JST
>>>DEBUG: CheckPoint record at (0, 693662820)
>>>DEBUG: Redo record at (0, 687891344); Undo record at (0, 648854976); Shutdown FALSE
>>>DEBUG: NextTransactionId: 2709326; NextOid: 302574
>>>DEBUG: database system was not properly shut down; automatic recovery in progre ss...
>>>DEBUG: redo starts at (0, 687891344)
>>>DEBUG: open(logfile 0 seg 43) failed: No such file or directory
>>>DEBUG: redo done at (0, 721420200) FATAL 2:
>>>ZeroFill(/usr/local/pgsql/data/pg_xlog/xlogtemp.26825) failed: No spac e left on device
>>>/usr/local/pgsql/bin/postmaster: Startup proc 26825 exited with status 512 - abo rt
>>>
>>>※ 最後の2行のデバイス容量については容量切れということはありません。
>>しっかり調べてみたら、容量切れをおこしていました。
vacuumdb を行うためのディスク容量が不足しており、途中で処理が中断されたため、
PostgreSQL が立ち上がらない状態になっていました。
NAKAMURA Takeshi さんは書きました:
> ディレクトリごと移動させて、そのディレクトリへリンクを
>張るのが簡単かと(^^;;;
中村さんの助言通り容量のあるデバイスへデータ領域を移動し、
リンクをはって再起動することにより、復旧しました。
本当に助かりました、ありがとうございました。
sugita @ sra.co.jp さんは書きました:
>;;; vacuumdb 自体はこれで初めての処理でしたし、vacuumdb 失敗の原因は
>;;; 登録していたデータが怪しいためだと思っています。
>
> データが怪しい理由を教えください。
PHPからデータを操作するプログラムを書いているのですが、\nの処理が甘く、
pg_dump mydb > mydb.dmp でとったバックアップから
psql mydb < mydb.dmp で復旧できないことに先日気が付きました。
今書いているプログラムでは処理の修正をしたのですが、
今回操作したデータベースでは以前の処理を利用したものでしたので、
vacuumdb もそういうところに影響を受けるのでは、と考えました。
> 運用時の PostgreSQL のログ (必須です)、落ちた時点の vmstat、iostat、ps、
>dmesg、syslog、df などが手がかりになるのではないでしょうか?
指摘され、PostgreSQLのログを読んでいる最中に中村さんの助言をいただきました。
ログをすぐ見る癖を付けておかないと、いざと言うときに対処できないなぁ、と
思っていたんですが、本当に対処できませんでした、情けない…。
># メールは Mac OS X から? まだ使ってる人が少ないなぁ。
はい、フロントエンドで Macのインターフェイスを、バックエンドで
UNIXのソフトウェアを、という環境を目指してます(^_^;
最近は Windowsよりも使ってます。
僕の周りでは、他に一人しかいないかな??
--
print <<<SIG
しょうなり@信州 肥田昌也
Email: shounari @ webappli.jp
SIG;
pgsql-jp メーリングリストの案内