ApsaraDB RDS for PostgreSQL インスタンスを作成し、アカウントの作成や IP アドレスホワイトリストの設定といった必要な設定を完了した後、Data Management (DMS)、pgAdmin クライアント、PostgreSQL CLI、またはアプリケーションを使用して RDS インスタンスに接続できます。本トピックでは、これらの方法を用いて RDS インスタンスに接続する手順を説明します。
前提条件
-
RDS インスタンスが作成されていること。詳細については、「ApsaraDB RDS for PostgreSQL インスタンスの作成」をご参照ください。
-
RDS インスタンスにデータベースが作成され、そのデータベース用のアカウントが作成されていること。詳細については、「アカウントとデータベースの作成」をご参照ください。
-
RDS インスタンスに IP アドレスホワイトリストが設定されていること。これにより、クライアントがデプロイされている Elastic Compute Service (ECS) インスタンスまたはオンプレミスデバイスから RDS インスタンスに接続できます。詳細については、「ApsaraDB RDS for PostgreSQL インスタンスのIPアドレスホワイトリストの設定」をご参照ください。
-
ECS インスタンスから内部ネットワーク経由で RDS インスタンスに接続する場合は、これらのインスタンスが同じリージョンにデプロイされ、同じ Alibaba Cloud アカウントで作成された同じ Virtual Private Cloud (VPC) 内に存在することを確認してください。また、ECS インスタンスのプライベート IP アドレスが RDS インスタンスの IP アドレスホワイトリストに追加されている必要があります。
-
オンプレミスデバイスから RDS インスタンスに接続する場合は、オンプレミスデバイスのパブリック IP アドレスが RDS インスタンスの IP アドレスホワイトリストに追加されていることを確認してください。
-
手順
DMS を使用した RDS インスタンスへの接続
DMS は、データ管理、スキーマ管理、サーバー管理、ユーザー権限付与、セキュリティ監査、トレンド分析、データ追跡、ビジネスインテリジェンス (BI) レポート、パフォーマンス分析および最適化をサポートする統合ソリューションを提供します。詳細については、「Data Management (DMS) とは」をご参照ください。
- RDSインスタンスにアクセスし、上部のリージョンを選択し、対象のRDSインスタンスのIDをクリックします。
-
[基本情報] ページで、[データベースにログオン] をクリックします。

-
DMS コンソールの [データベースインスタンスへのログオン] ダイアログボックスで、ログオンに使用するアカウントのユーザー名とパスワードを入力し、[Login] をクリックします。
説明ログオンに使用するアカウントには、対象のデータベースに対する権限が必要です。権限がない場合、そのデータベースは左側メニューに表示されません。

-
ページを更新します。DMS コンソールの左側メニューで、[接続済みインスタンス] をクリックして、RDS インスタンス用に作成されたデータベースを表示します。

-
DMS コンソールに直接ログオンして、RDS インスタンスを DMS に追加することもできます。その後、DMS コンソールで RDS インスタンスの指定されたデータベースに切り替えることができます。詳細については、「クラウドデータベースインスタンスの登録」をご参照ください。
-
アカウントのパスワードをリセットした後は、再度 DMS にログオンする必要があります。
pgAdmin を使用した RDS インスタンスへの接続
pgAdmin は、RDS インスタンスへの接続に利用できる、推奨の PostgreSQL クライアントです。PostgreSQL の公式ウェブサイトから PostgreSQL ソフトウェアパッケージをダウンロードして PostgreSQL をインストールすると、[pgAdmin 4] が自動的にダウンロードされ、インストールされます。以降では、pgAdmin 4 V6.2.0 を使用して RDS インスタンスに接続する例を説明します。
PostgreSQL をインストールしたくない場合は、リモート接続用に pgAdmin のみをダウンロードできます。
-
[pgAdmin 4] を起動します。
説明新しいバージョンの pgAdmin に初めてログオンする場合は、保存されたパスワードやその他の認証情報を保護するためのマスターパスワードを指定する必要があります。
-
[Servers] を右クリックし、 を選択します。

-
Register - Server ダイアログボックスの [General] タブで、pgAdmin がインストールされているサーバーの名前を入力します。

