メニュー
Amazon Relational Database Service
ユーザーガイド (API Version 2014-10-31)

PostgreSQL DB インスタンスを作成して PostgreSQL DB インスタンスのデータベースに接続する

DB インスタンスを作成する最も簡単な方法は、RDS コンソールを使用することです。DB インスタンスを作成すると、pgAdmin などの SQL 標準クライアントユーティリティを使用して、DB インスタンスに接続できます。この例では、west2-postgres1 という名前の PostgreSQL データベースエンジンを実行する DB インスタンスを、db.m1.small DB インスタンスクラス、10 GB のストレージ、保持期間が 1 日に設定された自動バックアップという設定で作成します。

重要

DB インスタンスを作成したり、DB インスタンスに接続したりする前に、「Amazon RDS のセットアップ」セクションのタスクを実行する必要があります。

PostgreSQL DB インスタンスを作成する

PostgreSQL DB エンジンを実行する DB インスタンスを作成するには

  1. AWS マネジメントコンソールにサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/) を開きます。

  2. AWS マネジメントコンソールの右上隅で、DB インスタンスを作成するリージョンを選択します。

  3. ナビゲーションペインで、[Instances] を選択します。

  4. [Launch DB Instance] を選択して、DB インスタンス起動ウィザードを開始します。

    ウィザードが起動し、[Select Engine] ページが開きます。

     エンジンの選択
  5. [Select Engine] ページで、[PostgreSQL] アイコンを選択し、[Select] を選択します。

  6. 次に、[Production?] ページで、作成中の DB インスタンスを本稼働環境で使用するかどうかを指定します。使用する場合は、[Production] で [PostgreSQL] を選択します。このオプションを選択すると、以下の手順では、フェイルオーバーオプション [マルチ AZ] と [Provisioned IOPS] ストレージオプションがすでに選択されています。完了したら、[Next Step] を選択します。

  7. [Specify DB Details] ページで、DB インスタンスの情報を指定します。完了したら、[Next Step] を選択します。

    パラメーター 操作

    License Model

    PostgreSQL のライセンスモデルは 1 つのみです。[postgresql-license] を選択して、PostgreSQL の一般ライセンス契約を使用します。

    DB Engine Version

    使用する PostgreSQL のバージョンを選択します。

    DB インスタンスクラス

    [db.t2.small] を選択します。構成は、メモリ 2 GB、1 ECU (1 ECU の仮想コア 1 個)、64 ビットプラットフォーム、中程度の I/O キャパシティに相当します。DB インスタンスクラスのすべてのオプションの詳細については、「DB インスタンスクラス」を参照してください。

    マルチ AZ 配置

    [Yes] を選択して、フェイルオーバーのサポート用に DB インスタンスのスタンバイレプリカが別のアベイラビリティーゾーンに作成されるようにします。本稼働環境のワークロードには、高可用性を維持するためにマルチ AZ をお勧めします。開発およびテスト用に、[No] を選択することもできます。

    詳細については、「高可用性 (マルチ AZ) 」を参照してください。

    ストレージタイプ

    ストレージのタイプで [General Purpose (SSD)] を選択します。ストレージの詳細については、「Amazon RDS のストレージ」を参照してください。

    Allocated Storage

    5 と入力します。5 GB 分のストレージがデータベース用に割り当てられます。場合によっては、DB インスタンスに、データベースのサイズ以上のストレージを割り当てると、I/O のパフォーマンスが改善することがあります。ストレージの割り当ての詳細については、「Amazon Relational Database Service の機能」を参照してください。

    DB Instance Identifier

    DB インスタンス名を入力します。選択したリージョン内で、自分のアカウントに対して一意であることが必要です。わかりやすい名前にするには、選択したリージョンと DB エンジンを名前に含めます (例: postgreSQL-test)。

    Master Username

    DB インスタンスにログオンするためのマスターユーザー名を英数字で入力します。マスターユーザー名に付与されるデフォルト権限の詳細については、「Amazon RDS PostgreSQL 計画に必要になる情報」を参照してください。

    [Master Password] と [Confirm Password]

    マスターパスワードとして 8 ~ 128 個の表示可能な ASCII 文字 (/、"、@ 以外) を入力し、[Confirm Password] ボックスに同じパスワードをもう一度入力します。

     DB インスタンスの詳細
  8. [Configure Advanced Settings] ページに、RDS で PostgreSQL DB インスタンスを起動するために必要な追加情報を入力します。次の表は、サンプルの DB インスタンスの設定を示しています。DB インスタンス情報を指定した後、[Launch DB Instance] を選択します。

    パラメーター 操作

    VPC

    この設定はプラットフォームによって異なります。AWS の新規のお客様の場合は、表示されているデフォルトの VPC を選択します。VPC を使用しない以前の E2 Classic プラットフォームで DB インスタンスを作成する場合は、[Not in VPC] を選択します。VPC の詳細については、「Amazon Virtual Private Cloud (VPCs) と Amazon RDS」を参照してください。

    サブネットグループ

    この設定はプラットフォームによって異なります。AWS の新規のお客様の場合は、[default] を選択します。お客様のアカウントのために作成されたデフォルトの DB サブネットグループが使用されます。前の E2 Classic プラットフォームで DB インスタンスを作成しているときに、特定の VPC の DB インスタンスが必要な場合は、その VPC 用に作成した DB サブネットグループを選択します。VPC の詳細については、「Amazon Virtual Private Cloud (VPCs) と Amazon RDS」を参照してください。

    パブリックアクセス可能

    VPC の外部でアクセスできることを意味するパブリック IP アドレスを DB インスタンスに割り当てる場合は [Yes] を選択します。それ以外の場合は [No] を選択して、VPC 内からのみ DB インスタンスにアクセスできるようにします。DB インスタンスをパブリックアクセスから隠す方法については、「VPC の DB インスタンスをインターネットから隠す 」を参照してください。

    アベイラビリティーゾーン

    デフォルト値 [No Preference] を使用します。ただし、特定のアベイラビリティーゾーンを指定する場合を除きます。

    VPC セキュリティグループ

    AWS の新規のお客様の場合は、デフォルトの VPC を選択します。VPC のセキュリティグループを作成した場合は、先に作成した VPC セキュリティグループを選択します。

    Database Name

    データベースの名前を、英数字 63 文字以内で入力します。名前を指定しない場合、デフォルトの "postgres" データベースが作成されます。

    追加のデータベースを作成するには、DB インスタンスに接続し、SQL コマンド CREATE DATABASE を使用します。DB インスタンスへの接続の詳細については、「PostgreSQL データベースエンジンを実行する DB インスタンスへの接続」を参照してください。

    Database Port

    データベースへのアクセスに使用するポートを指定します。PostgreSQL のインストールでは、ポート 5432 がデフォルトとなります。

    DB Parameter Group

    デフォルト値を使用します。ただし、独自のパラメータグループを作成済みの場合を除きます。

    Option Group

    デフォルト値を使用します。ただし、独自のオプショングループを作成済みの場合を除きます。

    タグをスナップショットへコピー

    スナップショットの作成時に DB インスタンスタグを DB スナップショットへコピーするには、このオプションを選択します。詳細については、「Amazon RDS リソースのタグ付け」を参照してください。

    暗号を有効化

    この DB インスタンスを保管時に暗号化するには、[Yes] を選択します。詳細については、「Amazon RDS リソースの暗号化」を参照してください。

    バックアップの保存期間

    データベースの自動バックアップを保持する日数を設定します。テスト目的で、この値を [1] に設定できます。

    バックアップウィンドウ

    データベースのバックアップを保持する期間を指定しない場合は、デフォルト値 [No Preference] を使用します。

    Enable Enhanced Monitoring

    [Yes] を選択して、リアルタイムの OS モニタリングを有効にします。Amazon RDS には、DB インスタンスが実行されているオペレーティングシステム (OS) のリアルタイムのメトリクスが用意されています。料金は、Amazon CloudWatch Logs に示された無料利用枠を超えた拡張モニタリングに対してのみ発生します。

    モニタリングロール

    IAM ロールを使用するには、[Default] を選択します。

    詳細度

    インスタンスを毎分モニタリングするには、[60] を選択します。

    Auto Minor Version Upgrade

    DB インスタンスで、DB エンジンのマイナーバージョンアップグレードをリリースの際に自動的に受信するには、[Yes] を選択します。

    メンテナンス時間

    DB インスタンスへの変更保留が適用される 30 分単位のウィンドウを選択します。期間が重要ではない場合は、[No Preference] を選択します。

     [Additional Configuration] パネル
  9. ウィザードの最終ページで、[View Your DB Instances] を選択します。

  10. Amazon RDS コンソールでは、新しい DB インスタンスが DB インスタンスのリストに表示されます。DB インスタンスが作成されて使用できるようになるまで、DB インスタンスのステータスは creating となります。ステータスが [available] に変わると、DB インスタンスに接続できます。DB インスタンスクラスと割り当てられたストレージによっては、新しいインスタンスを使用できるようになるまで数分かかる場合があります。

     [My DB Instances] リスト

PostgreSQL DB インスタンスに接続する

Amazon RDS によって DB インスタンスがプロビジョニングされると、標準の SQL クライアントアプリケーションを使用してインスタンスに接続できます。作成時に DB インスタンスに割り当てたセキュリティグループにより、DB インスタンスへのアクセスを許可する必要がある点に注意することが重要です。DB インスタンスに接続する際に問題が発生した場合、通常は DB インスタンスに割り当てられたセキュリティグループでセットアップしたアクセスルールに問題があります。

このセクションでは、PostgreSQL DB インスタンスに接続する 2 つの方法について説明します。最初の例では、オープンソースの PostgreSQL 向け管理開発ツールとして人気のある pgAdmin を使用します。pgAdmin は、クライアントコンピュータに PostgreSQL のローカルインスタンスがなくても、ダウンロードして使用できます。2 番目の例では、PostgreSQL に付属するコマンドラインユーティリティである psql を使用します。psql を使用するには、クライアントコンピュータに PostgreSQL をインストールしているか、または psql クライアントをインストールしている必要があります。

この例では、pgAdmin を使用して PostgreSQL DB インスタンスに接続します。

pgAdmin を使用した PostgreSQL DB インスタンスへの接続

pgAdmin を使用して PostgreSQL DB インスタンスに接続するには

  1. クライアントコンピュータの pgAdmin アプリケーションを起動します。pgAdminhttp://www.pgadmin.org/ からインストールできます。

  2. [File] メニューの [Add Server] を選択します。

  3. [New Server Registration] ダイアログボックスで、DB インスタンスのエンドポイント (例: mypostgresql.c6c8dntfzzhgv0.us-west-2.rds.amazonaws.com) を [Host] ボックスに入力します。Amazon RDS コンソールに表示されているコロンとポート番号 (mypostgresql.c6c8dntfzzhgv0.us-west-2.rds.amazonaws.com :5432) は含めないでください。

    DB インスタンスに割り当てたポートを [Port] ボックスに入力します。DB インスタンスの作成時に入力したユーザー名とパスワードをそれぞれ [Username] および [Password] ボックスに入力します。

     Postgres に接続
  4. [OK] を選択します。

  5. [Object browser] で [Server Groups] を展開します。作成したサーバー (DB インスタンス) を選択し、データベース名を選択します。

     Postgres に接続
  6. プラグインアイコンをクリックし、[PSQL Console] を選択します。作成したデフォルトデータベース用の psql コマンドウィンドウが開きます。

     Postgres に接続
  7. コマンドウィンドウを使用して、SQL コマンドまたは psql コマンドを入力します。ウィンドウを閉じるには、\q と入力します。

psql を使用した PostgreSQL DB インスタンスへの接続

クライアントコンピュータに PostgreSQL がインストールされている場合は、psql のローカルインスタンスを使用して、PostgreSQL DB インスタンスに接続できます。psql を使用して PostgreSQL DB インスタンスに接続するには、ホスト情報とアクセス認証情報を指定する必要があります。

Amazon RDS 上の PostgreSQL DB インスタンスに接続する際は、次の形式が使用されます。

Copy
psql --host=<DB instance endpoint> --port=<port> --username=<master user name> --password --dbname=<database name>

たとえば、次のコマンドは、架空の認証情報を使用して、mypostgresql という PostgreSQL DB インスタンス上の mypgdb というデータベースに接続します。

Copy
psql --host=mypostgresql.c6c8mwvfdgv0.us-west-2.rds.amazonaws.com --port=5432 --username=awsuser --password --dbname=mypgdb

接続の問題のトラブルシューティング

DB インスタンスでデータベースに接続する際に非常によくある問題は、DB インスタンスに割り当てられたセキュリティグループの問題です。DB インスタンスの作成時にデフォルト DB セキュリティグループを使用した場合、インスタンスへのアクセスを許可するルールがセキュリティグループになかった可能性が高いと考えられます。Amazon RDS セキュリティグループの詳細については、「Amazon RDS セキュリティグループ」を参照してください。

最も一般的なエラーは、"could not connect to server: Connection timed out" です。このエラーが発生した場合、ホスト名が DB インスタンスのエンドポイントであること、およびポート番号が正しいことを確認します。接続で経由する可能性のあるファイアウォールを通過するのに必要なルールが、DB インスタンスに割り当てられたセキュリティグループに設定されていることを確認します。

DB インスタンスを削除する

作成したサンプル DB インスタンスに接続したら、料金がこれ以上発生しないように、DB インスタンスを削除してください。

最終的な DB スナップショットを作成しないで DB インスタンスを削除するには

  1. AWS マネジメントコンソールにサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/) を開きます。

  2. [Instances] リストで、削除する DB インスタンスを選択します。

  3. [Instance Actions] をクリックし、ドロップダウンメニューから [Delete] を選択します。

  4. [No] を [Create final snapshot? ] ドロップダウンリストボックスで選択します。

  5. [Yes, Delete] を選択します。