Share via


Veritabanı Altyapısı'nda kilitleme

Locking is a mechanism used by the Microsoft SQL Server Veritabanı Altyapısı to synchronize access by multiple users to the same piece of data at the same time.

Bir hareket bir parça veri geçerli durumunu bağımlılığı isteklerdir önce gibi okuma veya değiştirme veri kendisi efektlerini değiştirme aynı verileri başka bir işlem korumalısınız.Hareket veri parçası üzerinde bir kilit isteyerek bunu gerçekleştirir.Farklı modları, gibi paylaşılan veya özel kilit vardır.Kilit modu tanımlar düzey bağımlılığı üzerindeki verileri hareket vardır.Zaten bu verileri başka bir işlem için verilen kilit modu ile çakışan bir kilit hiçbir hareket verilebilir.İşlem örnek aynı veri verilmiş olan bir kilit ile çakışan bir kilit modu isterse Veritabanı Altyapısı isteyen hareketin ilk Kilidi serbest bırakılıncaya kadar duraklatılır.

Bir hareket bir parça veri değiştirildiğinde tutan kilit değişiklik hareketi sonuna kadar koruma.İşlemleri bağlıdır korumak için alınan kilitleri uzun bir hareket tutan nasıl okuma işlem yalıtım düzey ayarı.İşlem tamamlandığında bir hareket tarafından tutulan tüm kilitler serbest bırakılır (ya da tamamlar veya geri alınır).

Uygulamalar genellikle kilitleri doğrudan isteme.Kilitli Dahili bir bölümü tarafından yönetilen Veritabanı Altyapısı adı verilen kilit yöneticisi.Zaman bir örnek , Veritabanı Altyapısı işlemler bir Transact-SQL deyim, Veritabanı Altyapısı sorgu işlemci kaynakları erişilecek olan belirler.Sorgu işlemci kilitleri türleri erişim türüne göre her kaynak korumak için gerekli belirler ve işlem yalıtım düzey ayarı.Sorgu işlemci uygun kilitleri kilit Yöneticisi'nden sonra ister.Diğer hareketler tarafından tutulan çakışan kilit yok ise kilit yöneticisi kilitler verir.

Aşağıdaki tablo kilitleme ana kavramları açıklayan konuları listeler.

Konu

Açıklama

Kilit Parçalı yapı ve hiyerarşileri

Satır, sayfalar, dizinler, tablolar veya veritabanları gibi kaynakların farklı türleri için kilitleri istenebilir.Bazı işlemleri düzeylerde kilitleri yerleştirerek gerektiren taneciklik, kilitleri hiyerarşisi oluşturma.

Kilit modları

Kilitler belirtin farklı modlar sahip düzey diğer işlemler için kilitli kaynak erişimi.

Kilit Uyumluluğu (veritabanı altyapısı)

Bunların kilit modları uyumlu olup birden çok işlem eşzamanlı kilit aynı kaynak elde edebilirler.Bir işlem varolan bir kilit ile çakışan bir kilit modu isterse, ilk Kilidi serbest kadar hareket duraklatıldı.

Anahtar aralığı kilitleme

Anahtar aralık kilitleme sağlar seri hale getirilebilir çalıştıran hareketleri yalıtım düzey hayali ekler ve siler önlemek için.

Kilit yükseltme (veritabanı altyapısı)

Bir hareket çok sayıda satır veya sayfa kilitleri güncelleştirdiğini, Veritabanı Altyapısı izni verebilir bir tablo kilidi ve ardından. kilitleme ek yükünü en aza indirmek için tüm alt düzey kilitleri serbest

Dinamik kilitleme

The Veritabanı Altyapısı can dynamically choose the level of lock granularity based on the optimizer's estimate of the number of rows a Transact-SQL statement will reference.

Kilitleme bilgileri (veritabanı altyapısı) görüntüleme

The Veritabanı Altyapısı and its associated APIs provide several mechanisms for displaying information about the locks currently held in an instance or a database.

Deadlocking

Kilitlenmeler iki kalıcı olarak görev yaparken ortaya blok birbirine her görev bir görev tarafından gerekli bir kaynak üzerindeki kilit olduğundan.