オープンソースのリレーショナルデータベース管理システム(RDBMS) PostgreSQLを管理・運用するにあたり、ブラウザベースの GUI管理ツール phpPgAdminを CentOSサーバーにインストールしていますが、データベースやテーブルの定義書を印刷するため、HTMLファイルに定義書を出力できるクライアント型の GUI管理ツール PgAdmin を Windowsパソコンにインストールします。

ダウンロード

PgAdminの公式サイトから以下のファイルをダウンロードします。
  • Windows
    • ≪pgAdmin v1.18.1  pgadmin3-1.18.1.zip
(※)下線部は 2014/06/01現在の最新リリース番号です。

インストール

ダウンロードした pgAdmin を任意のフォルダに展開します。
展開したフォルダ内の pgadmin3.msi を実行するとインストールが開始されます。
(※)クリックすると移動可能な拡大画像がポップアップします。画像は Windows8.1 64bitのものです。
pgadmin0101.png
インストールのためのセットアップウィザードの開始画面です。

Next』で次に進みます。
pgadmin0102.png
ライセンスの確認画面です。

accept the terms in the License Agreementにチェックを入れ、『Next』で次に進みます。
pgadmin0103.png
インストールオプションの設定画面です。

デフォルトのままにしています。
Next』で次に進みます。
pgadmin0104.png
インストールの開始確認画面です。

Install』でインストールが開始されます。
pgadmin0105.png
インストールの実行中画面です。

終了するまで待ちます。
pgadmin0106.png
セットアップウィザードの終了画面です。

Finish』で終了します。

接続設定

インストールした Windowsパソコンのクライアントツールで CentOSの PostgreSQLサーバーに接続するためには、PostgreSQLサーバーの設定ファイル pg_hba.conf で接続する Windowsパソコンの IPアドレスを許可する必要があります。
CentOSサーバー《一般ユーザー権限で実行しています》
$ sudo vi /var/pgsql/data/pg_hba.conf
----------(vi ここから)----------
       :
# IPv4 local connections:
host    all             postgres        192.168.201.0/32        md5
       :
----------(vi ここまで)----------

# 設定を反映させるため、PostgreSQLサーバーを再起動します
$ sudo service pgsql restart

上記の方法では外部から PostgreSQLサーバーに接続する必要がある場合に IPアドレスを都度許可設定しなければなりません。
公衆無線 LAN環境からの接続を考えると IPアドレスによる許可設定を都度行わなければならず、またセキュリティ面から接続を終えた後は許可設定を削除する必要もあります。
当サイトでは、外部からのサーバー接続は SSHで行うことが前提となっていますので、SSHクライアント PuTTYの PFwdによるトンネル(ポートフォワード) で PostgreSQLサーバーに接続することにしました。
Windowsパソコンの PFwdの設定例は以下になります。
※Windowsパソコン側のローカル環境にも PostgreSQLサーバーをインストールしていますので、CentOSサーバーへの接続監視ポートを 15432にしています。
【PC】PuTTY_HOME\pfwd.ini
[SSH]
       :
[FORWARD]
       :
; PostgreSQL
03=L15432:localhost:5432
       :

この場合は、PostgreSQLサーバーの pg_hba.confに接続する Windowsパソコンの IPアドレスを許可設定する必要はありません

PgAdmin設定とサーバー接続

PFwdによるトンネル(ポートフォワード)で PostgreSQLサーバーに接続しますので、必ず PuTTYの PFwdを起動してから PgAdminを起動します。
(※)クリックすると移動可能な拡大画像がポップアップします。画像は Windows8.1 64bitのものです。
pgadmin0201.png
接続する PostgreSQLサーバーを追加します。
pgadmin0202.png
Port には PFwdに設定したポート番号を指定しています。

OK』で PgAdminで接続する PostgreSQLサーバーが登録されます。
pgadmin0203.png
登録した PostgreSQLサーバーをダブルクリックするか、右クリックで『接続(C)』を選択すると PFwdを経由して CentOSサーバーの PostgreSQLに接続されます。

レポート出力

PgAdminで PostgreSQLサーバーに接続すると各種レポートを出力することができます。
各オブジェクトにより出力できるレポートが異なりますが、例としてテーブル一覧を出力してみます。
(※)クリックすると移動可能な拡大画像がポップアップします。画像は Windows8.1 64bitのものです。
pgadmin0301.png
出力対象データベースのテーブルを右クリックします。
レポートの出力が可能なオブジェクトの場合『レポート(R)』が選択できます。

レポート(R)』で、さらにレポートの種類を選択します。

テーブル一覧ですので『Object List Report』を選択します。
pgadmin0302.png
出力するレポートのタイトル、出力ファイル名等を入力します。

OK』でレポートが指定したファイル名で作成されます。
pgadmin0303.png
出力されたレポートをブラウザで表示すると、このようなイメージで出力されます。

管理ツールですので、当然のことながらレポートを出力するだけではなく、SQLの実行や GUIによるデータベース操作も行うことができます。

フィードバック

記事の内容についてのご質問、ご指摘、その他ご意見等は下記にてお願いいたします。
System House ACT公式ブログ内記事 :
pgAdmin - PostgreSQL GUI管理ツール

トラックバックまたはコメントにてお寄せください。