Prasyarat
Sebelum menghubungkan:
-
Dapatkan titik akhir dan port kluster
Masuk ke Konsol PolarDB. Pada daftar kluster, klik ID kluster untuk membuka halaman Basic Information. Lihat informasi titik akhir di bagian Database Connections.
Catatan
-
Gunakan Cluster Endpoint untuk menghubungkan. Port default adalah 1521.
-
Gunakan titik akhir Private atau Public sesuai dengan lingkungan akses Anda.
-
Untuk mengakses kluster PolarDB dari Instance ECS yang berada dalam VPC yang sama dengan kluster PolarDB, gunakan titik akhir Private.
-
Untuk mengakses kluster PolarDB dari lingkungan lokal Anda, gunakan titik akhir Public. Titik akhir publik tidak tersedia secara default — klik Apply untuk membuatnya.
-
Kluster PolarDB tidak dapat mencapai performa optimal saat dihubungkan melalui public endpoint.
-
Host virtual dan server ringan tidak dapat menghubungkan ke kluster PolarDB melalui titik akhir Private.
-
Buat akun database
Masuk ke Konsol PolarDB. Di daftar kluster, klik ID kluster untuk membuka halaman Basic Information. Di panel navigasi sebelah kiri, pilih untuk membuat akun database.
Catatan
Anda dapat membuat Privileged Account atau Standard Account. Jenis akun ini memiliki izin yang berbeda. Buat akun sesuai kebutuhan Anda.
-
Konfigurasikan daftar putih kluster
Masuk ke Konsol PolarDB. Pada daftar Kluster, klik ID kluster untuk membuka halaman Basic Information. Di panel navigasi sisi kiri, pilih , lalu tambahkan daftar putih IP atau grup keamanan.
Catatan
-
Untuk mengakses kluster PolarDB dari Instance ECS yang berada dalam VPC yang sama dengan kluster PolarDB, tambahkan alamat IP internal Instance ECS ke daftar putih, atau tambahkan security group-nya.
-
Untuk mengakses kluster PolarDB dari Instance ECS yang berada dalam VPC berbeda dari kluster PolarDB, tambahkan alamat IP publik Instance ECS ke daftar putih, atau tambahkan security group-nya.
-
Untuk mengakses kluster PolarDB dari lingkungan lokal Anda, tambahkan alamat IP publik Anda ke daftar putih.
Dapatkan alamat IP publik Anda:
-
Linux: Jalankan curl ifconfig.me.
-
Windows: Jalankan curl ip.me di Command Prompt.
-
macOS: Jalankan curl ifconfig.me di Terminal.
Jika jaringan Anda menggunakan proxy, metode di atas mungkin tidak mengembalikan alamat IP publik aktual Anda. Tambahkan sementara blok CIDR 0.0.0.0/0 ke daftar putih kluster PolarDB. Setelah terhubung, jalankan SELECT pid,usename,datname,client_addr,state,query FROM pg_stat_activity WHERE state = 'active'; untuk menemukan alamat IP publik aktual Anda dan tambahkan ke daftar putih. Kemudian, hapus blok CIDR 0.0.0.0/0.

-
Menambahkan blok CIDR 0.0.0.0/0 ke daftar putih IP memungkinkan semua sumber mengakses kluster. Gunakan blok CIDR ini hanya jika diperlukan.
Anda sekarang dapat menghubungkan ke kluster.
Menghubungkan ke kluster
Pilih metode koneksi.
Gunakan DMS untuk menghubungkan ke kluster
Data Management (DMS) menyediakan administrasi database, audit keamanan, dan optimasi performa. Kelola kluster PolarDB Anda langsung di DMS.
-
Masuk ke Konsol PolarDB. Pada daftar kluster, klik ID kluster untuk membuka halaman Basic Information. Di pojok kanan atas, klik Log On To Database.
-
Di kotak dialog, masukkan akun dan kata sandi database, lalu klik Login.
-
Setelah login, pilih di panel navigasi sebelah kiri untuk mengelola kluster .
Gunakan client untuk menghubungkan ke kluster
Prosedur ini menggunakan pgAdmin 4 v9.0 untuk menghubungkan ke kluster PolarDB.
-
Unduh dan instal client pgAdmin 4.
-
Buka client pgAdmin 4, klik kanan Servers, lalu pilih .
-
Di tab General, atur nama koneksi. Di tab Connection, konfigurasikan parameter koneksi, lalu klik Save.

