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

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

DB インスタンスを作成する最も簡単な方法は、RDS コンソールを使用することです。DB インスタンスを作成したら、pgAdmin などの SQL 標準クライアントユーティリティを使用して、DB インスタンスに接続できます。この例では、db.t2.micro DB インスタンスクラスと 20 ギビバイト (GiB) のストレージを使用して、database-1 という PostgreSQL データベースエンジンを実行する DB インスタンスを作成します。

重要

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

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

Amazon RDS の基本的な構成要素は DB インスタンスです。これは、PostgreSQL データベースを実行する環境です。

コンソール

[Easy create (簡易作成)] を有効または無効にして、AWS マネジメントコンソール を使用して PostgreSQL を実行する DB インスタンスを作成できます。[Easy create (簡易作成)] を有効にして、DB エンジンタイプ、DB インスタンスサイズ、および DB インスタンス識別子のみを指定します。[Easy create (簡易作成)] では、他の設定オプションにデフォルト設定を使用します。[Easy Create (簡易作成)] が有効になっていない場合は、データベースの作成時に、可用性、セキュリティ、バックアップ、メンテナンスなどの設定オプションを追加指定します。

この例では、[Easy Create (簡易作成)] を使用して、DB インスタンスクラスが db.t2.micro の PostgreSQL データベースエンジンを実行する DB インスタンスを作成します。

注記

[Easy Create (簡易作成)] が無効になった状態で DB インスタンスを作成する方法については、「Amazon RDS DB インスタンスの作成」を参照してください。

Easy Create を有効にして PostgreSQL DB インスタンスを作成するには

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

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

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

  4. [Create database (データベースの作成)] を選択し、[Easy create (簡易作成)] が選択されていることを確認します。

    
    							Easy Create オプション
  5. [設定] で、[PostgreSQL] を選択します。

  6. [DB インスタンスサイズ] で、[無料利用枠] を選択します。

  7. [DB インスタンス識別子] に、DB インスタンスの名前を入力するか、デフォルト名のままにします。

  8. [マスターユーザー名] に、マスターユーザーの名前を入力するか、デフォルト名のままにします。

    [データベースの作成] ページは、次の図のようになります。

    
    							データベースの作成ページ
  9. DB インスタンス用に自動生成されたマスターパスワードを使用するには、[パスワードの自動生成] チェックボックスがオンになっていることを確認します。

    マスターパスワードを入力するには、[パスワードの自動生成] チェックボックスをオフにして、[マスターパスワード] と [パスワードの確認] に同じパスワードを入力します。

  10. (オプション) [View default settings for Easy create (簡易作成のデフォルト設定を表示)] を開きます。

    
    							簡易作成のデフォルト設定。

    [Easy Create (簡易作成)] が有効な場合に使用されるデフォルト設定を調べることができます。データベースの作成中に1つ以上の設定を変更する場合は、[Standard Create (標準作成)] を選択して設定します。[Editable after database creation (データベース作成後に編集可能)] 列には、データベース作成後に変更できるオプションが表示されます。その列で [No (いいえ)] の設定を変更するには、[Standard Create (標準作成)] を使用します。その列で [Yes (はい)] の設定の場合は、[Standard Create (標準作成)] を使用するか、作成後に DB インスタンスを変更して設定を変更できます。

  11. [データベースの作成] を選択します。

    自動生成されたパスワードを使用することを選択した場合は、[データベース] ページに [認証情報の詳細の表示] ボタンが表示されます。

    DB インスタンスのマスターユーザー名およびパスワードを表示するには、[認証情報の詳細の表示] を選択します。

    
    							自動パスワード生成後のマスターユーザー認証情報。

    マスターユーザーとして DB インスタンスに接続するには、表示されているユーザー名およびパスワードを使用します。

    重要

    マスターユーザーのパスワードを再度表示することはできません。記録していない場合は、変更する必要がある場合があります。DB インスタンスが有効になった後にマスターユーザーのパスワードを変更する必要がある場合は、そのように DB インスタンスを変更することができます。DB インスタンスの変更の詳細については、「Amazon RDS DB インスタンスを変更する」を参照してください。

  12. [データベース] で、新しい PostgreSQL DB インスタンスの名前を選択します。

    RDS コンソールに、新規の DB インスタンスの詳細が表示されます。DB インスタンスが使用できるようになるまで、DB インスタンスのステータスは creating です。ステータスが [available] に変わると、DB インスタンスに接続できます。DB インスタンスクラスとストレージの合計によっては、新しいインスタンスを使用できるようになるまで最長 20 分かかることがあります。

    
    							DB インスタンスの詳細のスクリーンショット。

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. DB インスタンスのエンドポイント (DNS 名) とポート番号を見つけます。

    1. RDS コンソールを開き、[データベース] を選択して、DB インスタンスを一覧表示します。

    2. PstgreSQL DB インスタンス名を選択して、詳細を表示します。

    3. [接続とセキュリティ] タブで、エンドポイントをコピーします。また、ポート番号を書き留めます。DB インスタンスに接続するには、エンドポイントとポート番号の両方が必要です。

      
    										PostgreSQL DB インスタンスへの接続
  2. http://www.pgadmin.org/ から pgAdmin をインストールします。pgAdmin は、クライアントコンピュータに PostgreSQL のローカルインスタンスがなくても、ダウンロードして使用できます。

  3. クライアントコンピュータの pgAdmin アプリケーションを起動します。

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

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

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

    
								PostgreSQL の接続
  6. [OK] を選択します。

  7. オブジェクトブラウザで、[Server Groups] を展開します。作成したサーバー (DB インスタンス) を選択し、データベース名を選択します。

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

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

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

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

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

psql --host=DB_instance_endpoint --port=port --username=master_user_name --password --dbname=database_name

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

psql --host=database-1.c6c8dntfzzhgv0.us-west-1.rds.amazonaws.com --port=5432 --username=awsuser --password --dbname=postgres

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

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

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

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

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

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

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

  2. ナビゲーションペインで、[データベース] を選択します。

  3. 削除する DB インスタンスを選択します。

  4. [ Actions] では、[Delete] を選択します。

  5. [最終スナップショットを作成しますか?] で [No] を選択し、確認を選択します。

  6. [Delete] を選択します。