全部产品
Search
文档中心

ApsaraDB RDS:Gunakan fitur analisis deadlock untuk instans ApsaraDB RDS untuk MySQL

更新时间:Jul 06, 2025

Jika instans ApsaraDB RDS for MySQL Anda terkunci, Anda dapat menggunakan fitur analisis deadlock untuk melihat dan menganalisis deadlock terbaru, pemblokiran transaksi, serta kunci metadata pada instans RDS. Dengan fitur ini, Anda dapat menemukan masalah deadlock secara efisien dan meningkatkan stabilitas instans RDS.

Prasyarat

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

    • MySQL 8.0 pada RDS Edisi Tinggi Ketersediaan, RDS Enterprise Edition, atau RDS Edisi Kluster

    • MySQL 5.7 pada RDS Edisi Tinggi Ketersediaan, RDS Enterprise Edition, atau RDS Edisi Kluster

    • MySQL 5.6 pada RDS Edisi Tinggi Ketersediaan

    • MySQL 5.5 pada RDS Edisi Tinggi Ketersediaan

Catatan

Anda dapat memeriksa versi instans RDS di halaman Basic Information dari konsol ApsaraDB RDS. Untuk menggunakan fitur analisis deadlock, edisi instans yang ditunjukkan oleh Type and Edition harus Edisi Tinggi Ketersediaan, Enterprise Edition, atau Edisi Kluster, dan nilai dari Database Engine harus versi MySQL.

Fitur analisis deadlock tidak didukung oleh instans RDS Edisi Dasar.

Deskripsi Fitur

Fitur analisis deadlock memungkinkan Anda melakukan analisis multi-dimensi terhadap deadlock, pemblokiran transaksi, dan kunci metadata pada instans RDS.

Penting

Untuk mengaktifkan fitur analisis deadlock lengkap dan analisis deadlock lainnya pada instans RDS Anda, Anda harus mengaktifkan Database Autonomy Service (DAS) Cost-efficient Edition atau DAS Enterprise Edition. DAS Cost-efficient Edition dan DAS Enterprise Edition hanya tersedia di beberapa wilayah. Untuk informasi lebih lanjut, lihat Basis data dan wilayah yang didukung. Untuk panduan mengaktifkan DAS Cost-efficient Edition atau DAS Enterprise Edition, lihat Aktifkan dan kelola DAS Economy Edition dan DAS Enterprise Edition.

  • Analisis Deadlock Terbaru: DAS menganalisis log deadlock terbaru yang ditampilkan dalam output pernyataan SHOW ENGINE INNODB STATUS. Jika terjadi beberapa deadlock, DAS hanya menganalisis deadlock terbaru.

  • Analisis Deadlock Lengkap: DAS menganalisis log kesalahan secara berkala, mengurai informasi deadlock, dan melakukan analisis deadlock komprehensif. DAS juga memungkinkan Anda melihat tren deadlock dalam rentang waktu tertentu dan detail setiap deadlock.

  • Analisis Kunci Lainnya: DAS menganalisis kunci metadata dan pemblokiran transaksi dalam sesi saat ini dari instans RDS Anda secara real-time berdasarkan data di information_schema dan performance_schema.

    • Analisis Kunci Metadata: DAS menyimpulkan hubungan tunggu kunci dan menghasilkan diagram yang diperlukan berdasarkan data di tabel seperti information_schema.processlist.

    • Analisis Pemblokiran Transaksi: DAS menganalisis hubungan pemblokiran transaksi dan menghasilkan diagram yang diperlukan berdasarkan data di tabel information_schema.processlist dan information_schema.innodb_trx serta konfigurasi parameter information_schema.innodb_lock_waits dan performance_schema.data_lock_waits. Parameter information_schema.innodb_lock_waits digunakan untuk MySQL 5.6 dan MySQL 5.7, sedangkan parameter performance_schema.data_lock_waits digunakan untuk MySQL 8.0.

