Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Mengatasi kesalahan MySQL Deadlock ditemukan saat mencoba mendapatkan kunci; coba mulai ulang transaksi

Jika Anda menggunakan InnoDB atau RDBMS transaksional tingkat baris, maka ada kemungkinan apa saja transaksi tulis dapat menyebabkan kebuntuan, bahkan dalam situasi yang sangat normal. Tabel yang lebih besar, penulisan yang lebih besar, dan blok transaksi yang panjang akan sering meningkatkan kemungkinan terjadinya kebuntuan. Dalam situasi Anda, mungkin kombinasi dari ini.

Satu-satunya cara untuk benar-benar menangani kebuntuan adalah dengan menulis kode Anda untuk mengharapkannya. Ini umumnya tidak terlalu sulit jika kode database Anda ditulis dengan baik. Seringkali Anda cukup memasukkan try/catch di sekitar logika eksekusi kueri dan mencari jalan buntu saat terjadi kesalahan. Jika Anda menangkapnya, hal yang biasa dilakukan adalah mencoba mengeksekusi kueri yang gagal lagi.

Saya sangat menyarankan Anda membaca halaman ini dalam panduan MySQL. Ini memiliki daftar hal yang harus dilakukan untuk membantu mengatasi kebuntuan dan mengurangi frekuensinya.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara memperbarui jika ada, masukkan jika tidak (AKA upsert atau merge) di MySQL?

  2. Bagaimana NOT LIKE Bekerja di MySQL

  3. Siapkan MySQL 8 dari Binary Tarball

  4. PDO fetchSemua pasangan nilai kunci grup ke dalam array assoc

  5. Bagaimana Fungsi LOCATE() Bekerja di MySQL