PolarDB-X mendukung koneksi melalui Data Management (DMS), baris perintah MySQL, klien pihak ketiga, serta kode aplikasi pihak ketiga yang kompatibel dengan protokol resmi MySQL.
Persiapan
Sebelum menghubungkan ke database PolarDB-X, lakukan langkah-langkah berikut:
Menghubungkan ke database
Anda dapat menggunakan berbagai metode untuk menghubungkan ke instans database. Bagian berikut memberikan contoh cara menghubungkan ke instans database menggunakan metode yang berbeda.
Gunakan DMS untuk menghubungkan ke database
DMS adalah alat manajemen data grafis yang disediakan oleh Alibaba Cloud. Layanan manajemen data terintegrasi ini menyediakan fitur-fitur seperti manajemen data, manajemen skema, otorisasi pengguna, audit keamanan, tren data, pelacakan data, grafik BI, optimasi kinerja, dan manajemen server. Anda dapat menggunakan DMS untuk mengelola instans PolarDB-X tanpa memerlukan alat tambahan.
Buka Konsol PolarDB for Distributed. Di daftar Instances, klik ID instans target. Di halaman detail instans, klik Log On To Database di pojok kanan atas.

Pada kotak dialog, masukkan Database Account dan Database Password untuk instans PolarDB-X Anda, lalu klik Logon.
CatatanSecara default, mode kontrol adalah Flexible Management saat Anda pertama kali masuk ke DMS. Anda juga dapat mengubah mode kontrol setelah masuk. Untuk informasi selengkapnya, lihat Ubah informasi instans dan Mode kontrol.
Setelah mengonfigurasi parameter login, klik Test Connection di pojok kiri bawah. Jika pengujian koneksi gagal, rujuk pesan kesalahan untuk memverifikasi informasi instans yang dimasukkan, seperti akun dan kata sandi.
Sistem secara otomatis menambahkan alamat IP server DMS ke daftar putih database ApsaraDB. Jika alamat IP tidak ditambahkan secara otomatis, Anda harus menambahkannya secara manual.
Setelah berhasil masuk, Anda dapat melihat instans PolarDB-X di bagian Instances Connected pada panel navigasi sebelah kiri dan melakukan operasi manajemen.

Gunakan klien untuk menghubungkan ke database
PolarDB-X mendukung koneksi dari klien pihak ketiga berikut. Anda dapat mengunduh klien-klien ini dari situs web resminya.
MySQL Workbench (Direkomendasikan)
SQLyog
Sequel Pro
Navicat for MySQL
Klien GUI pihak ketiga dapat melakukan operasi dasar database, seperti membuat, mengambil, memperbarui, dan menghapus data, serta operasi DDL. PolarDB-X mungkin tidak mendukung fitur-fitur lanjutan dari klien-klien tersebut.
Contoh berikut menggunakan MySQL Workbench 8.0.29. Langkah-langkah untuk klien lain serupa.
Instal MySQL Workbench. Anda dapat mengunduhnya dari halaman unduhan resmi.
Buka MySQL Workbench dan pilih .
Masukkan informasi koneksi dan klik OK.

