Artikel ini menunjukkan petua penting untuk mengelakkan kebuntuan masuk SQL Servers
Walaupun SQL Server telah menyaksikan evolusi besar dalam beberapa tahun kebelakangan ini, pengguna masih kerap menghadapi situasi kebuntuan. Sebaik-baiknya, pelayan pangkalan data harus dapat mengambil banyak permintaan tetapi sering menghasilkan blok. Konflik di mana satu proses menunggu pembebasan sumber lain disebut blok. Dan kemudian ada Kebuntuan.
Bayangkan keadaan di mana satu orang meminta yang kedua melepaskan sumber dan yang kedua sedang menunggu yang pertama melepaskan. Akibatnya, kedua-duanya terjebak dalam keadaan buntu. Tidak ada proses yang dapat diteruskan kerana kedua-duanya terkunci dan memerlukan yang lain untuk melepaskan sumber atau kunci.
Semasa bekerja dengan SQL servers, kebuntuan adalah perkara biasa dan ia boleh menghalang keseluruhan proses. Tidak mustahil untuk mengelakkan kebuntuan sama sekali tetapi seseorang pasti dapat meminimumkan peluang untuk mewujudkan kebuntuan.
Masalah kebuntuan

Perlu diingatkan bahawa kebuntuan secara langsung mempengaruhi prestasi dan boleh menghentikan pemprosesan pangkalan data.
1. Pastikan pesanan sama
Kebuntuan pasti akan berlaku jika sumber tidak diproses dalam susunan yang jelas. Untuk meminimumkan kebuntuan, semua transaksi serentak harus mengakses objek dalam susunan yang jelas. DBA harus mereka bentuk satu set peraturan yang jelas untuk mengakses objek Pangkalan Data. Biasanya Lock Monitor melakukan pemeriksaan kebuntuan dan apabila dikesan, mereka memilih satu mangsa kebuntuan dan membatalkan transaksinya. Oleh itu, semua kunci dilepaskan dan sesi sebelumnya dibenarkan untuk meneruskan proses. Mangsa kebuntuan dipilih berdasarkan keutamaan kebuntuan yang ditetapkan oleh Pelayan atau kos pembatalan.
2. Sekatan semasa Transaksi
Anda boleh mengehadkan pengguna untuk memasukkan segala jenis data semasa transaksi diproses dan anda boleh mengemas kini data sebelum transaksi untuk mengelakkan kebuntuan. Juga, cubalah menjaga interaksi pengguna ke tahap minimum kerana mempengaruhi kelajuan. Sebaik-baiknya, urus niaga harus pendek dan cepat untuk mengelakkan kebuntuan. Aplikasi harus dirancang sedemikian rupa sehingga memegang kunci dalam masa yang paling minimum dan melepaskannya secepat mungkin.
3. Petunjuk NOLOCK
Apabila seseorang menjalankan pertanyaan terhadap jadual di tahap pengasingan lalai SQL, jadual terkunci dan pertanyaan seterusnya harus menunggu pembebasannya. NOLOCK Petunjuk berguna dalam situasi seperti yang memungkinkan penguncian penguncian meja yang berlebihan dan pertanyaan lain mendapat akses mudah.
4. Gunakan Sambungan Terikat
Sekiranya aplikasi yang sama dapat membuka dua atau lebih sambungan yang dapat bekerjasama antara satu sama lain, maka itu tidak akan mewujudkan kebuntuan. Itulah sebabnya disarankan untuk menggunakan sambungan Bound.
Kebuntuan bukan satu-satunya kerumitan yang mungkin anda alami semasa mengerjakan SQL Server pangkalan data. Sebenarnya kejadian rasuah sql lebih cenderung menimbulkan kesedihan kepada anda. Untuk mengelakkan senario kehilangan data melabur dalam alat pemulihan yang kuat seperti DataNumen SQL Recovery.
Pengenalan Pengarang:
Victor Simon adalah pakar pemulihan data di DataNumen, Inc., yang merupakan pemimpin dunia dalam teknologi pemulihan data, termasuk pemulihan mdb dan produk perisian pemulihan sql. Untuk maklumat lebih lanjut, lawati https://www.datanumen.com/