Kueri SQL lambat dapat secara signifikan menurunkan stabilitas basis data. Ketika terjadi masalah seperti beban kerja tinggi atau jitter kinerja pada basis data, administrator basis data (DBA) atau pengembang biasanya memeriksa apakah log kueri lambat telah dihasilkan. Database Autonomy Service (DAS) menyediakan fitur analisis log kueri lambat. DAS mengumpulkan statistik dan menganalisis pernyataan SQL yang durasi eksekusinya melebihi nilai ambang batas tertentu serta memberikan solusi. Anda dapat dengan mudah menyelesaikan masalah kinerja basis data, meningkatkan keandalan dan stabilitas sistem.
Catatan Penggunaan
Panjang maksimum log kueri lambat adalah 16 KB. Konten yang melebihi panjang ini akan dipotong.
Batasan
Instans RDS for MySQL Edisi Dasar mendukung tampilan dan ekspor log kueri lambat tetapi tidak mendukung fitur diagnostik dan optimasi SQL.
Akses halaman pernyataan SQL lambat
Buka halaman Instans. Di bilah navigasi atas, pilih wilayah tempat instans RDS berada. Kemudian, temukan instans RDS dan klik ID instans tersebut.
Di panel navigasi sebelah kiri, pilih Autonomy Services > Slow Query Logs.
CatatanJika Anda menggunakan fitur analisis log kueri lambat sebagai Pengguna RAM, pastikan bahwa pengguna RAM diberi izin
AliyunHDMFullAccess.Di tab Slow Log Analysis, tentukan rentang waktu dan lihat Slow Query Log Trends, Event Distribution, Slow Query Log Statistics,, dan Slow Query Log Details dalam rentang waktu yang ditentukan.
CatatanSaat menentukan rentang waktu, waktu akhir harus lebih dari waktu mulai, dan interval antara waktu mulai dan waktu akhir tidak boleh lebih dari 24 jam. Anda dapat menanyakan log kueri lambat dalam satu bulan terakhir.
Di bagian Slow Query Log Trends, Anda dapat mengklik titik waktu di grafik tren untuk melihat statistik dan detail log kueri lambat pada titik waktu tersebut.
CatatanJika konten pernyataan SQL tidak sepenuhnya ditampilkan karena batasan panjang GUI, Anda dapat mengarahkan pointer ke pernyataan SQL untuk melihat konten lengkapnya.
Anda dapat mengklik
untuk mengunduh log kueri lambat ke komputer Anda.Klik
untuk mengisi parameter yang dipilih dan dimasukkan ke konsol OpenAPI untuk debugging API.Di bagian Event Distribution, lakukan operasi berikut:
Di tab Slow Query Log Statistics, lakukan operasi berikut:
Konfigurasikan kondisi filter di bagian atas daftar. Mesin basis data yang berbeda memiliki kondisi filter yang berbeda.
Klik ID SQL yang sesuai dengan template SQL yang ingin Anda kelola untuk melihat distribusi pengguna, distribusi klien, korelasi tren metrik, dan daftar rinci.
Klik Optimize di kolom Actions yang sesuai dengan template SQL. Di kotak dialog SQL Diagnostic Optimization, lihat hasil diagnostik SQL.
Jika Anda menerima saran optimasi SQL, klik Copy di pojok kanan atas dan tempelkan pernyataan SQL yang dioptimalkan ke klien basis data atau Data Management (DMS) untuk dieksekusi. Jika tidak menerima saran optimasi SQL, klik Cancel.
CatatanDAS melakukan diagnostik SQL berdasarkan kompleksitas pernyataan SQL, jumlah data dalam tabel, dan beban basis data. Saran mungkin dikembalikan lebih dari 20 detik setelah diagnostik SQL dilakukan. Setelah diagnostik selesai, mesin diagnostik SQL memberikan hasil diagnostik, saran optimasi, dan manfaat optimasi yang diharapkan. Anda dapat menentukan apakah akan menerima saran berdasarkan hasil diagnostik.
Temukan template SQL yang ingin Anda kelola dan klik Throttling di kolom Actions. Di kotak dialog SQL Throttling, konfigurasikan parameter. Untuk informasi lebih lanjut, lihat Pembatasan SQL.
Untuk kluster PolarDB for MySQL, temukan template SQL yang ingin Anda kelola dan klik IMCI di kolom Actions untuk melihat dokumentasi fitur Indeks Kolom IMCI (IMCI).
CatatanTombol IMCI ditampilkan di kolom Tindakan jika tidak ada node IMCI yang dibeli untuk kluster PolarDB for MySQL, durasi eksekusi maksimum template SQL melebihi 20 detik, dan jumlah baris maksimum yang dipindai oleh template SQL melebihi 200.000.
Kami merekomendasikan Anda menggunakan fitur IMCI untuk meningkatkan kinerja kueri ketika Anda memerlukan kueri kompleks pada sejumlah besar data.
Di tab Slow Query Log Details, temukan pernyataan SQL yang ingin Anda kelola dan klik Optimize atau Throttling di kolom Actions untuk melakukan optimasi diagnostik SQL atau pembatasan SQL.
Informasi Tambahan
Berikut adalah metrik utama untuk fitur Slow Query Log Analysis:
Baris Maksimum yang Dipindai: salah satu metrik dalam statistik log kueri lambat. Metrik ini menunjukkan jumlah maksimum baris yang dipindai dalam kueri lambat selama rentang waktu kueri.
Template SQL: template SQL yang dihasilkan untuk pernyataan SQL dengan jenis yang sama.
Contoh SQL Lambat: data yang diambil dari template SQL pada interval reguler. Statistik sampel tidak mencakup semua log kueri lambat. Untuk informasi lebih lanjut, lihat Lihat detail tentang log kueri lambat.
Detail Log Lambat: detail dari kueri lambat. Fitur analisis log kueri lambat diaktifkan secara default. Pernyataan SQL yang durasi eksekusinya lebih lama dari nilai parameter
long_query_timeditampilkan di konsol ApsaraDB RDS.Di ApsaraDB RDS untuk MySQL, Anda dapat mengaktifkan parameter log_queries_not_using_indexes untuk mencatat kueri SQL yang tidak menggunakan indeks. Untuk informasi lebih lanjut, lihat dokumentasi resmi MySQL.
FAQ
T: Mengapa waktu penyelesaian eksekusi pernyataan SQL yang dicatat dalam log kueri lambat berbeda dengan waktu penyelesaian eksekusi sebenarnya dari pernyataan SQL?
J: Masalah ini biasanya terjadi ketika zona waktu yang dicatat dalam log kueri lambat dimodifikasi oleh pernyataan SQL yang dieksekusi. Waktu penyelesaian eksekusi pernyataan SQL bervariasi dengan zona waktu yang dicatat dalam log kueri lambat pada tingkat berikut: tingkat sesi, tingkat basis data, dan tingkat sistem. Jika zona waktu ditentukan untuk basis data, waktu penyelesaian eksekusi pernyataan SQL dicatat berdasarkan zona waktu basis data. Jika tidak, waktu penyelesaian eksekusi pernyataan SQL dicatat berdasarkan zona waktu sistem. Jika pernyataan SQL memodifikasi zona waktu pada tingkat sesi, zona waktu yang dicatat dalam log kueri lambat mungkin tidak dikonversi dengan benar.
Referensi
Anda dapat mengaktifkan fitur otonomi DAS. Dengan cara ini, ketika kueri SQL lambat terdeteksi pada instans basis data Anda, DAS secara otomatis mengoptimalkan kueri SQL lambat tersebut.