-
[Connection] タブをクリックします。次に、RDS インスタンスへの接続用パラメータを設定します。

パラメータ
説明
[ホスト名/アドレス]
RDS インスタンスへの接続に使用するエンドポイントとポートです。
-
内部ネットワーク経由で RDS インスタンスに接続する場合は、RDS インスタンスの内部エンドポイントと内部ポートを入力します。
-
インターネット経由で RDS インスタンスに接続する場合は、RDS インスタンスのパブリックエンドポイントとパブリックポートを入力します。
上記の情報は、RDS インスタンスの [データベース接続] ページで確認できます。
詳細については、「ApsaraDB RDS for PostgreSQL インスタンスのエンドポイントとポート番号の表示と変更」をご参照ください。
[ポート]
[ユーザー名]
RDS インスタンスへのログオンに使用するユーザー名とパスワードです。
RDS インスタンスでアカウントを作成する方法の詳細については、「アカウントとデータベースの作成」をご参照ください。
[パスワード]
-
-
[Save] をクリックします。
入力した情報が正しければ、RDS インスタンスへの接続が成功したことを示す、次の図のようなページが表示されます。
重要postgres データベースはデフォルトのシステムデータベースです。postgres データベースに対して操作を実行しないでください。
PostgreSQL CLI を使用した RDS インスタンスへの接続
PostgreSQL の公式ウェブサイトから PostgreSQL ソフトウェアパッケージをダウンロードして PostgreSQL をインストールすると、[「Command Line Tools」という名称の PostgreSQL CLI] が自動的にダウンロードされ、インストールされます。
PostgreSQL CLI で次のコマンドを実行し、RDS インスタンスに接続します。
psql -h <Endpoint> -U <Username> -p <Port> [-d <Database name>]

