このトピックでは、ApsaraDB RDS for PostgreSQLインスタンスに接続する方法について説明します。 データ管理 (DMS) 、コマンドラインツール、pgAdmin、またはアプリケーションを使用して、RDSインスタンスに接続できます。
前提条件
- ApsaraDB RDS for PostgreSQL インスタンスの作成
- アカウントの作成
- Configure an IP address whitelist for an ApsaraDB RDS for PostgreSQL instance
- ECS (Elastic Compute Service) インスタンスから内部ネットワーク経由でRDSインスタンスに接続する場合、次の要件が満たされます。
- ECSインスタンスとRDSインスタンスは同じAlibaba Cloudアカウントに属しています。
- ECSインスタンスとRDSインスタンスは同じリージョンにあります。
- ECSインスタンスとRDSインスタンスは、同じ仮想プライベートクラウド (VPC) に存在します。
- ECSインスタンスのプライベートIPアドレスがRDSインスタンスのIPアドレスホワイトリストに追加されます。 詳細については、「ApsaraDB RDS for PostgreSQLインスタンスのIPアドレスホワイトリストの設定」をご参照ください。
DMSを使用したRDSインスタンスへの接続
ApsaraDB RDSコンソールにログインし、接続するRDSインスタンスを見つけて、[基本情報] ページに移動します。 ページの右上隅にある [データベースにログイン] をクリックします。 次に、RDSインスタンスにログインするために必要な情報を入力します。
![[データベースにログオン] ボタン](https://help-static-aliyun-doc.aliyuncs.com/assets/img/ja-JP/4089272761/p174701.png)
詳細については、「DMS を使用した RDS インスタンスへのログイン」をご参照ください。
pgAdminを使用したRDSインスタンスへの接続
PostgreSQL公式WebサイトからPostgreSQLソフトウェアパッケージをダウンロードしてPostgreSQLをインストールすると、pgAdmin 4が自動的にダウンロードされてインストールされます。 YouまたダウンロードpgAdmin PostgreSQL公式ウェブサイトからソフトウェアパッケージ。
- pgAdmin 4を起動します。 説明 バージョン4以降のバージョンのpgAdminを使用し、pgAdminを初めて使用する場合は、パスワードなどの保存されたログイン資格情報を保護するためにマスターパスワードを指定する必要があります。
- [サーバー] を右クリックし、 を選択します。
- [作成-サーバー] ダイアログボックスの [全般] タブで、pgAdminがインストールされているサーバーの名前を入力します。
- ClickをConnectionタブと入力に接続するために使用される情報RDSインスタンス。
項目 説明 ホスト名 /アドレス RDSインスタンスのエンドポイントを入力します。 If RDSに接続したい上インスタンス内部ネットワーク、内部RDSのエンドポイント入力インスタンス。 インターネット経由でRDSインスタンスに接続する場合は、RDSインスタンスのパブリックエンドポイントを入力します。 詳細については、「インスタンスのイントラネットアドレスとインターネットアドレスの表示」をご参照ください。 ポート 指定されたエンドポイントに関連付けられているポート番号を入力します。 ユーザー名 RDSインスタンスへのログインに使用するアカウントのユーザー名を入力します。 Forより情報のためアカウントを作成する方法についてRDSインスタンス、データベースとアカウントの作成参照してください。 Password EnterアカウントのパスワードをRDSにログオンするために使用されるインスタンス。 - [保存] をクリックします。 入力した情報が正しい場合、次の図に示すページが表示され、RDSインスタンスへの接続が成功したことが示されます。重要 postgresデータベースはデフォルトのシステムデータベースです。 このデータベースに対して操作を実行しないでください。
コマンドラインツールを使用したRDSインスタンスへの接続
PostgreSQL公式WebサイトからPostgreSQLソフトウェアパッケージをダウンロードしてPostgreSQLをインストールすると、PostgreSQLコマンドラインツールが自動的にダウンロードされてインストールされます。
psql -h <エンドポイント> -U <ユーザー名> -p <ポート番号> -d <データベース名>

項目 | URL の取得方法 |
---|---|
エンドポイント: | RDSインスタンスへの接続に使用されるエンドポイント。 詳細については、「インスタンスのイントラネットアドレスとインターネットアドレスの表示」をご参照ください。 |
ユーザー名 | Theユーザー名のために使用されるアカウントにログオンRDSインスタンス。 [アカウント] ページからユーザー名を取得できます。 アカウントの作成方法の詳細については、「アカウントの作成」をご参照ください。 |
ポート番号 | RDSインスタンスへの接続に使用されるポート番号。 既定のポート番号は 5432 です。 ポート番号を変更した場合は、[データベース接続] ページから新しいポート番号を取得できます。 詳細については、「インスタンスのイントラネットアドレスとインターネットアドレスの表示」をご参照ください。 |
データベース名 | RDSインスタンスで接続するデータベースの名前。 postgresデータベースはデフォルトのシステムデータベースです。 このデータベースに対して操作を実行しないでください。 接続するデータベースの名前は、[データベース接続] ページから取得できます。 データベースの作成方法の詳細については、「ApsaraDB RDS for PostgreSQLインスタンスでのデータベースの作成」をご参照ください。 |
SQL Shell (psql) を使用したRDSインスタンスへの接続
PostgreSQL公式WebサイトからPostgreSQLソフトウェアパッケージをダウンロードしてPostgreSQLをインストールすると、SQL Shell (psql) が自動的にダウンロードされてインストールされます。
コンピューターの [スタート] メニューを開き、[SQLシェル (psql)] をクリックします。 次に、RDSインスタンスに接続するために必要なパラメーターを入力します。

項目 | URL の取得方法 |
---|---|
Server | RDSインスタンスへの接続に使用されるエンドポイント。 詳細については、「インスタンスのイントラネットアドレスとインターネットアドレスの表示」をご参照ください。 |
データベース | The名のデータベースに接続したいRDSインスタンス。 If指定しないこのパラメータ、デフォルト値はpostgres。 postgresデータベースはデフォルトのシステムデータベースです。 このデータベースに対して操作を実行しないでください。 を取得することができYou名のデータベースから接続したいDatabases Connectionページ。 データベースの作成方法の詳細については、「ApsaraDB RDS for PostgreSQLインスタンスでのデータベースの作成」をご参照ください。 |
ポート | Theポート番号に接続するために使用されるRDSインスタンス。 既定のポート番号は 5432 です。 Ifあなたのポート番号を変更された、あなたを取得することができ新しいポート番号からDatabase Connectionページ。 詳細については、「インスタンスのイントラネットアドレスとインターネットアドレスの表示」をご参照ください。 |
ユーザー名 | Theユーザー名のために使用されるアカウントにログオンRDSインスタンス。 You取得することができユーザ名からAccountsページ。 アカウントの作成方法の詳細については、「アカウントの作成」をご参照ください。 |
アプリケーションを使用したRDSインスタンスへの接続
- pom.xmlファイルに依存関係を追加します。
<dependency> <groupId>postgresql</groupId> <artifactId>postgresql</artifactId> <version>8.2-504.jdbc3</version> </dependency>
- 次のコードスニペットは、JDBCを使用してRDSインスタンスに接続する方法の例を示しています。
パブリッククラスDatabaseConnection { public static void main( String[] args ){ try { Class.forName("org.postgresql.Driver"); } catch (ClassNotFoundException e) { e.printStackTrace(); } // エンドポイント 文字列ホスト名="pgm-bp1i3kkq7321o9 **** .pg.rds.aliyuncs.com"; // ポート番号 int port = 5432; // データベース名 文字列dbname = "postgres"; // ユーザー名 文字列username = "username"; //Password String password = "password"; String dbUrl = "jdbc:postgresql://" + hostname + ":" + port + "/" + dbname + "?binaryTransfer=true"; Connection dbConnection; try { dbConnection = DriverManager。getConnection(dbUrl、ユーザ名、パスワード) 。 ステートメントステートメント=dbConnection.createStatement(); //SQLステートメント実行したい String selectSql = "SELECT * FROM information_schema.sql_features LIMIT 10"; ResultSet resultSet = statement.exe cuteQuery(selectSql); while (resultSet.next()) { System.out.println(resultSet.getString("feature_name")); } } catch (SQLException e) { e.printStackTrace(); } } }
RDSインスタンスのSSL暗号化の設定
RDSインスタンスのSSL暗号化を設定できます。 SSL暗号化は、RDSインスタンスへの接続を暗号化し、接続を介して送信されるデータを保護するために使用されます。 詳細については、「SSL経由でApsaraDB RDS for PostgreSQLインスタンスに接続する」をご参照ください。
よくある質問
Function Computeを使用してRDSインスタンスからデータを取得するにはどうすればよいですか。
Function Computeにサードパーティの依存関係をインストールできます。 次に、これらの組み込み依存関係を使用して、ApsaraDB RDSからデータを取得できます。 詳細については、「サードパーティの依存関係のインストール」をご参照ください。