Batasan

Anda harus mengonfigurasi parameter yang diperlukan untuk menggunakan kemampuan berbeda dari fitur analisis deadlock.

Fitur

Parameter yang Diperlukan

Analisis Deadlock Terbaru

Aktifkan parameter innodb_deadlock_detect.

Analisis Deadlock Lengkap

  • Aktifkan parameter innodb_deadlock_detect.

  • Aktifkan parameter innodb_print_all_deadlocks dan atur parameter log_error_verbosity ke 3.

Analisis Pemblokiran Transaksi dalam Analisis Kunci Lainnya

Aktifkan parameter performance_schema jika instans RDS Anda menjalankan MySQL 8.0.

Untuk informasi lebih lanjut tentang cara memodifikasi parameter instans RDS, lihat Modifikasi parameter instans ApsaraDB RDS untuk MySQL.

Catatan Penggunaan

Fitur analisis deadlock tidak dapat digunakan untuk menganalisis deadlock yang berisi informasi berikut: TOO DEEP OR LONG SEARCH IN THE LOCK TABLE WAITS-FOR GRAPH, WE WILL ROLL BACK FOLLOWING TRANSACTION.

Prosedur

  1. Buka halaman Instans. Di bilah navigasi atas, pilih wilayah tempat instans RDS berada. Kemudian, temukan instans RDS dan klik ID instans tersebut.

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

  3. Klik tab Deadlock Analysis.

  4. Di tab Deadlock Analysis, klik Diagnose di pojok kiri atas.

  5. Temukan entri deadlock yang dihasilkan dan klik View Details di kolom Details.

  6. Di halaman Lock Analysis, lihat atau diagnosa deadlock terbaru dari instans RDS.

    • Analisis Deadlock Terbaru

      • Di tab Recent Deadlock Analysis, klik Create Analysis Task. DAS melakukan tugas analisis berdasarkan log deadlock terbaru yang ditampilkan dalam output pernyataan SHOW ENGINE INNODB STATUS.

      • Tentukan rentang waktu untuk melihat hasil diagnostik. Temukan tugas dan klik View Details di kolom Details untuk melihat detail hasil diagnostik.

    • Analisis Deadlock Lengkap

      Di tab Full Deadlock Analysis, lihat tren deadlock dan detail setiap deadlock dalam rentang waktu tertentu.

    • Analisis Deadlock Lainnya

      • Di tab Other Deadlock Analysis, klik Create Analysis Task. DAS menganalisis kunci metadata dan pemblokiran transaksi dari sesi saat ini instans RDS Anda secara real-time berdasarkan data di information_schema dan performance_schema.

      • Tentukan rentang waktu untuk melihat hasil diagnostik.

        1. Klik ikon image di sebelah kiri hasil diagnostik untuk melihat statistik.

        2. Klik View Details di kolom Actions untuk melihat detail hasil diagnostik dan diagram analisis deadlock.

          Saat Anda mengarahkan penunjuk ke sesi, Anda dapat melihat diagram tunggu kunci dari sesi tersebut. Anda dapat mengklik sesi untuk melihat detail sesi.

Apa yang Harus Dilakukan Selanjutnya

Ketika deadlock terjadi pada instans RDS Anda, Anda dapat menggunakan informasi seperti ID thread yang diperoleh setelah analisis deadlock untuk menganalisis eksekusi transaksi terkait di halaman Penjelajah SQL dan Audit. Ini membantu mengidentifikasi penyebab deadlock. Sebagai contoh, setelah transaksi dimulai dan baris data tertentu diperbarui, baris data tersebut dikunci. Jika eksekusi transaksi berlangsung lama dan transaksi tidak secara eksplisit atau implisit dikomit atau dibatalkan, sesi atau transaksi berikutnya akan memasuki keadaan LOCK WAIT ketika baris data yang sama diperbarui.