

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 連線至執行 PostgreSQL 資料庫引擎的資料庫執行個體
<a name="USER_ConnectToPostgreSQLInstance"></a>

在 Amazon RDS 佈建資料庫執行個體之後，您就可以使用任何標準 SQL 用戶端應用程式來連線至執行個體。連線到資料庫執行個體之前，資料庫執行個體必須可用且可存取。您是否可以從 VPC 外部連線到執行個體，取決於您建立 Amazon RDS 資料庫執行個體的方式：
+ 如果您將資料庫執行個體建立為*公有*，VPC 外部的裝置和 Amazon EC2 執行個體都可以連線到您的資料庫。
+ 如果您將資料庫執行個體建立為*私有*，只有 Amazon EC2 執行個體和 Amazon VPC 內的裝置可以連線到您的資料庫。

若要檢查您的資料庫執行個體是公有還是私有，請使用 檢視執行個體的 AWS 管理主控台 **連線與安全**索引標籤。在 **Security** (安全性) 底下會顯示 "Publicly accessible" (可公開存取)值，其中為 No (否) 表示私有，Yes (是) 表示公有。

若要進一步了解不同的 Amazon RDS 和 Amazon VPC 組態，以及這些組態如何影響可存取性，請參閱 [在 VPC 中存取資料庫執行個體的案例](USER_VPC.Scenarios.md)。

**Contents**
+ [安裝 psql 用戶端](#install-psql)
+ [尋找 RDS for PostgreSQL 資料庫執行個體的連線資訊](#postgresql-endpoint)
+ [使用 pgAdmin 連線至 RDS for PostgreSQL 資料庫執行個體](USER_ConnectToPostgreSQLInstance.pgAdmin.md)
+ [使用 psql 連線至 RDS for PostgreSQL 資料庫執行個體](USER_ConnectToPostgreSQLInstance.psql.md)
+ [使用 Amazon Web Services (AWS) JDBC 驅動程式連線至 RDS for PostgreSQL](PostgreSQL.Connecting.JDBCDriver.md)
+ [使用 Amazon Web Services (AWS) Python 驅動程式連線至 RDS for PostgreSQL](PostgreSQL.Connecting.PythonDriver.md)
+ [針對您的 RDS for PostgreSQL 執行個體連線進行疑難排解](USER_ConnectToPostgreSQLInstance.Troubleshooting.md)
  + [錯誤 – 嚴重：資料庫{{名稱}}不存在](USER_ConnectToPostgreSQLInstance.Troubleshooting.md#USER_ConnectToPostgreSQLInstance.Troubleshooting-DBname)
  + [錯誤 – 無法連線至伺服器：連線逾時](USER_ConnectToPostgreSQLInstance.Troubleshooting.md#USER_ConnectToPostgreSQLInstance.Troubleshooting-timeout)
  + [安全性群組存取規則發生錯誤](USER_ConnectToPostgreSQLInstance.Troubleshooting.md#USER_ConnectToPostgreSQLInstance.Troubleshooting-AccessRules)

## 安裝 psql 用戶端
<a name="install-psql"></a>

若要從 EC2 執行個體連線到資料庫執行個體，您可以在 EC2 執行個體上安裝 PostgreSQL 用戶端。若要在 Amazon Linux 2023 上安裝最新版本的 psql 用戶端，請執行下列命令：

```
sudo dnf install postgresql{{<version number>}}
```

若要在 Amazon Linux 2 上安裝最新版本的 psql 用戶端，請執行下列命令：

```
sudo yum install -y postgresql
```

若要在 Ubuntu 上安裝最新版本的 psql 用戶端，請執行下列命令：

```
sudo apt install -y postgresql-client
```

## 尋找 RDS for PostgreSQL 資料庫執行個體的連線資訊
<a name="postgresql-endpoint"></a>

如果資料庫執行個體可用且可存取，您可以透過提供下列資訊給 SQL 用戶端應用程式來連線：
+ 資料庫執行個體端點，做為執行個體的主機名稱 (DNS 名稱)。
+ 資料庫執行個體接聽所在的連接埠。PostgreSQL 的預設連接埠為 5432。
+ 資料庫執行個體的使用者名稱和密碼。PostgreSQL 的預設「主要使用者名稱」是 `postgres`。
+ 資料庫的名稱和密碼 (資料庫名稱)。

 您可以使用 AWS 管理主控台、 AWS CLI [describe-db-instances](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html) 命令或 Amazon RDS API [DescribeDBInstances](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstances.html) 操作來取得這些詳細資訊。

**使用 尋找端點、連接埠號碼和資料庫名稱 AWS 管理主控台**

1. 登入 AWS 管理主控台 ，並在 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)：// 開啟 Amazon RDS 主控台。

1. 開啟 RDS 主控台，然後選擇 **Databases** (資料庫)，以顯示資料庫執行個體清單。

1. 選擇 PostgreSQL 資料庫執行個體名稱以顯示其詳細資訊。

1. 在 **Connectivity & security (連線能力和安全性)** 索引標籤上，複製該端點。另外，請記下連接埠號碼。您需要同時有端點和連接埠號碼，才能連線至資料庫執行個體。  
![從 RDS 主控台取得端點](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/PostgreSQL-endpoint.png)

1. 在 **Configuration (組態)** 索引標籤上，記下資料庫名稱。如果您在建立 RDS for PostgreSQL 執行個體時建立資料庫，您會看到名稱列在資料庫名稱底下。如果您沒有建立資料庫，資料庫名稱會顯示破折號 (‐)。  
![從 RDS 主控台取得資料庫名稱](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/PostgreSQL-db-name.png)

以下是連線至 PostgreSQL 資料庫執行個體的兩個方式。第一個範例使用 pgAdmin，這是常見的 PostgreSQL 開放式原始碼管理和開發工具。第二個範例使用 psql，這是屬於 PostgreSQL 安裝一部分的命令列公用程式。