全部产品
Search
文档中心

Data Management:Akses instansi database melalui protokol MySQL

更新时间:Jul 02, 2025

Topik ini menjelaskan cara mengakses instansi database melalui protokol MySQL setelah fitur proxy akses aman diaktifkan untuk instansi tersebut.

Prasyarat

Catatan penggunaan

Jika instansi database Anda dikelola dalam mode Kolaborasi Keamanan, maka akan terpengaruh oleh aturan keamanan. Maksimal 100.000 baris dapat dikembalikan untuk setiap query.

Tetapkan jumlah maksimum baris yang dapat dikembalikan per query.

Masuk ke Konsol Data Management (DMS). Di bilah navigasi atas, pilih Security and Specifications > Security Rules. Temukan tipe mesin MySQL dan klik Edit di kolom Aksi. Di panel navigasi sebelah kiri, pilih Keamanan dan Spesifikasi > Secure Access Proxy. Kemudian, ubah jumlah maksimum baris yang dapat dikembalikan per query.

image

Catatan
  • Jika Anda tidak ingin instansi database Anda terpengaruh oleh aturan keamanan, akses instansi database Anda menggunakan alamat koneksi yang disediakan oleh konsol database, atau hubungi dukungan teknis DMS untuk mengevaluasi skenario tertentu.

  • Jika instansi database Anda tidak dikelola dalam mode Kolaborasi Keamanan, Anda tidak dapat menyesuaikan jumlah maksimum baris yang dikembalikan per query. Secara default, jumlah maksimum baris yang dapat dikembalikan untuk setiap query adalah 3.000.

Batasan

  • Periode timeout idle yang dikonfigurasikan untuk klien MySQL tidak boleh melebihi 900 detik.

  • Jika Anda menggunakan fitur pool koneksi database, interval antara dua deteksi kegagalan pool koneksi berturut-turut tidak boleh melebihi 900 detik.

Catatan

Kami merekomendasikan Anda menggunakan fitur pool koneksi database dan mengatur interval menjadi 750 detik.

Contoh

Anda dapat menggunakan perintah, klien SQL, atau kode program untuk mengakses instansi database yang telah mengaktifkan fitur proxy akses aman.

Gunakan perintah MySQL

Sintaks:

mysql -h<host> -P<port> -u<user_name> -p<password> <database> -e '<sql_statements>'

Tabel berikut menjelaskan parameter.

Parameter

Deskripsi

host

Nama domain dari instansi. Anda dapat melihat nama domain di titik akhir proxy publik atau internal yang digunakan untuk mengakses instansi melalui protokol MySQL pada halaman detail Proxy Akses Aman dari instansi.

port

Nomor port dari instansi. Contoh: 3306. Anda dapat melihat nomor port di titik akhir proxy publik atau internal yang digunakan untuk mengakses instansi melalui protokol MySQL pada halaman detail Proxy Akses Aman dari instansi.

user_name

ID AccessKey yang dialokasikan oleh DMS kepada Anda setelah otorisasi. Anda dapat melihat ID AccessKey Anda di bagian Informasi Otorisasi pada halaman detail Proxy Akses Aman dari instansi.

password

Rahasia AccessKey yang dialokasikan oleh DMS kepada Anda setelah otorisasi. Anda dapat melihat Rahasia AccessKey Anda di bagian Informasi Otorisasi pada halaman detail Proxy Akses Aman dari instansi.

database

Nama instansi database yang ingin Anda akses.

sql_statements

Pernyataan SQL yang ingin Anda eksekusi. Contoh: SHOW DATABASES.

Contoh kode:

mysql -hdpxxxx-xxxxxxxx.proxy.dms.aliyuncs.com -P3306 -uAccessID -pAccessSecret Schema -e 'SHOW DATABASES'

Gunakan kode program

Catatan

Dalam contoh ini, Python 2 digunakan.

