サーバ

管理ツールで管理するデータベースサーバの登録や削除をします。

サーバの登録

サーバの登録では、データベースクラスタの新規作成既存データベースクラスタの取り込み旧バージョンからデータを移行して作成リモートサーバの登録 を行うことができます。

データベースクラスタの新規作成

データベースクラスタと呼ばれる、データ格納領域を作成・初期化します。

  1. 「サーバ」から「サーバを登録」を選択します。

  2. サーバ情報を入力します。

    1. 「ラベル」の欄にサーバの名前を入力します。

      ラベルは、管理ツールでサーバを識別するのに使われます。 また、Windows ではこれがサービス名になります。

    2. 「ポート」の欄にポート番号を入力します。

      ポートは、デフォルトでは 5432 になっています。

      注意

      ここで登録したポート番号は、基本的にはあとで変更ができません。 postgresql.conf を直接編集して port を変更しても、サーバ登録時のポート番号が使用されます。

      もし変更が必要になった場合は、サーバを削除して再登録する際に変更後のポート番号を指定してください。

    3. 「ローカルのサーバを管理」が選択されていることを確認します。

    4. 「進む」ボタンをクリックします。

    5. 「データベースディレクトリ」の欄に、データベースディレクトリを作りたいディレクトリを絶対パスで入力 (あるいは選択) します。

    6. 「新規データベースクラスタを作成」にチェックを入れます。

    7. 「進む」ボタンをクリックします。

    8. 「文字エンコーディング」の欄に文字エンコーディングを入力します。

      この設定がデータベースのデフォルトの文字エンコーディングとなります。 日本語を使うには「UTF8」または「EUC_JP」を使用するのが一般的です。

    9. 「スーパユーザ名」の欄にスーパユーザに指定しようとしているユーザの名前を入力します。

      スーパーユーザ名は、デフォルトでは postgres です。

    10. 「パスワード」、「パスワード (再確認)」の欄にパスワードを入力します。

    11. 「パラメータチューニングも実施する」をチェックすると、データベースクラスタの作成後に postgresql.conf 内のパラメータのチューニングも行います。

      パラメータのチューニングについては「設定」の「チューニング」を参照してください。

    12. 「進む」ボタンをクリックします。

  3. (Windows のみ) データベースクラスタ作成操作 (initdb) を行うユーザを指定します。

  4. 問題がなければ、新規データベースクラスタが作成され、以下のように登録したサーバ情報が表示されます。

作成できない場合のヒント

データベースクラスタ作成 (initdb) に失敗することがあります。 よくあるのは実行したユーザに指定したディレクトリのアクセス権限がないというケースです。

失敗した理由は PowerGres Manager のログファイルに出力されます。 ログファイルは以下のパスに作成されるの、その内容を確認してください。

Windows の場合

%APPDATA%\PowerGres91\powergres-mgr91.log

Linux の場合

$HOME/.powergres91/powergres-mgr91.log

Windows の場合の %APPDATA% はユーザのアプリケーションデータを格納するフォルダを表します。 Windows 7 の場合には、通常、C:\Users\(ユーザ名)\AppData\Roaming になります。 Linux の場合の $HOME はユーザのホームディレクトリを表します。

接続認証のヒント

管理ツールからデータベースクラスタを作成した場合、データベースへの接続にパスワード認証が必要になるように設定されます。 設定を変更するには設定ファイル pg_hba.conf を編集する必要があります。 管理ツールから pg_hba.conf を編集する方法については「設定」の「接続認証 (pg_hba.conf)」を参照してください。

既存データベースクラスタの取り込み

