全部产品
Search
文档中心

ApsaraDB RDS:Gunakan fitur manajemen session

更新时间:Mar 01, 2026

Database Autonomy Service (DAS) menyediakan fitur manajemen session untuk instans ApsaraDB RDS for MySQL. Anda dapat memantau session aktif, session tidak normal, sumber akses, dan pernyataan SQL secara real time, serta menghentikan session, menerapkan pengendalian aliran SQL, menjalankan diagnostik SQL, dan mengoptimalkan SQL langsung dari Konsol.

Prasyarat

Instans RDS Anda harus menjalankan salah satu versi dan edisi MySQL berikut:

MySQL version

Supported editions

MySQL 8.0

RDS High-availability Edition, RDS Enterprise Edition, RDS Cluster Edition

MySQL 5.7

RDS High-availability Edition, RDS Enterprise Edition, RDS Cluster Edition

MySQL 5.6

RDS High-availability Edition

MySQL 5.5

RDS High-availability Edition

Buka manajemen session

  1. Buka halaman Instances. Di bilah navigasi atas, pilih wilayah tempat instans RDS berada, lalu temukan instans tersebut dan klik ID-nya.

  2. Di panel navigasi kiri, pilih Autonomy Services > Diagnostics.

  3. Klik tab Session Management.

Lihat dan kelola session instans

Bagian Session Management menampilkan data session real time, termasuk pengecualian, session aktif, durasi eksekusi terlama, utilisasi CPU, dan penggunaan koneksi.

Analisis SQL dalam rentang waktu 10 detik

Klik Previous Version di pojok kanan atas bagian tersebut, lalu klik 10s SQL Analysis. Kotak dialog yang muncul menampilkan statistik SQL, log kueri lambat, dan ikhtisar SQL yang diambil dalam rentang waktu 10 detik. Untuk detailnya, lihat 10-second SQL analysis.

Pengendalian aliran SQL

Klik SQL Throttling untuk membuka panel SQL Throttling. Konfigurasikan pengendalian aliran SQL berbasis ambang batas untuk membatasi session. Untuk detailnya, lihat SQL throttling.

Diagnosa dan optimalkan SQL

Klik Previous Version di pojok kanan atas bagian tersebut. Pilih session dan klik Optimize untuk membuka kotak dialog SQL Diagnostic Optimization dan lihat hasil diagnosa.

  • Untuk menerapkan saran, klik Copy dan tempel pernyataan SQL yang telah dioptimalkan ke client database atau Data Management (DMS) Anda.

  • Untuk mengabaikan saran, klik Cancel.

    Catatan

    DAS mengevaluasi kompleksitas SQL, volume data tabel, dan beban database selama proses diagnostik. Hasilnya mungkin memerlukan waktu lebih dari 20 detik untuk ditampilkan. Mesin diagnostik SQL memberikan hasil diagnosa, saran optimasi, dan manfaat optimasi yang diharapkan. Putuskan apakah akan menerima saran tersebut berdasarkan informasi yang diberikan.

Ekspor session aktif

Ekspor data session aktif dari bagian Instance Sessions untuk analisis offline.

Hentikan session

Pilih session yang akan dihentikan. Masukkan username dan password akun database yang membuat session tersebut, atau gunakan privileged account yang memiliki izin untuk menghentikan session dari akun lain.

  • Periksa kolom User dalam daftar session untuk mengidentifikasi akun database setiap session.

  • Klik End Session History untuk melihat catatan session yang sebelumnya telah dihentikan.

Lihat statistik session

Bagian Session Statistics menampilkan informasi ringkasan: total session, total session yang sedang berjalan, dan waktu proses maksimum session. Anda dapat melihat dan mengekspor statistik session yang dikelompokkan berdasarkan user, sumber akses, atau database.

Aktifkan pengendalian aliran SQL otomatis