// dpxxxx-xxxxxxxx.proxy.dms.aliyuncs.com:3306: nama domain dan nomor port yang digunakan untuk terhubung ke instansi. Anda dapat melihat nama domain dan nomor port di titik akhir proxy yang digunakan untuk mengakses instansi melalui protokol MySQL pada halaman detail Proxy Akses Aman dari instansi.
// schema: nama instansi database yang ingin Anda akses.
String url = "jdbc:mysql://dpxxxx-xxxxxxxx.proxy.dms.aliyuncs.com:3306/schema";
Properties properties = new Properties();
// AccessID: ID AccessKey yang digunakan untuk mengakses instansi. Anda dapat melihat ID AccessKey Anda di bagian Informasi Otorisasi pada halaman detail Proxy Akses Aman dari instansi.
properties.setProperty("user", "AccessID");
// AccessSecret: Rahasia AccessKey yang digunakan untuk mengakses instansi. Anda dapat melihat Rahasia AccessKey Anda di bagian Informasi Otorisasi pada halaman detail Proxy Akses Aman dari instansi.
properties.setProperty("password", "AccessSecret");
try (Connection connection = DriverManager.getConnection(url, properties)) {
    try (Statement statement = connection.createStatement()) {
        // Gunakan metode execute() untuk mengeksekusi pernyataan SQL. Dalam contoh ini, pernyataan SHOW DATABASES dieksekusi. Anda juga dapat mengeksekusi pernyataan SQL lainnya.
        statement.execute("SHOW DATABASES");
        ResultSet resultSet = statement.getResultSet();
        while (resultSet.next()) {
            System.out.println(resultSet.getString(1));
        }
    }
} catch (Exception e) {
    e.printStackTrace();
}
import pymysql

try:
    # host: nama domain dari instansi.
    # port: nomor port yang digunakan untuk terhubung ke instansi.
    # user: ID AccessKey yang digunakan untuk mengakses instansi. Anda dapat melihat Rahasia AccessKey Anda di bagian Informasi Otorisasi pada halaman detail Proxy Akses Aman dari instansi.
    # password: Rahasia AccessKey yang digunakan untuk mengakses instansi. Anda dapat melihat Rahasia AccessKey Anda di bagian Informasi Otorisasi pada halaman detail Proxy Akses Aman dari instansi.
    # database: nama instansi database yang ingin Anda akses.
    conn = pymysql.connect(host='dpxxxx-xxxxxxxx.proxy.dms.aliyuncs.com', port=3306, user='AccessID', password="AccessSecret",database ='schema')  
    cur = conn.cursor(pymysql.cursors.DictCursor)
    # Gunakan metode execute() untuk mengeksekusi pernyataan SQL. Dalam contoh ini, pernyataan SHOW DATABASES dieksekusi. Anda juga dapat mengeksekusi pernyataan SQL lainnya.
    cur.execute('SHOW DATABASES')
    rs = cur.fetchall()
    print rs
finally:
    cur.close()
    conn.close()
var mysql  = require('mysql');  
 
var connection = mysql.createConnection({
    // host: nama domain dari instansi.  
    host     : 'dpxxxx-xxxxxxxx.proxy.dms.aliyuncs.com',  
    // user: ID AccessKey yang digunakan untuk mengakses instansi. Anda dapat melihat Rahasia AccessKey Anda di bagian Informasi Otorisasi pada halaman detail Proxy Akses Aman dari instansi.      
    user     : 'AccessID', 
    // password: Rahasia AccessKey yang digunakan untuk mengakses instansi. Anda dapat melihat Rahasia AccessKey Anda di bagian Informasi Otorisasi pada halaman detail Proxy Akses Aman dari instansi.              
    password : 'AccessSecret', 
    // port: nomor port yang digunakan untuk terhubung ke instansi.       
    port     : '3306',  
    // database: nama instansi database yang ingin Anda akses.                  
    database : 'schema' 
}); 
 
connection.connect();

// Gunakan metode execute() untuk mengeksekusi pernyataan SQL. Dalam contoh ini, pernyataan SHOW DATABASES dieksekusi. Anda juga dapat mengeksekusi pernyataan SQL lainnya.  
connection.query('SHOW DATABASES', function(err, result) {
    console.log(result);
});
 
connection.end();

Gunakan klien SQL

Dalam contoh ini, klien Navicat digunakan. Tetapkan parameter berikut:

  • Host: nama domain dari instansi.

  • Port: nomor port yang digunakan untuk terhubung ke instansi.

  • Nama Pengguna: ID AccessKey yang digunakan untuk mengakses instansi.

  • Kata Sandi: Rahasia AccessKey yang digunakan untuk mengakses instansi.

navicat