RDS PostgreSQL實例支持通過多種方式連接(如通過數據管理DMS、pgAdmin客戶端、PostgreSQL命令行工具、應用程序等),實現您的業務目標。本文介紹這些連接方法的具體操作。
前提條件
已創建RDS PostgreSQL實例。更多信息,請參見創建RDS PostgreSQL實例。
已創建賬號和數據庫。更多信息,請參見創建賬號和數據庫。
已設置白名單,允許客戶端所在的ECS或本地設備訪問RDS PostgreSQL實例。更多信息,請參見設置白名單
如果使用ECS通過內網訪問RDS PostgreSQL,ECS和RDS PostgreSQL實例需要位于同一個地域的同一VPC下,然后將ECS的私網IP添加到白名單。
如果使用本地設備訪問RDS PostgreSQL,則將本地設備的公網IP添加到白名單。
操作步驟
數據管理DMS連接
數據管理DMS是一種集數據管理、結構管理、用戶授權、安全審計、數據趨勢、數據追蹤、BI圖表、性能與優化和服務器管理于一體的數據管理服務。數據管理DMS的更多信息,請參見什么是數據管理DMS 。
- 訪問RDS實例列表,在上方選擇地域,然后單擊目標實例ID。
在基本信息頁面單擊登錄數據庫。
在DMS的登錄實例頁面,輸入實例數據庫的賬號密碼,單擊登錄。
說明請確保登錄的數據庫賬號擁有目標數據庫的權限,否則在左側菜單里看不到目標數據庫。
登錄后請刷新頁面,然后在左側已登錄實例菜單即可看到實例內已創建的數據庫。
除了通過RDS控制臺跳轉到DMS進行登錄,您還可以登錄DMS控制臺直接錄入RDS實例,錄入后可以在DMS控制臺快速登錄數據庫。詳情請參見云數據庫錄入。
pgAdmin客戶端連接
pgAdmin客戶端是PostgreSQL官方推薦的數據庫連接工具,在PostgreSQL官方網站下載并安裝PostgreSQL時,將會自動安裝pgAdmin 4客戶端。下文以pgAdmin 4 V6.2.0
為例,介紹如何連接RDS PostgreSQL實例。
如果您不想安裝PostgreSQL,也可以單獨下載pgAdmin客戶端,僅用于連接遠程數據庫。
啟動pgAdmin 4客戶端。
說明高版本客戶端首次登錄需要設置Master Password用于保護保存的密碼和其他憑據。
右鍵單擊Servers,選擇
。在General頁簽設置連接名稱。
選擇Connection標簽頁,輸入要連接的實例信息。
參數
說明
Host name/address
RDS PostgreSQL實例的連接地址及對應的端口。
若通過內網連接,需輸入RDS實例的內網地址和內網端口。
若使用外網連接,需輸入RDS實例的外網地址和外網端口。
您可以在RDS PostgreSQL實例的數據庫連接頁面查看。
更多信息,請參見查看或修改連接地址和端口。
Port
Username
RDS PostgreSQL實例的賬號和密碼。
創建RDS實例的賬號請參見創建賬號和數據庫。
Password
單擊Save。
若連接信息無誤,會出現如下界面,則表示連接成功。
重要postgres是RDS實例默認的系統數據庫,請勿在該數據庫中進行任何操作。
PostgreSQL命令行工具連接
通過PostgreSQL官方網站下載并安裝PostgreSQL時,將會自動安裝PostgreSQL命令行終端工具(Command Line Tools)。
在命令行終端中輸入如下命令連接RDS PostgreSQL數據庫。
psql -h <實例連接地址> -U <用戶名> -p <端口號> [-d <數據庫名>]
參數 | 說明 |
實例連接地址 | RDS PostgreSQL實例的連接地址及對應的端口。
您可以在RDS PostgreSQL實例的數據庫連接頁面查看。 更多信息,請參見查看或修改連接地址和端口。 |
端口號 | |
用戶名 | RDS PostgreSQL實例的賬號。 創建RDS實例的賬號請參見創建賬號和數據庫。 |
數據庫名 | 可選,需要連接的數據庫名,postgres是RDS PostgreSQL實例默認的系統數據庫,請勿在該數據庫中進行任何操作,建議配置RDS實例下已創建的其他數據庫。 如何創建和查看數據庫,請參見創建數據庫。 |
應用程序連接
本文以Maven項目JDBC連接RDS PostgreSQL實例為例,其它編程語言連接方式類似。
pom.xml中添加依賴。
<dependency> <groupId>postgresql</groupId> <artifactId>postgresql</artifactId> <version>8.2-504.jdbc3</version> </dependency>
連接實例示例代碼如下:
public class DatabaseConnection { public static void main( String[] args ){ try { Class.forName("org.postgresql.Driver"); } catch (ClassNotFoundException e) { e.printStackTrace(); } //實例連接地址 String hostname = "pgm-bp1i3kkq7321o9****.pg.rds.aliyuncs.com"; //實例連接端口 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 PostgreSQL支持接入Power BI,在Power BI中對數據進行獲取、清洗、建模和可視化展示等操作,實現數據分析。下文以Power BI 2.112.1161.0 64-bit
版本為例,介紹如何連接RDS PostgreSQL實例。
下載并安裝Power BI Desktop客戶端。下載方法請參見獲取 Power BI Desktop。
啟動Power BI Desktop客戶端。
在頂部菜單欄選擇主頁頁簽,然后單擊
。在獲取數據對話框中選擇
,然后單擊連接。在PostgreSQL 數據庫對話框中,分別設置服務器和數據庫后,單擊確定。
參數
說明
服務器
RDS PostgreSQL實例的連接地址和對應的端口。
格式:
連接地址:端口
若通過內網連接,需輸入RDS實例的內網地址和內網端口。
若使用外網連接,需輸入RDS實例的外網地址和外網端口。
您可以在RDS PostgreSQL實例的數據庫連接頁面查看。
更多信息,請參見查看或修改連接地址和端口。
數據庫
postgres是RDS PostgreSQL實例默認的系統數據庫,請勿在該數據庫中進行任何操作,建議配置RDS實例下已創建的其他數據庫。
如何創建和查看數據庫,請參見創建數據庫。
填寫RDS PostgreSQL實例的用戶名和密碼后,單擊連接。
說明創建RDS實例的賬號請參見創建賬號和數據庫。
在加密支持對話框中單擊確定。
連接成功后,即可在導航器窗口中查看數據庫中的表信息,您可以根據業務需求,選中目標表后,選擇加載或轉換數據操作。
RDS PostgreSQL支持接入Smartbi,在Smartbi中對數據進行分析處理,滿足您在企業級報表、數據可視化分析、自助探索分析、數據挖掘建模、AI 智能分析等大數據分析需求。下文以Smartbi V10.5
版本為例,介紹如何連接RDS PostgreSQL實例。
根據Smartbi官方安裝指導,完成申請License、Smartbi客戶端的下載、安裝以及啟動Smartbi服務。
在開始菜單,單擊訪問Smartbi。
輸入賬號和密碼后,單擊登錄,進入Smartbi。
說明管理員默認登錄賬號為admin,密碼為manager。
如果是首次登錄,則需要修改管理員密碼。
在左側單擊,選擇
。在新建關系數據庫對話框中配置相關參數,然后單擊測試連接(T)。
參數
說明
名稱
數據庫連接的名稱,自定義。
驅動程序類型
固定選擇為PostgreSQL。
驅動程序類
選擇驅動程序類型后自動選擇,無需修改。
連接字符串
連接RDS PostgreSQL實例的JDBC連接串,格式如下:
jdbc:postgresql://<servername>:<port>/<dbName>?defaultRowFetchSize=10000
<servername>:<port>:RDS PostgreSQL實例的連接地址和對應的端口。
若通過內網連接,需輸入RDS實例的內網地址和內網端口。
若使用外網連接,需輸入RDS實例的外網地址和外網端口。
您可以在RDS PostgreSQL實例的數據庫連接頁面查看。
更多信息,請參見查看或修改連接地址和端口。
<dbName>:postgres是RDS PostgreSQL實例默認的系統數據庫,請勿在該數據庫中進行任何操作。
建議配置RDS實例下已創建的其他數據庫。如何創建和查看數據庫,請參見創建數據庫。
用戶名、密碼
創建RDS實例的賬號請參見創建賬號。
測試通過后,單擊保存,出現如下信息,表示連接成功。
SSL連接
RDS PostgreSQL支持設置SSL鏈路加密,對網絡連接進行加密,保證傳輸鏈路的安全。具體配置請參見SSL連接RDS PostgreSQL數據庫。
連接失敗的解決辦法
請參見解決無法連接實例問題。
常見問題
Q:我使用函數計算,想獲取RDS的數據,要怎么操作呢?
A:您可以為函數安裝第三方依賴,使用內置模塊獲取RDS數據,詳情請參見為函數安裝第三方依賴。