すでに作成済みのデータベースクラスタを取り込むことによって、そのデータベースクラスタを管理することができます。

  1. 「サーバ」から「サーバを登録」を選択します。

  2. サーバ情報を入力します。

    1. 「ラベル」の欄にサーバの名前を入力します。

      ラベルは、管理ツールでサーバを識別するのに使われます。 また、Windowsではこれがサービス名になります。

    2. 「ポート」の欄にポート番号を入力します。

      ポートは、デフォルトでは 5432 になっています。

      注意

      ここで登録したポート番号は、基本的にはあとで変更ができません。 postgresql.conf を直接編集して port を変更しても、サーバ登録時のポート番号が使用されます。

      もし変更が必要になった場合は、サーバを削除して 再登録する際に変更後のポート番号を指定してください。

        
    3. 「ローカルのサーバを管理」が選択されていることを確認します。

    4. 「進む」ボタンをクリックします。

    5. 「データベースディレクトリ」の欄に、データベースディレクトリが存在するディレクトリを絶対パスで入力 (あるいは選択) します。

    6. 「既存のデータベースクラスタを使用」にチェックを入れます。

    7. 「進む」ボタンをクリックします。

    8. 「OK」ボタンをクリックします。

      問題がなければ、以下のように登録したサーバ情報が表示されます。

    旧バージョンからデータを移行して作成

    PowerGres V9.0、PostgreSQL 9.0 のデータをダンプ・リストアを行わずに PowerGres 9.1 に移行できます。 PowerGres V9.0、PostgreSQL 9.0 より前のバージョンからの移行や、異なるアーキテクチャ (Windows と Linux、32 ビットと 64 ビット、など) 間の移行には対応していません。

    データの移行時にはデータベースサーバの停止が必要となりますが、データのダンプ・リストアを行った場合と比べて高速に移行できます。

    機能としては PostgreSQL 8.3、8.4 からのデータ移行にも対応していますが、PowerGres V9.0、PostgreSQL 9.0 でデータ形式に関するコンパイル時のオプションが変更されたため、移行元のバージョンで PowerGres V9.1 と同じオプション (--disable-integer-datetimes) が指定されていないと移行できません。

    1. 「サーバ」から「サーバを登録」を選択します。

    2. サーバ情報を入力します。

      1. 「ラベル」の欄にサーバの名前を入力します。

        ラベルは、管理ツールでサーバを識別するのに使われます。 また、Windows ではこれがサービス名になります。

      2. 「ポート」の欄にポート番号を入力します。

        ポートは、デフォルトでは 5432 になっています。 移行元と同じポート番号を入力してください。

        注意

        ここで登録したポート番号は、基本的にはあとで変更ができません。 postgresql.conf を直接編集して port を変更しても、サーバ登録時のポート番号が使用されます。

        もし変更が必要になった場合は、サーバを削除して 再登録する際に変更後のポート番号を指定してください。

          
      3. 「ローカルのサーバを管理」が選択されていることを確認します。

      4. 「進む」ボタンをクリックします。

      5. 「データベースディレクトリ」の欄に、移行先のデータベースディレクトリを絶対パスで入力 (あるいは選択) します。

      6. 「旧バージョンからデータを移行して作成」にチェックを入れます。

      7. 「進む」ボタンをクリックします。

      8. 移行元のソフトウェアを選択します。

        「PowerGres V9.0 から」を選択すると、「bin ディレクトリ」にデフォルトのディレクトリが入力されます。

      9. bin ディレクトリ」の欄に、旧バージョンの PowerGres (PostgreSQL) のバイナリが存在するディレクトリを絶対パスで入力 (あるいは選択) します。

        PowerGres をデフォルト以外のディレクトリにインストールしている場合や、PostgreSQL からデータの移行を行う場合には、入力する必要があります。

      10. 「データベースディレクトリ」の欄に、旧バージョンのデータベースディレクトリが存在するディレクトリを絶対パスで入力 (あるいは選択) します。

      11. 「進む」ボタンをクリックします。

      12. 「文字エンコーディング」の欄に文字エンコーディングを入力します。

        この設定がデータベースのデフォルトの文字エンコーディングとなります。 日本語を使うには「UTF8」または「EUC_JP」を使用するのが一般的です。

      13. 「スーパユーザ名」の欄にスーパユーザに指定しようとしているユーザの名前を入力します。

        スーパーユーザ名は、デフォルトでは postgres です。 移行元のスーパーユーザと同じ名前を入力してください。

      14. 「パスワード」、「パスワード (再確認)」の欄にパスワードを入力します。

      15. 「パラメータチューニングも実施する」をチェックすると、データベースクラスタの作成後に postgresql.conf 内のパラメータのチューニングも行います。

        パラメータのチューニングについては「設定」の「チューニング」を参照してください。

      16. 「進む」ボタンをクリックします。

    3. (Windows のみ) データベースクラスタ作成操作 (initdb) を行うユーザを指定します。

    4. データの移行が開始されます。

    5. 問題がなければ、以下のように登録したサーバ情報が表示されます。

    リモートサーバの登録

    PowerGres Manager とは異なるホスト上で動作する PowerGres をリモートサーバとして登録します。 リモートサーバとして登録した場合には、PowerGres Manager の一部の機能しか使用できません。

    1. 「サーバ」から「サーバを登録」を選択します。

    2. サーバ情報を入力します。

      1. 「ラベル」の欄にサーバの名前を入力します。

        ラベルは、管理ツールでサーバを識別するのに使われます。 また、Windows ではこれがサービス名になります。

      2. 「サーバ」の欄に PowerGres の動作するホスト名または IP アドレスを入力します。

        注意

        リモートサーバを登録する前にサービスを開始しておく必要があります。 また、デフォルトではリモートホストからの接続を受け付けるようになっていないため、「listen_addresses」パラメータや接続認証の設定を行っておく必要があります。

      3. 「ポート」の欄にポート番号を入力します。

        ポートは、デフォルトでは 5432 になっています。

        注意

        ここで登録したポート番号は、基本的にはあとで変更ができません。 postgresql.conf を直接編集して port を変更しても、サーバ登録時のポート番号が使用されます。

        もし変更が必要になった場合は、サーバを削除して再登録する際に変更後のポート番号を指定してください。

      4. 「リモートのサーバを管理」が選択されていることを確認します。

      5. 「進む」ボタンをクリックします。

    3. 「OK」ボタンをクリックします。

      問題がなければ、以下のように登録したサーバ情報が表示されます。

    サーバの削除

    管理ツールからサーバを削除します。

    1. サーバの一覧から、削除したいサーバのラベルを選択します。

    2. 「サーバ」から「サーバの削除」を選択します。

    3. 確認が出ますので、よろしければ「OK」ボタンをクリックします。

      「データベースディレクトリも同時に削除する」をチェックすると、サーバの削除時にデータベースディレクトリも同時に削除します。 データベースディレクトリを削除する場合には、あらかじめ削除するサーバのサービスを停止しておく必要があります。

    4. サーバの一覧からサーバが削除されます。

    ヒント

    ここでいうサーバの削除とは、管理ツールの管理対象から外すということです。 「データベースディレクトリも同時に削除する」をチェックしなければ、データベースクラスタのディレクトリは削除されません。

    また、サービスが稼動中であってもサーバを削除できますし、その場合にサービスが停止することはありません。 Windows では、サービス稼働中にサーバを削除した場合、サービスの停止後に Windows サービスが解除されます。

    サービスが稼動中のままサーバを削除した場合、対象のデータベースクラスタを完全に取り除くには、サービスを停止 して、管理ツールから削除をして、データベースクラスタのディレクトリを OS の機能を使って削除する、という手順を行います。