Database Autonomy Service (DAS) menyediakan fitur analisis kunci yang memungkinkan Anda melihat dan menganalisis deadlock, pemblokiran transaksi, serta penantian kunci metadata dalam database. Fitur ini membantu mengidentifikasi dan menyelesaikan masalah penantian kunci dengan mudah, sekaligus memastikan stabilitas database.
Prasyarat
Instans database Anda harus menjalankan salah satu mesin database berikut:
ApsaraDB RDS for MySQL
Database MySQL yang dikelola sendiri
PolarDB for MySQL
PolarDB-X 2.0
Instans database Anda harus terhubung ke DAS dan berada dalam status Normal Access. Untuk informasi lebih lanjut, lihat Menghubungkan Instans Database ke DAS.
Tindakan pencegahan
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.
Fitur
Fitur analisis kunci memungkinkan Anda melakukan analisis multi-dimensi pada deadlock, pemblokiran transaksi, dan penantian kunci metadata di instans database.
Fitur analisis deadlock lengkap dan analisis kunci lainnya hanya didukung untuk instans ApsaraDB RDS for MySQL dan kluster PolarDB for MySQL. Untuk menggunakan fitur-fitur ini pada instans database, Anda harus mengaktifkan DAS Edisi Ekonomi atau DAS Edisi Perusahaan untuk instans tersebut. DAS Edisi Ekonomi dan DAS Edisi Perusahaan hanya tersedia di wilayah tertentu. Untuk informasi lebih lanjut, lihat bagian Database dan Wilayah yang Didukung dari topik "Edisi dan Fitur yang Didukung". Untuk informasi lebih lanjut tentang cara mengaktifkan DAS Edisi Ekonomi atau DAS Edisi Perusahaan, lihat bagian Aktifkan DAS Edisi Ekonomi dan DAS Edisi Perusahaan dari topik "Aktifkan dan Kelola DAS Edisi Ekonomi dan DAS Edisi Perusahaan".
Analisis Deadlock Terbaru: DAS menganalisis log deadlock terbaru dalam output pernyataan
SHOW ENGINE INNODB STATUS. Jika terjadi beberapa deadlock, DAS hanya menganalisis deadlock terbaru. Untuk informasi lebih lanjut, lihat bagian Analisis Deadlock Terbaru dari topik "Analisis Deadlock".Analisis Deadlock Lengkap: DAS secara berkala menganalisis log kesalahan, mengurai informasi deadlock, dan kemudian melakukan analisis deadlock komprehensif. DAS juga memungkinkan Anda melihat tren deadlock dalam rentang waktu tertentu dan melihat detail setiap deadlock. Untuk informasi lebih lanjut, lihat bagian Analisis Deadlock Lengkap dari topik "Analisis Deadlock".
Analisis Kunci Lainnya: DAS menganalisis kunci metadata dan transaksi yang diblokir dalam sesi saat ini dari instans database Anda secara real-time berdasarkan data dalam database
information_schemadanperformance_schema. Untuk informasi lebih lanjut, lihat Analisis Kunci Lainnya.Analisis Kunci Metadata: DAS menyimpulkan hubungan penantian kunci dan menghasilkan diagram yang sesuai berdasarkan data dalam tabel seperti
information_schema.processlist.Analisis Pemblokiran Transaksi: DAS menganalisis hubungan pemblokiran transaksi dan menghasilkan diagram yang sesuai berdasarkan data dalam tabel
information_schema.processlist,information_schema.innodb_trx, daninformation_schema.innodb_lock_waitsatauperformance_schema.data_lock_waits. Data dalam tabel information_schema.innodb_lock_waits digunakan untuk instans database yang menjalankan MySQL 5.6 atau MySQL 5.7, dan data dalam tabel performance_schema.data_lock_waits digunakan untuk instans database yang menjalankan MySQL 8.0.CatatanFitur analisis pemblokiran transaksi tidak didukung untuk kluster PolarDB for MySQL yang menjalankan MySQL 5.6.
Pengaturan parameter
Untuk menggunakan fitur analisis deadlock pada instans database, Anda harus menentukan parameter yang sesuai dari instans database tersebut. Tabel berikut menjelaskan pengaturan parameter yang diperlukan untuk fitur analisis deadlock yang berbeda.
Fitur analisis kunci | Pengaturan parameter yang diperlukan |
Analisis deadlock terbaru | Atur parameter |
Analisis deadlock lengkap |
|
Analisis pemblokiran transaksi dalam analisis kunci lainnya | Jika instans database adalah instans ApsaraDB RDS for MySQL 8.0 atau kluster PolarDB for MySQL 8.0, Anda harus mengatur parameter |
Untuk informasi lebih lanjut tentang cara memodifikasi parameter instans database, lihat salah satu topik berikut berdasarkan mesin database dari instans database Anda:
ApsaraDB RDS for MySQL: Modifikasi Parameter Instans
PolarDB for MySQL: Konfigurasikan Parameter Kluster dan Node
Referensi
Apa yang harus dilakukan selanjutnya
Ketika deadlock atau pemblokiran transaksi terjadi pada instans database Anda, Anda dapat menggunakan informasi seperti ID thread yang diperoleh setelah analisis kunci untuk menganalisis eksekusi transaksi terkait di halaman Penjelajah SQL dan Audit. Ini membantu mengidentifikasi penyebab penantian kunci. 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 yang memperbarui baris data yang sama akan memasuki status LOCK WAIT.