Parameter
Deskripsi
Contoh
Hostname
pxc-xxx.polarx.rds.aliyuncs.com
Port
Nomor port yang sesuai dengan titik akhir database.
CatatanPort default adalah 3306.
3306
Username
polardb_x_user
Password
Kata sandi akun database.
Pass***233
Gunakan baris perintah MySQL untuk menghubungkan ke database
Jika klien MySQL telah diinstal di server Anda, Anda dapat menjalankan perintah untuk menghubungkan ke instans PolarDB-X.
Sintaks
mysql -h<endpoint> -P<port> -u<database_username> -p<database_user_password> -D<database_name>Contoh
mysql -hpxc-xxx.polarx.rds.aliyuncs.com -P3306 -upolardb_mysql_user -pPass***233 -Dtest_dbParameter | Deskripsi | Contoh |
-h | pxc-xxx.polarx.rds.aliyuncs.com | |
-P | Nomor port yang sesuai dengan titik akhir database. Catatan
| 3306 |
-u | polardb_x_user | |
-p | Kata sandi akun database. Catatan Parameter ini wajib digunakan.
| Pass***233 |
-D | Nama database yang ingin Anda akses. Catatan Parameter ini opsional. | test_db |
Gunakan aplikasi untuk menghubungkan ke database
Menghubungkan ke instans PolarDB-X mirip dengan menghubungkan ke database MySQL lainnya. Anda hanya perlu mengganti titik akhir database, port, akun, dan kata sandi. Bagian berikut menjelaskan cara menggunakan aplikasi dalam bahasa pemrograman berbeda untuk mengakses database PolarDB:
Java
Bagian ini menggunakan proyek Maven sebagai contoh untuk menjelaskan cara menggunakan driver JDBC MySQL untuk menghubungkan ke instans PolarDB-X.
Tambahkan dependensi driver JDBC MySQL ke file
pom.xml. Kode berikut merupakan contohnya:<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.27</version> </dependency>Hubungkan ke instans. Ganti parameter
<HOST>, nomor port,<USER>,<PASSWORD>,<DATABASE>,<YOUR_TABLE_NAME>, dan<YOUR_TABLE_COLUMN_NAME>dengan nilai aktual Anda.import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class DatabaseConnection { public DatabaseConnection() { } public static void main(String[] args) { // Titik akhir, port, dan nama database yang ingin Anda hubungkan. String url = "jdbc:mysql://<HOST>:3306/<DATABASE>?useSSL=false&serverTimezone=UTC"; // Akun database. String user = "<USER>"; // Kata sandi akun database. String password = "<PASSWORD>"; try { Class.forName("com.mysql.cj.jdbc.Driver"); Connection conn = DriverManager.getConnection(url, user, password); Statement stmt = conn.createStatement(); // Nama tabel dari mana Anda ingin mengambil data. ResultSet rs = stmt.executeQuery("SELECT * FROM `<YOUR_TABLE_NAME>`"); while(rs.next()) { // Nama kolom dari mana Anda ingin mengambil data. System.out.println(rs.getString("<YOUR_TABLE_COLUMN_NAME>")); } rs.close(); stmt.close(); conn.close(); } catch (Exception var7) { var7.printStackTrace(); } } }
Python
Bagian ini menggunakan Python 3 sebagai contoh untuk menjelaskan cara menggunakan pustaka PyMySQL untuk menghubungkan ke instans PolarDB-X.
Instal pustaka PyMySQL dengan menjalankan perintah berikut:
pip3 install PyMySQLHubungkan ke instans. Ganti parameter
<HOST>, nomor port,<USER>,<PASSWORD>,<DATABASE>, dan<YOUR_TABLE_NAME>dengan nilai aktual Anda.import pymysql # Parameter koneksi database. host = '<HOST>' # Titik akhir instans PolarDB-X. port = 3306 # Port default adalah 3306. user = '<USER>' # Akun database. password = '<PASSWORD>' # Kata sandi akun database. database = '<DATABASE>' # Nama database yang ingin Anda hubungkan. try: # Buat koneksi database. connection = pymysql.connect( host=host, port=port, user=user, passwd=password, db=database ) # Dapatkan kursor. with connection.cursor() as cursor: # Jalankan kueri SQL. sql = "SELECT * FROM `<YOUR_TABLE_NAME>`" # Nama tabel dari mana Anda ingin mengambil data. cursor.execute(sql) # Dapatkan hasil kueri. results = cursor.fetchall() for row in results: print(row) finally: # Tutup koneksi database. if 'connection' in locals() and connection.open: connection.close()
Go
Bagian ini menggunakan Go 1.23.0 sebagai contoh untuk menjelaskan cara menggunakan paket database/sql dan driver go-sql-driver/mysql untuk menghubungkan ke instans PolarDB-X.
Instal driver
go-sql-driver/mysqldengan menjalankan perintah berikut:go get -u github.com/go-sql-driver/mysqlHubungkan ke instans. Ganti parameter
<HOST>, nomor port,<USER>,<PASSWORD>,<DATABASE>, dan<YOUR_TABLE_NAME>dengan nilai aktual Anda.package main import ( "database/sql" "fmt" "log" _ "github.com/go-sql-driver/mysql" ) func main() { // Parameter koneksi database. dbHost := "<HOST>" // Titik akhir instans PolarDB-X. dbPort := "3306" // Port default adalah 3306. dbUser := "<USER>" // Akun database. dbPass := "<PASSWORD>" // Kata sandi akun database. dbName := "<DATABASE>" // Nama database yang ingin Anda hubungkan. // Bangun Data Source Name (DSN). dsn := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8mb4&parseTime=True&loc=Local", dbUser, dbPass, dbHost, dbPort, dbName) // Buka koneksi database. db, err := sql.Open("mysql", dsn) if err != nil { log.Fatalf("Gagal menghubungkan ke database: %v", err) } defer db.Close() // Uji koneksi. err = db.Ping() if err != nil { log.Fatalf("Gagal ping database: %v", err) } // Kueri versi database. var result string err = db.QueryRow("SELECT VERSION()").Scan(&result) if err != nil { log.Fatalf("Gagal menjalankan kueri: %v", err) } // Cetak versi database. fmt.Printf("Terhubung ke database, versi: %s\n", result) // Jalankan kueri SQL. rows, err := db.Query("SELECT * FROM `<YOUR_TABLE_NAME>`") // Nama tabel dari mana Anda ingin mengambil data. if err != nil { log.Fatalf("Gagal menjalankan kueri: %v", err) } defer rows.Close() // Proses hasil kueri. for rows.Next() { var id int var name string if err := rows.Scan(&id, &name); err != nil { log.Fatalf("Gagal memindai baris: %v", err) } fmt.Printf("ID: %d, Nama: %s\n", id, name) } // Periksa kesalahan selama iterasi. if err := rows.Err(); err != nil { log.Fatalf("Kesalahan selama iterasi: %v", err) } }


