【phpPgAdmin】PHPで書かれたPostgreSQL管理ツール
phpPgAdminとは
phpPgAdmin は、PHP で書かれた PostgreSQL 管理ツールです。
データベースやテーブルの作成を行ったり、
各種 SQL 文の発行、データのインポートやエクスポート
データの編集を SQL 文を作成することなくブラウザから行うことができます。
現在の最新版は、phpPgAdmin 5.1
phpPgAdmin対応環境
PHP 5.0 以上。
PostgreSQL 8.4.x, 9.0.x, 9.1.x, 9.2.x
phpPgAdminダウンロード
下記の URL から入手できます。
Download – phppgadmin.sourceforge.net
「phpPgAdmin-5.1.zip 」と書かれたリンクをクリックします。
そうすると sourceforge.net のページに移動してダウンロードが自動的に開始されます。
phpPgAdminインストール
ダウンロードしたファイルを解凍して、
Apache 等のウェブサーバーのドキュメントルート内に配置するだけで完了です。
解凍すると「phpPgAdmin-5.1」というフォルダ名で作成されるので
必要に応じて変更しましょう。
※今回は、「phpPgAdmin」としました。
以降の説明では、この設定であるとして書いていきます。
phpPgAdminの設定
conf/config.inc.php を自環境に応じて編集します。
$conf['servers’][0]['host’] = '127.0.0.1’;
$conf['servers’][0]['pg_dump_path’] = '/usr/bin/pg_dump’;
$conf['servers’][0]['pg_dumpall_path’] = '/usr/bin/pg_dumpall’;
Windows だと
$conf['servers’][0]['pg_dump_path’] = 'PostgreSQLインストールパス\\pg_dump.exe’;
$conf['servers’][0]['pg_dumpall_path’] = 'PostgreSQLインストールパス\\pg_dumpall.exe’;
必要に応じて、「true」から「false」に変更します。
$conf['extra_login_security’] = false;
phpPgAdminの動作確認
「php.ini」テキストエディタで開いて、「extension=php_pgsql.dll」で検索します。
以下のような記述が見つかると思います。
;extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll
;extension=php_pspell.dll
「extension=php_pgsql.dll」と書かれた行の先頭に
セミコロン(;)が付いていたら、セミコロンを削除します。
ファイルを保存して、ウェブサーバーを再起動します。
ブラウザーから次の URL へアクセスします。
※「phpPgAdmin」の部分は、ご自身の環境に合わせて修正してください。
phpPgAdmin が正常に動作していれば、下記のような画面が表示されます。
日本語化
自動判別で画面表示は「日本語」になっていると思いますが
もし、表示内容が日本語以外であったならば、言語を日本語に変更します。
「Language」と書かれたドロップダウンリストから「日本語」を選択します。
変更すると自動的に画面がリフレッシュされます。
ログイン
画面左メニューの「サーバー名」をクリックします。
そうするとログイン画面が表示されるので、ユーザー名とパスワードを入力して
「ログイン」ボタンをクリックします。
備考
ブラウザーから phpPgAdmin にアクセスした際に
下記のメッセージが表示される場合があります。
「データベースをサポートするように PHP のコンパイル・インストールがされていません。configure の –with-pgsql オプションを用いて PHP を再コンパイルする必要があります。」
Windows だと「extension=php_pgsql.dll」を有効化するだけでは駄目みたいで、
phpinfo()関数を実行してみると「pgsql」項目も表示されていないと思います。
対処方法は、環境変数「Path」に「php」のインストールパスを追加します。
「c:\php」にインストールしているのなら、「c:\php」を環境変数「Path」に追加します。
追加したら、Windows を再起動します。
再起動したら、phpinfo()関数を実行して、「pgsql」項目が表示されているかを確認しましょう。