All Products
Search
Document Center

ApsaraDB RDS:Deadlock

Last Updated:Mar 29, 2026

Tab DeadLock di ApsaraDB RDS for SQL Server menampilkan event deadlock untuk instans Anda, termasuk waktu mulai transaksi, ID sesi, resource yang terkunci, dan jenis deadlock. Gunakan informasi ini untuk mengidentifikasi dan memperbaiki pernyataan SQL serta transaksi yang menyebabkan deadlock.

Cara kerja

Ketika suatu transaksi memodifikasi sebuah resource, SQL Server mengunci resource tersebut untuk mencegah modifikasi bersamaan dan menjaga konsistensi data.

Deadlock terjadi ketika dua transaksi saling memegang kunci yang dibutuhkan oleh pihak lain. Misalnya, Transaksi A mengunci Resource A dan menunggu Resource B, sementara Transaksi B mengunci Resource B dan menunggu Resource A. Kedua transaksi tidak dapat dilanjutkan, sehingga SQL Server menghentikan salah satunya.

死锁

SQL Server memilih sesi yang akan dihentikan berdasarkan biaya rollback: sesi dengan transaksi yang dapat di-rollback dengan biaya terendah akan dihentikan, yang disebut sebagai deadlock victim. Sebagai contoh, jika terjadi deadlock antara sesi SELECT dan sesi UPDATE, SQL Server akan menghentikan sesi SELECT karena lebih murah untuk di-rollback.

Konsep utama

Jenis deadlock

ApsaraDB RDS for SQL Server mendeteksi jenis deadlock berikut:

  • KeyDeadlock

  • ObjectDeadLock

  • RIDDeadlock

  • PageDeadlock

  • ComplieDeadlock

Untuk detail tiap jenis, lihat Lock granularity and hierarchies.

Mode kunci

Mode kunci yang diterapkan pada sebuah resource bergantung pada jenis akses:

  • Shared (S): Resource dapat dibaca tetapi tidak dapat dimodifikasi hingga transaksi melepas kunci shared.

  • Update (U): Transaksi lain tidak dapat memodifikasi resource hingga transaksi tersebut mendapatkan kunci eksklusif pada resource tersebut.

  • Exclusive (X): Tidak ada transaksi lain yang dapat mengakses resource hingga transaksi yang mengunci melepas kunci eksklusif tersebut.

Prasyarat

Sebelum memulai, pastikan bahwa:

  • Instans RDS Anda tidak menjalankan SQL Server 2008 R2 dengan cloud disk.

  • Instans RDS Anda berada di salah satu wilayah berikut: Tiongkok (Hangzhou), Tiongkok (Shanghai), Tiongkok (Qingdao), Tiongkok (Beijing), Tiongkok (Zhangjiakou), Tiongkok (Hohhot), Tiongkok (Ulanqab), Tiongkok (Shenzhen), Tiongkok (Heyuan), Tiongkok (Guangzhou), Tiongkok (Chengdu), Tiongkok (Hong Kong), Singapura, atau UEA (Dubai).

Lihat detail deadlock

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

  2. Di panel navigasi sebelah kiri, pilih Autonomy Services > Lock Optimization.

Referensi tab DeadLock

Jumlah deadlock

Menampilkan jumlah deadlock dalam rentang waktu terkini. Tentukan rentang waktu untuk memfilter hasil.

死锁数量

Tren deadlock

Menampilkan distribusi jenis deadlock dalam rentang waktu tertentu.

死锁变化趋势
  • Tetapkan start time dan waktu akhir, lalu klik Search. Rentang waktu tidak boleh melebihi 30 hari.

  • Klik Last 24 Hours, Last 7 Days, atau Last Month untuk menggunakan rentang waktu yang telah ditentukan.

  • Arahkan kursor ke titik data untuk melihat jenis dan jumlah deadlock pada waktu tersebut.

  • Gunakan ikon 图标 di pojok kanan atas grafik untuk mengubah gaya tampilan atau mengunduh grafik sebagai gambar.

Detail deadlock

死锁详细信息

Klik ikon 加号 di samping catatan deadlock untuk memperluas detail sesi yang memblokir dan yang diblokir.

FieldDescription
LastTranStartedWaktu saat transaksi dimulai dalam sesi
SPIDID sesi
IsVictimApakah sesi tersebut dihentikan sebagai deadlock victim
LogUsedUkuran log transaksi yang dihasilkan dalam sesi, dalam byte
LockModeMode kunci yang dipegang oleh sesi
WaitResourceDescDetail resource yang sedang ditunggu oleh transaksi
ObjectOwnedObjek yang dikunci oleh sesi
ObjectRequestedObjek yang coba dikunci oleh transaksi
WaitResourceNama resource yang sedang ditunggu oleh transaksi
HostNameHost tempat transaksi dijalankan
LoginNameAkun yang digunakan untuk menjalankan transaksi
StatusStatus transaksi dalam sesi
ClientAppKlien yang memulai transaksi
SQLTextPernyataan SQL yang dieksekusi dalam sesi. Klik pernyataan tersebut untuk menyalinnya guna analisis lebih lanjut.

Klik catatan deadlock untuk membuka bagian Deadlock Diagram.

Diagram deadlock

死锁关系图

Menampilkan hubungan antara sesi yang memblokir dan yang diblokir, beserta detail resource yang terkunci. Klik Download untuk mengunduh file XDL, lalu buka di SQL Server Management Studio (SSMS) guna melihat graf deadlock lengkap.

Langkah selanjutnya

Apa yang harus saya lakukan jika terjadi deadlock pada instans ApsaraDB RDS for SQL Server?