DWS是否支持第三方客戶端以及JDBC和ODBC驅動程序?
推薦使用DWS客戶端和驅動程序。 與開源的PostgreSQL客戶端和驅動程序相比,有兩個主要的優點:
- 安全強化:PostgreSQL驅動程序只支持MD5認證,但DWS 驅動程序支持SHA256和MD5。
- 數據類型增強:DWS驅動程序支持新的數據類型smalldatetime和tinyint。
DWS支持開源PostgreSQL客戶端和JDBC和ODBC驅動程序。
兼容的客戶端和驅動程序版本如下:
- PostgreSQL的psql 9.2.4或更高版本
- PostgreSQL JDBC驅動程序9.3-1103或更高版本
- PSQL ODBC 09.01.0200或更高版本
使用JDBC/ODBC連接DWS,可參見數據倉庫服務用戶開發指南文檔中的《教程:使用JDBC或ODBC開發》。
可以通過SSH連接DWS集群的節點嗎?
不可以。
DWS底層通過虛擬機實現數據分析功能,即DWS的計算節點。但您不能通過SSH方式直接連接DWS 計算節點,您僅能通過DWS服務提供的內網或公網訪問地址連接相應的DWS 集群數據庫。
無法連接數據倉庫集群時怎么處理?
檢查原因
基本原因可能有以下幾種:
- 集群狀態是否正常。
- 連接命令是否正確,用戶名、密碼、IP地址或端口無誤。
- 安裝客戶端的操作系統類型、版本是否正確。
- 安裝客戶端的操作是否正確。
如果是在云平臺環境無法連接,還需要檢查以下可能導致異常的原因:
- 彈性云主機是否與集群在相同可用區、虛擬私有云、子網和安全組。
- 安全組的出入規則是否正確。
如果是在互聯網環境無法連接,還需要檢查以下可能導致異常的原因:
- 用戶網絡是否與互聯網可以正常連通。
- 用戶網絡防火墻策略是否限制了訪問。
- 用戶網絡是否需要通過代理才能訪問互聯網。
聯系服務人員
如果無法確定原因并解決問題,請聯系企業管理員。
為什么在互聯網環境連接DWS后,解綁了EIP不會立即返回失敗消息?
這是因為解綁了EIP后,會導致網絡斷開。但是此過程中,TCP協議層因keepalive等的設置,無法及時識別物理連接已經故障,導致gsql,ODBC和JDBC等客戶端無法及時識別網絡故障。
客戶端等待數據庫返回的時間與keepalive參數的設置相關,具體可以表示為:keepalive_time + keepalive_probes * keepalive_intvl。
因為keepalive參數涉及到網絡的通信的穩定性,所以可根據具體的業務壓力與網絡狀況進行調整。
如果是Linux環境,使用sysctl命令修改如下參數:
- net.ipv4.tcp_keepalive_time
- net.ipv4.tcp_keeaplive_probes
- net.ipv4.tcp_keepalive_intvl
以修改net.ipv4.tcp_keepalive_time參數值為例,執行如下命令將參數值修改為120秒:
sysctl net.ipv4.tcp_keepalive_time=120
如果是Windows環境,修改注冊表“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters”中的如下配置信息:
- KeepAliveTime
- KeepAliveInterval
- TcpMaxDataRetransmissions(相當于tcp_keepalive_probes)
說明如果以上參數不在注冊表“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters”中,可以在注冊表編輯器對應路徑下右鍵單擊“新建 > DWORD值”進行添加。
使用公網IP連接集群時如何設置白名單?
用戶可以登錄VPC管理控制臺手動創建一個安全組,然后回到DWS 創建集群頁面,單擊“安全組”下拉列表旁邊的
按鈕,刷新后在“安全組”下拉列表中選擇新建的安全組。
為了使DWS客戶端可以連接集群,用戶需要在新建的安全組中添加一條入規則,開放DWS 集群的數據庫端口的訪問權限。
- 協議:TCP。
- 端口范圍:8000。指定為創建DWS 集群時設置的數據庫端口,這個端口是DWS 用于接收客戶端連接的端口。
- 源地址:選中“IP地址”,然后指定為客戶端主機的IP地址,例如“192.168.0.10/32”。
添加入方向規則

添加完成后,即設置白名單成功。