|
パラメータ |
説明 |
|
Endpoint |
RDS インスタンスへの接続に使用するエンドポイントとポートです。
上記の情報は、RDS インスタンスの [データベース接続] ページで確認できます。 詳細については、「ApsaraDB RDS for PostgreSQL インスタンスのエンドポイントとポート番号の表示と変更」をご参照ください。 |
|
[Port] |
|
|
[Username] |
RDS インスタンスのアカウントです。 RDS インスタンスでアカウントを作成する方法の詳細については、「アカウントとデータベースの作成」をご参照ください。 |
|
[Database Name] |
接続する RDS インスタンス上のデータベース名です。このパラメータはオプションです。postgres という名前のデータベースはデフォルトのシステムデータベースです。postgres データベースに対して操作を実行しないでください。RDS インスタンスの別の既存のデータベースを使用することを推奨します。 RDS インスタンスでデータベースを作成および表示する方法の詳細については、「データベースの作成」をご参照ください。 |
アプリケーションを使用した RDS インスタンスへの接続
このセクションでは、Maven プロジェクトで Java Database Connectivity (JDBC) 接続を設定して RDS インスタンスに接続する方法を説明します。別のプログラミング言語を使用して RDS インスタンスに接続する場合も、手順は同様です。
-
pom.xml ファイルに依存関係を追加します。
<dependency> <groupId>postgresql</groupId> <artifactId>postgresql</artifactId> <version>8.2-504.jdbc3</version> </dependency> -
JDBC を使用して RDS インスタンスに接続します。
public class DatabaseConnection { public static void main( String[] args ){ try { Class.forName("org.postgresql.Driver"); } catch (ClassNotFoundException e) { e.printStackTrace(); } // RDS インスタンスのエンドポイント String hostname = "pgm-bp1i3kkq7321o9****.pg.rds.aliyuncs.com"; // RDS インスタンスのポート番号 int port = 5432; // データベース名 String dbname = "postgres"; // ユーザー名 String username = "username"; // パスワード String password = "password"; String dbUrl = "jdbc:postgresql://" + hostname + ":" + port + "/" + dbname + "?binaryTransfer=true"; Connection dbConnection; try { dbConnection = DriverManager.getConnection(dbUrl, username, password); Statement statement = dbConnection.createStatement(); // 実行する SQL ステートメント String selectSql = "SELECT * FROM information_schema.sql_features LIMIT 10"; ResultSet resultSet = statement.executeQuery(selectSql); while (resultSet.next()) { System.out.println(resultSet.getString("feature_name")); } } catch (SQLException e) { e.printStackTrace(); } } }
サードパーティのレポーティングツールを使用した RDS インスタンスへの接続
ApsaraDB RDS for PostgreSQL では、サードパーティのレポーティングツールを使用してデータを取得、クレンジング、可視化し、データに基づいてモデルを作成できます。これによりデータ分析が容易になります。このセクションでは、Microsoft が提供する Power BI Desktop を使用して RDS インスタンスに接続する例を説明します。この例では、Power BI Desktop 2.112.1161.0 64-bit を使用します。
-
Power BI Desktop をダウンロードしてインストールします。ダウンロード方法の詳細については、「Power BI Desktopの入手」をご参照ください。
-
Power BI Desktop を起動します。
-
上部メニューで [ホーム] タブをクリックし、 を選択します。
-
[データの取得] ダイアログボックスで、 を選択し、[接続] をクリックします。
-
[PostgreSQL database] ダイアログボックスで、[サーバー] パラメータと [データベース] パラメータを設定します。[データ接続モード] セクションで [インポート] を選択します。次に、[OK] をクリックします。
パラメータ
説明
サーバー
RDS インスタンスのエンドポイントとポートです。
値は
エンドポイント:ポート番号の形式です。-
内部ネットワーク経由で RDS インスタンスに接続する場合は、RDS インスタンスの内部エンドポイントと内部ポートを入力します。
-
インターネット経由で RDS インスタンスに接続する場合は、RDS インスタンスのパブリックエンドポイントとパブリックポートを入力します。
上記の情報は、RDS インスタンスの [データベース接続] ページで確認できます。
詳細については、「ApsaraDB RDS for PostgreSQL インスタンスのエンドポイントとポート番号の表示と変更」をご参照ください。
[データベース]
接続する RDS インスタンス上のデータベース名です。postgres という名前のデータベースはデフォルトのシステムデータベースです。postgres データベースに対して操作を実行しないでください。RDS インスタンスの別の既存のデータベースを使用することを推奨します。
RDS インスタンスでデータベースを作成および表示する方法の詳細については、「データベースの作成」をご参照ください。
-
-
[ユーザー名] パラメータと [パスワード] パラメータを設定し、[接続] をクリックします。これらのパラメータには、RDS インスタンスのユーザー名とパスワードを設定します。
説明RDS インスタンスでアカウントを作成する方法の詳細については、「アカウントとデータベースの作成」をご参照ください。
-
[Encryption Support] ダイアログボックスで、[OK] をクリックします。
-
[ナビゲーター] ウィンドウで、データベース内のテーブルに関する情報を確認します。ビジネス要件に基づいて、必要なテーブルを選択し、[読み込み] または [データの変換] をクリックできます。
SSL 接続を使用した RDS インスタンスへの接続
RDS インスタンスに SSL 暗号化を設定できます。SSL 暗号化は、RDS インスタンスへの接続を暗号化し、接続を介して送信されるデータを保護するために使用されます。詳細については、「SSL経由でのApsaraDB RDS for PostgreSQLインスタンスへの接続」をご参照ください。
よくある質問
-
異なるリージョンにデプロイされている ECS インスタンスや、別の Alibaba Cloud アカウントが所有する ECS インスタンスから RDS インスタンスに接続するにはどうすればよいですか。
次のいずれかの方法で RDS インスタンスに接続できます。
-
VPCピアリング接続 を使用して、同じリージョンまたは異なるリージョンの2つの VPC 間にプライベートネットワーク接続を確立します。同じリージョン内の VPC 間のピアリング接続は無料です。
-
Cloud Enterprise Network (CEN) を使用して、内部ネットワーク経由で RDS インスタンスに接続します。詳細については、「同じリージョン内のVPCの接続」、「異なるリージョンにまたがるVPCの接続」、および「アカウントをまたいだVPCの接続」をご参照ください。
-
-
Function Compute を使用して RDS インスタンスからデータを取得するにはどうすればよいですか。
Function Compute にサードパーティの依存関係をインストールできます。次に、これらの依存関係を使用して ApsaraDB RDS からデータを取得できます。詳細については、「サードパーティ依存関係のインストール」をご参照ください。