|
Parameter
|
Deskripsi
|
|
Host name/address
|
Titik akhir dan port kluster PolarDB.
-
Untuk mengakses kluster PolarDB dari Instance ECS yang berada dalam VPC yang sama dengan kluster PolarDB, tentukan titik akhir Private dan port.
-
Untuk mengakses kluster PolarDB dari lingkungan lokal Anda, tentukan titik akhir Public dan port.
-
Port default adalah 1521.
|
|
Port
|
|
Username
|
Akun dan password database kluster PolarDB.
|
|
Password
|
-
Koneksi berhasil akan menampilkan halaman berikut.
Catatan
postgres adalah database sistem default. Jangan melakukan operasi apa pun pada database ini.
Gunakan psql untuk menghubungkan ke kluster
Unduh psql dari PostgreSQL Downloads untuk menghubungkan ke kluster PolarDB. Anda juga dapat menggunakan psql di PolarDB-Tools untuk menghubungkan ke kluster PolarDB.
Sintaks
psql -h <host> -p <port> -U <username> -d <dbname>
|
Parameter
|
Deskripsi
|
|
host
|
Titik akhir dan port kluster kluster PolarDB.
-
Untuk mengakses kluster PolarDB dari Instance ECS yang berada dalam VPC yang sama dengan kluster PolarDB, tentukan titik akhir Private dan port.
-
Untuk mengakses kluster PolarDB dari lingkungan lokal Anda, tentukan titik akhir Public dan port.
-
Port default adalah 1521
|
|
port
|
|
username
|
Akun database kluster PolarDB.
|
|
dbname
|
Nama database.
|
Contoh
psql -h pc-xxx.rwlb.rds.aliyuncs.com -p 1521 -U testusername -d postgres
Menghubungkan ke kluster menggunakan bahasa pemrograman
Menghubungkan ke kluster PolarDB for PostgreSQL (Compatible with Oracle) mirip dengan menghubungkan ke database PostgreSQL biasa — cukup perbarui titik akhir, port, akun, dan kata sandi.
Java
Hubungkan ke kluster PolarDB for PostgreSQL (Compatible with Oracle) menggunakan driver JDBC PostgreSQL dalam proyek Java berbasis Maven.
-
Tambahkan dependensi driver JDBC PostgreSQL ke file pom.xml Anda. Contoh kode:
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.2.18</version>
</dependency>
-
Hubungkan ke kluster. Ganti placeholder <HOST>, <PORT>, <USER>, <PASSWORD>, <DATABASE>, <YOUR_TABLE_NAME>, dan <YOUR_TABLE_COLUMN_NAME> dengan parameter koneksi kluster yang sebenarnya.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class PolarDBConnection {
public static void main(String[] args) {
// URL, username, dan password database.
String url = "jdbc:postgresql://<HOST>:<PORT>/<DATABASE>";
String user = "<USER>";
String password = "<PASSWORD>";
try {
// Muat driver JDBC PostgreSQL.
Class.forName("org.postgresql.Driver");
// Bangun koneksi.
Connection conn = DriverManager.getConnection(url, user, password);
// Buat objek Statement.
Statement stmt = conn.createStatement();
// Eksekusi kueri SQL.
ResultSet rs = stmt.executeQuery("SELECT * FROM <YOUR_TABLE_NAME>");
// Proses set hasil.
while (rs.next()) {
System.out.println(rs.getString("<YOUR_TABLE_COLUMN_NAME>"));
}
// Tutup sumber daya.
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
Python
Hubungkan ke kluster PolarDB for PostgreSQL (Compatible with Oracle) menggunakan library psycopg2 dalam Python 3.
-
Instal library psycopg2.
pip3 install psycopg2-binary
-
Hubungkan ke kluster. Ganti placeholder <HOST>, <PORT>, <USER>, <PASSWORD>, <DATABASE>, dan <YOUR_TABLE_NAME> dengan parameter koneksi kluster yang sebenarnya.
import psycopg2
try:
# Parameter koneksi
conn = psycopg2.connect(
host="<HOST>", # Titik akhir kluster.
database="<DATABASE>", # Nama database.
user="<USER>", # Username.
password="<PASSWORD>", # Password.
port="<PORT>" # Nomor port.
)
# Buat objek cursor.
cursor = conn.cursor()
# Eksekusi kueri.
cursor.execute("SELECT * FROM <YOUR_TABLE_NAME>")
# Dapatkan semua hasil.
records = cursor.fetchall()
for record in records:
print(record)
except Exception as e:
print("Error:", e)
finally:
# Tutup koneksi.
if 'cursor' in locals():
cursor.close()
if 'conn' in locals():
conn.close()
Go
Hubungkan ke kluster PolarDB for PostgreSQL (Compatible with Oracle) menggunakan paket database/sql dan driver lib/pq dalam Go 1.23.0.
-
Instal driver lib/pq.
go get -u github.com/lib/pq
-
Hubungkan ke kluster. Ganti placeholder <HOST>, <PORT>, <USER>, <PASSWORD>, <DATABASE>, dan <YOUR_TABLE_NAME> dengan parameter koneksi kluster yang sebenarnya.
package main
import (
"database/sql"
"fmt"
"log"
_ "github.com/lib/pq" // Inisialisasi driver PostgreSQL.
)
func main() {
// Format string koneksi.
connStr := "user=<USER> password=<PASSWORD> dbname=<DATABASE> host=<HOST> port=<PORT> sslmode=disable"
// Buka koneksi database.
db, err := sql.Open("postgres", connStr)
if err != nil {
log.Fatal(err)
}
defer db.Close() // Tutup koneksi saat program keluar.
// Uji koneksi.
err = db.Ping()
if err != nil {
log.Fatal(err)
}
fmt.Println("Connected to PostgreSQL!")
// Eksekusi kueri.
rows, err := db.Query("SELECT * FROM <YOUR_TABLE_NAME>")
if err != nil {
log.Fatal(err)
}
defer rows.Close()
}
FAQ
Mengapa saya tidak dapat menghubungkan Instance ECS ke kluster PolarDB?
Lakukan pemecahan masalah sebagai berikut:
-
Periksa apakah kluster PolarDB berada dalam status Running.
-
Verifikasi titik akhir database, port, akun, dan kata sandi. Dapatkan titik akhir dan port database.
-
Uji konektivitas jaringan dari Instance ECS menggunakan ping atau telnet.
-
Jika Anda menggunakan titik akhir Private:
-
Verifikasi bahwa Instance ECS dan kluster PolarDB berada dalam VPC yang sama. Jika tidak, titik akhir Private tidak tersedia. Gunakan salah satu metode berikut untuk menghubungkan Instance ECS dan kluster PolarDB:
-
Verifikasi bahwa alamat IP pribadi, blok CIDR, atau security group Instance ECS ada dalam daftar putih kluster PolarDB. Konfigurasikan daftar putih kluster.
-
Jika Anda menggunakan titik akhir Public, verifikasi bahwa alamat IP publik atau security group Instance ECS ada dalam daftar putih kluster PolarDB. Konfigurasikan daftar putih kluster.
Catatan
Host virtual dan server ringan tidak dapat menghubungkan ke kluster PolarDB melalui titik akhir Private.
Mengapa saya tidak dapat menghubungkan ke kluster PolarDB dari lingkungan lokal saya?
Lakukan pemecahan masalah sebagai berikut:
-
Periksa apakah kluster PolarDB berada dalam status Running.
-
Verifikasi titik akhir database, port, akun, dan kata sandi. Dapatkan titik akhir dan port database.
-
Catatan
Harus menggunakan titik akhir Public. Jika Anda menggunakan instans ECS yang berada dalam VPC yang sama dengan kluster PolarDB, Anda dapat menggunakan titik akhir Private.
-
Uji konektivitas jaringan dari lingkungan lokal Anda menggunakan ping atau telnet.
-
Verifikasi bahwa alamat IP publik atau blok CIDR lingkungan lokal Anda ada dalam daftar putih kluster PolarDB. Konfigurasikan daftar putih
Dapatkan alamat IP publik Anda:
-
Linux: Jalankan curl ifconfig.me.
-
Windows: Jalankan curl ip.me di Command Prompt.
-
macOS: Jalankan curl ifconfig.me di Terminal.
Jika jaringan Anda menggunakan proxy, metode di atas mungkin tidak mengembalikan alamat IP publik aktual Anda. Tambahkan sementara blok CIDR 0.0.0.0/0 ke daftar putih kluster PolarDB. Setelah terhubung, jalankan SELECT pid,usename,datname,client_addr,state,query FROM pg_stat_activity WHERE state = 'active'; untuk menemukan alamat IP publik aktual Anda dan tambahkan ke daftar putih. Kemudian, hapus blok CIDR 0.0.0.0/0.

Saya tidak dapat terhubung ke PolarDB Kluster. Pesan kesalahan berikut ditampilkan: password authentication failed for user
Akun atau kata sandi database salah. Verifikasi kredensial Anda. Masuk ke Konsol PolarDB dan pilih untuk mengelola akun dan kata sandi database.
Saya tidak dapat terhubung ke PolarDB Kluster. Kesalahan berikut ditampilkan: name or service not known
Titik akhir kluster salah. Format yang benar adalah pc-xxx.xxx.rds.aliyuncs.com. Masuk ke Konsol PolarDB dan pilih untuk mengelola titik akhir kluster Anda.
Saya tidak dapat terhubung ke PolarDB kluster. Kesalahan berikut muncul: koneksi kehabisan waktu
Alamat IP publik atau blok CIDR lingkungan saat ini tidak ada dalam daftar putih kluster PolarDB, atau nilai yang ditambahkan salah.
Dapatkan alamat IP publik Anda:
-
Linux: Jalankan curl ifconfig.me.
-
Windows: Jalankan curl ip.me di Command Prompt.
-
macOS: Jalankan curl ifconfig.me di Terminal.
Jika jaringan Anda menggunakan proxy, metode di atas mungkin tidak mengembalikan alamat IP publik aktual Anda. Tambahkan sementara blok CIDR 0.0.0.0/0 ke daftar putih kluster PolarDB. Setelah terhubung, jalankan SELECT pid,usename,datname,client_addr,state,query FROM pg_stat_activity WHERE state = 'active'; untuk menemukan alamat IP publik aktual Anda dan tambahkan ke daftar putih. Kemudian, hapus blok CIDR 0.0.0.0/0.

Bagaimana cara mengubah metode koneksi untuk kluster PolarDB menggunakan DMS dari titik akhir utama ke titik akhir kluster?
Jika Anda menggunakan DMS untuk menghubungkan ke kluster, sistem secara default menggunakan Primary Endpoint untuk menghubungkan ke kluster. Jika Anda harus menggunakan Cluster Endpoint untuk menghubungkan ke kluster PolarDB, lakukan langkah-langkah berikut:
-
Setelah terhubung ke kluster menggunakan DMS, pilih > Instances Connected di panel navigasi sebelah kiri. Temukan dan klik kanan kluster tersebut, lalu pilih Edit.

-
Di kotak dialog Edit, buka bagian Basic Information. Ubah parameter Connection Method menjadi Connection String Address, masukkan cluster endpoint, lalu klik Save.
Penting
Setelah mengubah string koneksi untuk mengakses kluster PolarDB, tutup jendela SQL asli dan buka yang baru agar pengaturan yang diperbarui berlaku.