Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Microsoft Fabric'te SQL veritabanı
Her anlık çekim işlemi başladığında aktif olan sequence_number işlem için sanal bir tablo döndürür. Bu görüşle sağlanan bilgiler size aşağıdakileri yapmanızda yardımcı olabilir mi:
Şu anda aktif olan anlık işlem sayısını bulun.
Belirli bir anlık görüntü işlemi tarafından göz ardı edilen veri değişikliklerini tespit edin. Bir anlık görüntü işlemi başladığında aktif olan bir işlem için, o işlem gerçekleştikten sonra bile o işlem tarafından yapılan tüm veri değişiklikleri anlık görüntü işlemi tarafından göz ardı edilir.
Örneğin, sys.dm_tran_transactions_snapshot'dan aşağıdaki çıktıyı ele alalım:
transaction_sequence_num snapshot_id snapshot_sequence_num
------------------------ ----------- ---------------------
59 0 57
59 0 58
60 0 57
60 0 58
60 0 59
60 3 57
60 3 58
60 3 59
60 3 60
Sütun transaction_sequence_num , mevcut anlık görüntü işlemlerinin işlem dizisi (XSN) numarasını tanımlar. Çıktı iki gösteriyor: 59 ve 60. Sütun, snapshot_sequence_num her anlık çekim işlemi başladığında aktif olan işlemlerin işlem dizisi numarasını belirler.
Çıktı, XSN-59 anlık işlem işlemi başlarken iki aktif işlem olan XSN-57 ve XSN-58 çalışırken gösterilir. Eğer XSN-57 veya XSN-58 veri değişiklikleri yaparsa, XSN-59 değişiklikleri görmezden gelir ve veritabanının işlem açısından tutarlı bir görünümünü korumak için satır sürümleme kullanır.
Anlık görüntü işlemi XSN-60, XSN-57 ve XSN-58 ile ayrıca XSN 59 tarafından yapılan veri değişikliklerini görmezden gelir.
Döndürülen Tablo
| Sütun adı | Veri türü | Description |
|---|---|---|
| transaction_sequence_num | bigint | Bir anlık görüntü işleminin işlem dizisi numarası (XSN). |
| snapshot_id | int | Her Transact-SQL ifadesi için anlık tanım kimliği, satır sürümleme kullanılarak read-committed altında başlatılır. Bu değer, satır sürümüyle read-committed altında çalıştırılan her sorguyu destekleyen veritabanının işlemsel olarak tutarlı bir görünümünü oluşturmak için kullanılır. |
| snapshot_sequence_num | bigint | Anlık çekim işlemi başladığında aktif olan bir işlemin işlem dizisi numarası. |
Permissions
SQL Server ve SQL Yönetilen Örneği'ne VIEW SERVER STATE izni gerekir.
SQL Veritabanı Temel,S0 ve S1 hizmet hedeflerinive elastik havuzlardaki veritabanları için, sunucu yöneticisi hesabı, Microsoft Entra yönetici hesabı veya ##MS_ServerStateReader##sunucu rolü üyeliği gereklidir. Diğer tüm SQL Veritabanı hizmet hedeflerinde, veritabanında VIEW DATABASE STATE izni veya ##MS_ServerStateReader## sunucu rolü üyeliği gereklidir.
SQL Server 2022 ve üzeri için izinler
Sunucuda SUNUCU PERFORMANS DURUMUNU GÖRÜNTÜLE izni gerektirir.
Açıklamalar
Bir anlık işlem başladığında, Veritabanı Motoru o anda aktif olan tüm işlemleri kaydeder. sys.dm_tran_transactions_snapshot , şu anda aktif olan tüm anlık görüntüler işlemleri için bu bilgileri bildirir.
Her işlem, işlem başladığında atanan bir işlem dizisi numarasıyla tanımlanır. İşlemler, BEGIN TRANSACTION veya BEGIN WORK ifadesi yürütüldüğünde başlar. Ancak, Veritabanı Motoru, BEGIN TRANSACTION veya BEGIN WORK ifadesinden sonra verilere erişen ilk Transact-SQL ilanının yürütülmesiyle işlem dizisi numarasını atar. İşlem dizisi numaraları bir kat artırılır.
Ayrıca Bkz.
Dinamik Yönetim Görünümleri ve İşlevleri (Transact-SQL)
İşlemle İlgili Dinamik Yönetim Görünümleri ve İşlevleri (Transact-SQL)