*

postgresqlのvacuumでビビった件

公開日: : 最終更新日:2013/11/28 WEBサービス, システム, テクニック

PostgreSQL-9

ある日突然、サービスが落ちていると連絡を受けました。
URLにアクセスしてみると、確かにサービスがダウンしていて、500 error(Internal Server Error)が出ています。

いつも思うけど、このエラーが一番やっかいだよね。
それで、またアクセス過多かな?と思ってWEBサーバーを再起動してみるも、復旧しません。

一度だけ過去に同じような現象があって、その時はVacuumをしていなかったことが原因だったと思い出した。
定期的なVacuumが必要とか、本当Postgresって厄介だよね!

で、エラーログを見るとやっぱりVacuumが必要とのこと。

database "postgres" must be vacuumed within 1000000 transactions
HINT:  To avoid a database shutdown, execute a full-database VACUUM in "postgres".

ググって、postgresを止めてVacuumをすればいいことを探り当てる。
どうも、シングルユーザモードというので実行すればいいらしい。

が、ネット情報通りに postgres [dbname] で実行しようとしてもpostgresが働いてくれない。

postgres does not know where to find the server configuration file.
You must specify the --config-file or -D invocation option or set the PGDATA environment variable.

この時点で1時間半経過していて、サービスが止まってるってことを考えると少し焦る。
ググっても日本語で解説しているページが出てこない。

よくエラーをみてみると、Postgresのデータのある場所を指定しろと言っているようだ。
でもどうやって指定する?

グーグル先生を頼りに英語のページを見つけ出し、試してみる。
すると何とかシングルモードで実行できた。

 

ここからひたすらVacuumの繰り返し。
やり方が間違っているんじゃないかと、何度も不安になる。

が、あきらめない。自分しかいない。

計10時間近くかかってようやく復旧。
無事にサービスがリスタートできた。

 

結論

定期的なVacuumが必要とか、本当Postgresって厄介だよね!

 

参考URL
http://www.hazama.nu/t2o2/archives/002782.shtml
http://blog.mikuriya.biz/archives/282
http://forums.macrumors.com/archive/index.php/t-175819.html

 

追記
とりあえず、ここ見てautovacuum設定したよ!
http://www.postgresql.jp/document/8.1/html/runtime-config-autovacuum.html

Google AD


Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

no image

さよなら、SKYPE

MSのSkype買収--相乗効果で狙う顧客基盤拡大 - CNET Japan近所に住んでる仲の良かっ

記事を読む

【wordpress】buddypressでの子テーマの作リ方

先日BuddyPressのインストール方法をお伝えしましたが、インストールしたままテーマを変

記事を読む

cakephp2にACLプラグインを入れてみた

cakephpで、ユーザーによって権限やアクセスを変えたりする方法を調べてたら、それ用のプラ

記事を読む

no image

eclipseのリソース名を変更する

ちょっとキョドったのでエントリー。 1. eclipse > エクスプローラー から名前を変更

記事を読む

no image

WEBは入り口

スクール革命っていう、日曜の昼に放送してる番組見てたら、「近いうちに夢を録画できるようになる

記事を読む

cakephp

cakephpでPHPのタイムゾーン設定してないとエラーが出る件

ロリポップからさくらにサーバを変えたのは先日のエントリーの通りですが、サーバ環境が違うことでca

記事を読む

【解説】Googleウェブマスターツールの使い方

サイトの分析やアクセス解析のツールと言えばGoogleAnalyticsですよね。 このブ

記事を読む

no image

ロリポップ+お名前.comで独自ドメイン取得

onamae.com で独自ドメイン取得しました。 そのときのメモ。 1.lollipo

記事を読む

no image

moodleをインストールしてみた

Eラーニングの話題が上がったので、調査のためMoodleをインストールしてみました。 1.

記事を読む

WEBサイトの表示速度をスピードアップする方法

サイトの表示が遅いので、いくつかツールを使ってチューニングすることにしました。 まず初めに

記事を読む

Google AD

Google AD

PAGE TOP ↑