Klik Enable Automatic Throttling untuk mengaktifkan pengendalian aliran SQL otomatis. Setelah Anda mengonfigurasi kondisi pemicu, DAS akan secara otomatis menerapkan pengendalian aliran SQL ketika kondisi tersebut terpenuhi. Fitur ini mengelola jumlah permintaan akses dan permintaan SQL konkuren pada instans Anda untuk menjaga ketersediaan database. Untuk detailnya, lihat Automatic SQL throttling.

FAQ

Mengapa tanda persen (%) muncul di kolom Access Source?

Tanda persen (%) muncul di kolom Access Source ketika sebuah session dijalankan melalui prosedur tersimpan. Untuk mereproduksi perilaku ini:

Catatan

Contoh ini menggunakan instans RDS for MySQL dengan akun uji test_user dan database uji testdb.

  1. Di Konsol ApsaraDB RDS, buat database dan akun standar, lalu berikan izin pada database tersebut ke akun standar. Untuk detailnya, lihat Create an account.

  2. Hubungkan ke instans menggunakan akun test_user melalui CLI. Untuk detailnya, lihat Use a client or the CLI to connect to an ApsaraDB RDS for MySQL instance.

  3. Beralih ke database testdb dan buat prosedur tersimpan:

       -- Beralih ke database testdb.
       USE testdb;
    
       -- Buat prosedur tersimpan.
       DELIMITER $$
       DROP PROCEDURE IF EXISTS `das` $$
       CREATE DEFINER=`test_user`@`%` PROCEDURE `das`()
       BEGIN
       SELECT * FROM information_schema.processlist WHERE Id = CONNECTION_ID();
       END $$
       DELIMITER;
  4. Hubungkan ke instans menggunakan akun istimewa. Untuk detailnya, lihat Step 2: Connect to an ApsaraDB RDS for MySQL instance.

  5. Panggil prosedur tersimpan tersebut.

    Output yang diharapkan: Kolom HOST menampilkan %:2065 karena prosedur tersimpan didefinisikan dengan DEFINER='test_user'@'%', dan session mewarisi nilai host ini saat prosedur dijalankan di bawah akun istimewa.

       -- Beralih ke database testdb.
       USE testdb;
    
       -- Panggil prosedur tersimpan.
       CALL das();
       +--------+-----------+--------+--------+---------+------+-----------+-------------------------------------------------------------------------+
       | ID     | USER      | HOST   | DB     | COMMAND | TIME | STATE     | INFO                                                                    |
       +--------+-----------+--------+--------+---------+------+-----------+-------------------------------------------------------------------------+
       | 487818 | test_user | %:2065 | testdb | Query   |    0 | executing | SELECT * FROM information_schema.processlist WHERE Id = CONNECTION_ID() |
       +--------+-----------+--------+--------+---------+------+-----------+-------------------------------------------------------------------------+

Session seperti apa yang ditandai sebagai tidak normal?

DAS menandai session berikut sebagai abnormal:

  • Pernyataan SQL yang memblokir dengan durasi eksekusi melebihi 30 detik, seperti session yang menampilkan "Waiting for table metadata lock." Contoh umum SQL yang memblokir termasuk pernyataan DDL dan FLUSH TABLES WITH READ LOCK. Pernyataan-pernyataan ini menggunakan sumber daya dalam jangka waktu lama dan dapat mencegah pernyataan SQL lain dijalankan.

  • Transaksi berdurasi panjang dengan durasi melebihi 30 detik.

  • Transaksi yang belum dikomit di mana tidak ada pernyataan SQL baru yang dieksekusi selama lebih dari 10 detik setelah transaksi dimulai. Hal ini biasanya menunjukkan bahwa perintah COMMIT tidak ada dalam kode, sehingga transaksi tetap memegang sumber daya tanpa melepaskannya.

Referensi

Fitur otonomi DAS dapat secara otomatis mendiagnosis dan mengoptimalkan pernyataan SQL dalam session database Anda: