Status Shower for PostgreSQL
HOME  

Status Shower for PostgreSQL

Status Shower for PostgreSQLは、PostgreSQLのパフォーマンス統計やロック状況をモニタするためのソフトウェアです。
PostgreSQLでのパフォーマンスチューニングに役立つ情報を提供します。



特徴

  • PostgreSQL 7.2以上に対応しています。
    (PostgreSQLが稼動しているOSは不問です)
  • 以下の情報がグラフ表示可能です。
    • キャッシュヒット率
    • ディスク読込ブロック数
    • 論理読込ブロック数
    • セッション数
    • バックグラウンドライタ統計(PostgreSQL 8.3以上)
  • 以下の情報がリスト表示可能です。
    • 実行時パラメータ(PostgreSQL 7.3以上)
    • 接続中のセッションと実行中のSQL
    • ロック(PostgreSQL 7.3以上)
    • バッファキャッシュ上のオブジェクト
      (PostgreSQL 8.1以上でpg_buffercache(contrib)がインストールされていること)
screen shot

動作環境

  • Windows 2008 / Vista / 2003 / XP / 2000 / NT4 / Me / 98
  • Microsoft .NET Framework Version 2.0~3.5 日本語版
  • Microsoft Data Access Components(MDAC) 2.6以上

対応データベース

  • PostgreSQL 7.2~8.3

ダウンロード

Status Shower  Ver.1.6  shareware (¥2,100)


更新履歴(Ver.1.6)

  • pg_buffercache(contrib)が利用できるデータベースで、バッファキャッシュ内に存在するリレーションのページ数を表示する機能を追加
  • 過去の変更履歴

インストール方法

ダウンロードしたファイルを適当なフォルダに展開してください。
展開されたファイル(statusshower.exe)を実行することで起動します。

使用上の注意

  • 全ての機能を利用するためには、以下のサーバー実行時パラメータを適切に設定しなければいけません。
    • PostgreSQL 8.3以降
      • track_activities = true
      • track_counts = true
    • PostgreSQL 8.2以前
      • stats_start_collector = true
      • stats_command_string = true
      • stats_block_level = true
  • Status Shower for PostgreSQLはシェアウェアです。
    継続して使用する場合は、代金の支払い方法に従って、代金をお支払いください。
  • 著作権は作者である kunyami が保持します。
  • このソフトウェアの使用による、いかなる損害に対しても、作者は一切の責任を負いません。
  • 本ソフトウェアをリバースエンジニアリング、逆コンパイル、逆アセンブル、または第三者をして、それらの行為を行わせることはできません。
  • 著作権者の許可なく、第三者に配布することはできません。
  • 第三者に本ソフトウェアの使用権を譲渡、貸与することはできません。
  • データベースの操作にNpgsqlを利用しています。
    Npgsqlの著作権はThe Npgsql Development Teamが保持します。
    NpgsqlのライセンスはLGPLです。Npgsqlのソースコードが必要な場合はこちらより入手可能です。
  • グラフの表示にNPlotを利用しています。
    This product includes software developed as part of the NPlot library project available from: http://www.nplot.com/

評価期間中の機能制限

代金をお支払いいただきライセンス登録をすることで、以下の制限が解除されます。
  • データベースの接続情報を保存することができません。
  • グラフの更新間隔が3秒、表示期間が30秒間に制限され、変更することができません。
  • セッションアクティビティおよびロックのリストを最新の状態に更新することができません。
  • リストのフォントを変更することができません。

代金の支払い方法

既知の問題点

現リリースのバージョンでは、以下の問題を認識しています。
  • データベース停止時にエラーとなり再開できない
  • 子ウィンドウを多く開くと、親ウィンドウから少しはみ出ることがある
  • PostgreSQL 7.1以下のデータベースに接続しようとすると、アプリケーションがフリーズする

SSHポートフォワーディングによる接続

PostgreSQLは、pg_hba.confやpostgresql.confなどのtcpip_socket、listen_addressesパラメータによって接続することのできるクライアントを制限することが可能です。
インターネット上のPostgreSQLサーバーでは、これを利用してlocalhostや特定のIPアドレスからしか接続を受け付けないようにしていることも多いでしょう。
その場合でもPostgreSQLに接続できるホストにSSHで接続することができれば、SSHポートフォワーディングを利用することで、それ以外のクライアントからでもStatus Shower for PostgreSQLを利用することができます。
ここでは、以下のソフトウェアを利用してSSHポートフォワーディングで接続する方法を紹介します。

Status Shower for PostgreSQLを利用してチューニング対象を決定する例

  • ディスク読込ブロック数からチューニング対象を決定する方法
    1. データベースクラスタの「ディスク読込ブロック数」でディスク読込みの多いデータベースを特定します。
    2. 前の手順で特定したデータベースの「ディスク読込ブロック数」でディスク読込の多いテーブルを特定します。
    3. 前の手順で特定したテーブルにアクセスしているSQLをチューニングし、論理読込ブロック数を減らすようにします。
      SQLのチューニングは、実行計画を確認しながら行ってください。
      実行計画の確認にはSQL Shower for PostgreSQLをご利用ください。
  • セッションアクティビティからチューニング対象を決定する方法
    1. 各データベースの「セッションアクティビティ」から時間のかかっているSQL(「SQL開始時刻」が古いSQL)を特定します。
    2. 前の手順で特定したSQLをチューニングします。
      SQLのチューニングは、実行計画を確認しながら行ってください。
      実行計画の確認にはSQL Shower for PostgreSQLをご利用ください。
SQLのチューニングとは、SQL文を適切に書き換えるだけでなく、インデックスを作成するなどのことも含まれます。
ここに上げた例はあくまで一例です。状況によってはこれ以外の方法が適切な場合もあります。

作者への連絡・サポート

Status Shower for PostgreSQLに関する不具合報告・ご意見・ご提案・メディアへの掲載依頼などの作者への連絡はこちらからお願いいたします。

©2005-2008 kunyami