[pgsql-jp: 36169] Re: log用ディスク領域について

SAKATA Testuo sakata.tetsuo @ lab.ntt.co.jp
2005年 10月 18日 (火) 09:06:10 JST


坂田です。自己フォローです。

SAKATA Testuo wrote:
>>【質問】
>>PostgreSQLのログ(pg_log、pg_clog、pg_xlog)が使用するディスク領域につい 
>>て制限設定をすることは可能でしょうか?また、どのように設定するのでしょうか?
>>
>>【質問経緯】
>>検証環境にて、ログのディスク消費が膨大となり、下記エラーが発生。
>>ERROR:could not access status of transaction 0
>>          could not write to file "/usr/loca/pgsql/data/pg_clog/0005" at 
>>offset 0:
>>デバイスに空き領域がありません
>>
>>何らかの設定で、ログが消費するディスク領域(サイズ)を制限したい。
(略)
> ログの容量増大が原因と想定すると、以下のようなお答えになります。
> 
> (1) WAL(pg_xlog)の容量増加ではないか?
> (2) CLOGファイルの容量増加ではないか?
> (3) 各種のメッセージログの容量増加ではないか?

と、先のメールでは3つの要因を考えましたが、

> 上記の(2)あたりが、利きそうに思うのですが…

(1)は無視してもよく、
(2)のCLOGは1つ256KBしか消費せず、かつエラー発生時には4つしかCLOGファイルはない

と考えると、普通は(3)がもっとも効果がありそうですね。

先に(2)に効果がありそう、と書いたのは仮に一度もVACUUMを実行していない
ならば、DBファイルも(ゴミデータで)肥大しており、それがディスク容量
逼迫の要因になりうる、と考えたためです。
DBの利用形態によっては(参照主体で利用)、DBがゴミで肥大することはないので、
(3)がもっとも効果がありそうです。

先のメールでは、ログの増大がディスク容量逼迫の主原因と仮定していたので、
上記3点の要因では、(3)がもっとも怪しいことになります。

以上、補足して、訂正します。

-- 
坂田 哲夫@NTT サイバースペース研究所
sakata.tetsuo _at_ lab.ntt.co.jp
SAKATA, Tetsuo. Yokosuka JAPAN.



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