2015年04月01日
このエントリーをはてなブックマークに追加
ずいぶん前に構築したきり、あまり手を触れていませんでした。
ということで、改めて調べてみました。
デスクネッツのバージョンにも影響がありますので、注意です。

データベースの最適化について教えてください。
[Windowsサーバー - PostgreSQLの場合]
> cd C:\Program Files\PostgreSQL\9.2\bin
 > vacuumdb.exe -z -f -U postgres dneodb
 > reindexdb.exe -U postgres dneodb
 > vacuumdb.exe -z -f -U postgres dneoftsdb
 > reindexdb.exe -U postgres dneoftsdb

[Linuxサーバー - PostgreSQLの場合]
 # su – postgres
 $ cd /usr/local/pgsql/bin/
 $ vacuumdb -z -f dneodb
 $ reindexdb dneodb
 $ vacuumdb -z -f dneoftsdb
 $ reindexdb dneoftsdb

ここで、vacuumdb については、現在は autovacuum が有効になっているため、日々実行する必要はなさそうです。
reindexdb については、テーブルの行が全体的にロックされるようです。そのため停止できる時間を設ける必要がありそうです。
また時間について、reindexdb は 100G ぐらいのデータで、4時間~5時間ぐらいかかるようです。
■データベース(PostgreSQL)の保守作業にかかる時間の目安
※HP DL120 G6 なのでちょっと前ですね。

僕の環境では、vacuumdb のFULLはなんだか止める時間とのトレードオフが悩ましい感じがしました。
数ギガぐらいのDB容量ですが、30分は止めることになると思うので、なんだかデリケートな気がします。


stock_value at 19:50│Comments(0)TrackBack(0)技術:2015年 

トラックバックURL

この記事にコメントする

名前:
URL:
  情報を記憶: 評価: 顔