Udostępnij za pośrednictwem


sys.dm_tran_locks (języka Transact-SQL)

Zwraca informacje dotyczące aktualnie aktywnej blokada Menedżera zasobów.Każdy wiersz reprezentuje aktywne żądania do Menedżera blokada dla blokada, które przyznano lub oczekuje na przyznawane.

Kolumny zestaw wyników są podzielone na dwie główne grupy: zasób, a żądanie. Grupy zasób zawiera opis zasób, na którym odbywa się żądanie blokada i opisano grupy żądania, żądanie blokada.

Nazwa kolumna

Typ danych

Description

resource_type

nvarchar(60)

Reprezentuje typ zasób.Wartość może być jedną z następujących czynności: Bazy danych, FILE, OBJECT, strona, klucz, zakresie, RID, aplikacja, metadane, HOBT lub ALLOCATION_UNIT.

resource_subtype

nvarchar(60)

Reprezentuje podtypem resource_type.Pobieranie blokada podtypu bez przytrzymywania nonsubtyped blokada tego typu obiektu nadrzędnego jest technicznie prawidłowy.Różne podtypów nie kolidują ze sobą lub z typu nadrzędnego nonsubtyped.Nie wszystkie typy zasób podtypy.

resource_database_id

int

Identyfikator bazy danych, w których ten zasób jest objęty zakresem.Wszystkie zasoby obsługiwane przez Menedżera blokada są o zakresie według identyfikatora bazy danych.

resource_description

nvarchar(256)

Opis zasób, który zawiera tylko te informacje, które nie są dostępne z innych kolumn zasób.

resource_associated_entity_id

bigint

Identyfikator obiekt w bazie danych, z którą jest skojarzony zasób.Może to być identyfikator obiektu, Hobt IDENTYFIKATORA lub IDENTYFIKATORA jednostka alokacji, w zależności od typu zasób.

resource_lock_partition

Int

Identyfikator partycji blokad dla zasób blokada podzielonym na partycje.Wartość nonpartitioned blokada zasobów wynosi 0.

request_mode

nvarchar(60)

Tryb żądania.Udzielone żądania jest przyznany tryb; dla oczekujących żądań, jest to tryb żądana.

request_type

nvarchar(60)

Żądanie typu.Wartość jest blokada.

request_status

nvarchar(60)

Bieżący stan tego żądania.Możliwe wartości są wydana, CONVERT lub WAIT.

request_reference_count

smallint

Zwraca przybliżoną liczbę razy ten sam żądającego zażądał tego zasób.

request_lifetime

int

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

request_session_id

int

Identyfikator sesja, która jest aktualnie właścicielem tego żądania.Posiadanie IDENTYFIKATORA sesja można zmienić dla transakcji rozproszonych i związanego.Wartość 2 wskazuje, że żądanie należy oddzielonych transakcja rozproszona.Wartość-3 wskazuje, że żądanie należy do odzyskiwanie odroczonych transakcji, takie jak transakcji, dla których wycofywanie zostało odłożone na odzyskiwanie ponieważ wycofywanie nie została ukończona pomyślnie.

request_exec_context_id

int

Identyfikator kontekstu wykonania procesu, który jest aktualnie właścicielem tego żądania.

request_request_id

int

Identyfikator żądania (identyfikator partia) procesu, który jest aktualnie właścicielem tego żądania.Wartość ta spowoduje zmianę wszystkich czas zmieniający aktywne połączenie wielu Active zestaw wyników (MARS) dla transakcji.

request_owner_type

nvarchar(60)

Typ obiektu, do którego należy żądanie.Żądania blokada manager może należeć przez różne podmioty.Możliwe wartości to:

TRANSACTION = żądanie jest posiadany przez transakcję.

CURSOR = żądanie jest posiadany przez kursor.

sesja = żądanie jest właścicielem sesja użytkownika.

SHARED_TRANSACTION_WORKSPACE = żądanie jest własnością część udostępnionego obszaru roboczego transakcji.

EXCLUSIVE_TRANSACTION_WORKSPACE = żądanie jest własnością wyłączne części obszaru roboczego transakcji.

NoteNote:
Spacje gniazda są używane wewnętrznie do przechowywania blokad dla sesji wyświetlone.

request_owner_id

bigint

Identyfikator określonego właściciela tego żądania.Ta wartość jest używana tylko dla transakcji, dla którego jest to identyfikator transakcji.

request_owner_guid

uniqueidentifier

Identyfikator GUID określonego właściciela tego żądania.Ta wartość jest tylko używany przez transakcja rozproszona gdzie wartość odpowiada MS DTC identyfikatora GUID dla danej transakcji.

request_owner_lockspace_id

nvarchar(32)

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed. Ta wartość reprezentuje identyfikator lockspace żądającego.Identyfikator lockspace Określa, czy dwa żądające są zgodne ze sobą i mogą być udzielane blokad w trybach, które w przeciwnym razie byłoby w konflikcie ze sobą.

lock_owner_address

varbinary(8)

Pamięć struktury adresu wewnętrzne dane, które jest używane do śledzenia tego żądania.W tej kolumnie mogą zostać sprzężone z resource_address kolumnasys.dm_os_waiting_tasks.

Uprawnienia

Wymaga uprawnienia VIEW SERVER STATE na serwerze.

Remarks

Udzielone stan żądania wskazuje, że udzielono blokada do zasób do żądającego.Żądania oczekujące wskazuje, że żądanie nie zostało jeszcze udzielone.Następujące typy oczekiwania na żądanie są zwracane przez request_status kolumna:

  • Stan żądania do konwersji wskazuje, że żądającego już udzielono żądanie dotyczące zasób i oczekiwaniem na uaktualnienie żądania początkowego mają być przyznane.

  • Stan oczekiwania żądania wskazuje, że żądającego nie aktualnie posiada udzielone żądania dla danego zasób.

Ponieważ sys.dm_tran_locks jest wypełniana od blokada wewnętrznych struktur danych menedżera, utrzymywania tych informacji nie powoduje dodania bardzo narzutów na zwykłe przetwarzanie.Materializing widoku wymaga dostępu do struktur wewnętrznych danych Menedżera blokada.To może mieć niewielkie wpływ na zwykłe przetwarzanie na serwerze.Efekty te powinny być unnoticeable i tylko powinna wpływać na zasoby obciążonych.Ponieważ dane w tym widoku odpowiada blokada menedżera stanu na żywo, dane w dowolnej chwili można zmienić, a wiersze są dodawane i usuwane zgodnie z blokada są nabyty oraz zwalniane.W tym widoku nie ma historycznych informacji.

Dwa żądania działają w ten sam zasób tylko wtedy, gdy wszystkie kolumny z grupy zasobów są równe.

Można kontrolować, blokowanie operacji odczytu za pomocą następujących narzędzi:

Zasób, który działa w jednym identyfikator sesja może mieć więcej niż jedną blokadę udzielone.Każdy różnych obiektów, które działają w jednej sesja mogą należeć blokada na tych samych zasób, a informacje są wyświetlane w request_owner_type and request_owner_id kolumny, które są zwracane przez sys.dm_tran_locks.Jeśli wiele wystąpień tego samego request_owner_type istnieje request_owner_id kolumna jest używana do odróżniania każde wystąpienie.Dla transakcji rozproszonych request_owner_type and the request_owner_guid kolumn są wyświetlane informacje innego obiektu.

Na przykład sesja S1 właścicielem blokada udostępnionego na Tabela1również właścicielem udostępnionego blokadę ; i transakcji T1, w którym jest uruchomiona w ramach sesja S1,Tabela1.W takim przypadek resource_description Kolumna zwracasys.dm_tran_locks zostaną wyświetlone dwa wystąpienia tego samego zasób.The request_owner_type kolumna will show one wystąpienie as a sesja and the other as a transaction.Ponadto resource_owner_id kolumna będzie zawierać różne wartości.

Uwaga

Wiele kursory, które są uruchamiane w jednej sesja są nie do odróżnienia i są traktowane jako jeden obiekt.

Aby uzyskać więcej informacji na temat typów blokady używane przez SQL Server Database Engine, zobacz Blokowanie w aparat bazy danych.

Transakcje rozproszone, które nie są skojarzone z wartością IDENTYFIKATORA sesja są oddzielone transakcji i są przypisane wartości IDENTYFIKATORA sesja od -2.Aby uzyskać więcej informacji zobacz"Zabicia" (języka Transact-SQL).

Szczegóły zasób

Poniższa tabela zawiera listę zasobów, które są reprezentowane w resource_associated_entity_id kolumna.

Typ zasób

Opis zasób

Resource_associated_entity_id

BAZY DANYCH

Reprezentuje bazy danych.

Nie dotyczy

PLIK

Reprezentuje plik bazy danych.Ten plik może być danych lub pliku dziennika.

Nie dotyczy

OBIEKT

Reprezentuje obiekt bazy danych.Ten obiekt może być tabela danych, widoku, procedury przechowywanej, rozszerzona procedura składowana lub dowolny obiekt, który ma identyfikator obiektu.

Identyfikator obiektu

strona

Reprezentuje jedną strona w pliku danych.

Identyfikator HoBt.Wartość ta odpowiada sys.Partitions.hobt_id.Identyfikator HoBt nie jest zawsze dostępna strona zasobów, ponieważ identyfikator HoBt to dodatkowe informacje, które mogą być dostarczone przez obiekt wywołujący, a nie wszystkie obiekty wywołujące może dostarczyć te informacje.

KLUCZ

Reprezentuje wierszy w indeksie.

Identyfikator HoBt.Wartość ta odpowiada sys.Partitions.hobt_id.

fragment

Reprezentuje w zakresie pliku danych.fragment jest to grupa osiem stron ciągłych.

Nie dotyczy

IDENTYFIKATOR RID

Reprezentuje fizyczną wiersza w sterty.

Identyfikator HoBt.Wartość ta odpowiada sys.Partitions.hobt_id.Identyfikator HoBt nie jest zawsze dostępne dla zasobów RID, ponieważ identyfikator HoBt to dodatkowe informacje, które mogą być dostarczone przez obiekt wywołujący, a nie wszystkie obiekty wywołujące może dostarczyć te informacje.

APLIKACJA

Reprezentuje aplikacji podanego zasób.

Nie dotyczy

METADANE

Reprezentuje informacje metadane.

Nie dotyczy

HOBT

Reprezentuje sterty B-drzewo.Są to struktur ścieżka dostępu podstawowego.

Identyfikator HoBt.Wartość ta odpowiada sys.Partitions.hobt_id.

ALLOCATION_UNIT

Reprezentuje zbiór powiązanych stron, takich jak partycji indeksu.Każdy jednostka alokacji obejmuje jeden łańcuch alokacji indeksu tablicy (IAM).

jednostka alokacji ID.Wartość ta odpowiada sys.allocation_units.allocation_unit_id.

Poniższa tabela zawiera listę podtypów, które są skojarzone z każdego typu zasób.

ResourceSubType

Synchronizuje

DATABASE.BULKOP_BACKUP_DB

Kopie zapasowe bazy danych z operacji zbiorczej.

DATABASE.BULKOP_BACKUP_LOG

Kopie zapasowe bazy danych dziennika operacji zbiorczej.

DATABASE.DDL

Definicja języka (DDL) operacje na danych z pliku grupy operacje, takie jak upuszczania.

DATABASE.STARTUP

Używane do synchronizacji uruchamiania bazy danych.

tabela.UPDSTATS

Statystyki aktualizacji w tabela.

tabela.COMPILE

Przechowywana procedura kompilacji.

tabela.INDEX_OPERATION

Indeks operacji.

HOBT.INDEX_REORGANIZE

Operacje reorganizacji sterty lub indeks.

HOBT.BULK_OPERATION

Operacje ładowania zoptymalizowane sterty zbiorcze z równoczesnych skanowania, te poziomy izolacji w obszarze: migawka, przeczytaj nieprzydzielonych i odczytu popełnionego przy użyciu wersji wiersza.

ALLOCATION_UNIT.PAGE_COUNT

Alokacja jednostki strona licznik statystyki podczas operacji odroczone upuszczania.

metadane.INDEXSTATS

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.STATS

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.XML_COLLECTION

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SEQUENCE

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.QNAME

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.ASSEMBLY_CLR_NAME

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.ASSEMBLY_TOKEN

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.wirtualny plik dziennika

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.PARTITION_FUNCTION

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.DATA_SPACE

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.USER_TYPE

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.DB_PRINCIPAL_SID

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.DATABASE_PRINCIPAL

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SCHEMA

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.XML_COMPONENT

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SERVER

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.INSTANTIATED_TYPE_HASH

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.DB_MIRRORING_SESSION

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.ENDPOINT

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SECURITY_CACHE

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.DB_MIRRORING_WITNESS

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.CREDENTIAL

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SECURITY_DESCRIPTOR

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SERVICE_BROKER_GUID

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.CONVERSTATION_ENDPOINT_RECV

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.DATABASE

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.CONVERSATION_GROUP

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.ENDPOINT_WEBMETHOD

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.ASSYMMETRIC_KEY

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.FULLTEXT_CATALOG

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.FULLTEXT_INDEX

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SERVER_PRINCIPAL

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.trasa

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.MESSAGE

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.QNAME_HASH

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SERVICE_MESSAGE_TYPE

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.CONVERSTATION_ENDPOINT_SEND

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.certyfikat

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SYMMETRIC_KEY

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.XML_INDEX_QNAME

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SERVICE_CONTRACT

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.REMOTE_SERVICE_BINDING

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.usługa

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.METADATA_CACHE

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

Poniższa tabela zawiera format resource_description kolumna dla każdego typu zasób.

Zasób

Format

Description

BAZY DANYCH

Nie dotyczy

Identyfikator bazy danych jest już dostępny w resource_database_id kolumna.

PLIK

<file_id>

Identyfikator pliku, który jest reprezentowany przez ten zasób.

OBIEKT

<object_id>

Identyfikator obiektu, który jest reprezentowany przez ten zasób.Ten obiekt może być dowolny obiekt na liście sys.Objects, nie tylko w tabela.

strona

<file_id>:<page_in_file>

Reprezentuje identyfikator strona i pliku strona, która jest reprezentowany przez ten zasób.

KLUCZ

<hash_value>

Reprezentuje wartość mieszania kolumn klucz w wierszu, który jest reprezentowany przez ten zasób.

fragment

<file_id>:<page_in_files>

Reprezentuje identyfikator pliku i strona w zakresie, w jakim jest reprezentowany przez ten zasób.Identyfikator fragment jest taka sama, jak identyfikator strona na pierwszej stronie w zakresie.

IDENTYFIKATOR RID

<file_id>:<page_in_file>:<row_on_page>

Reprezentuje identyfikator strona i identyfikator wiersza w wierszu, który jest reprezentowany przez ten zasób.Należy zauważyć, że jeśli IDENTYFIKATORA obiektu skojarzonego 99, ten zasób reprezentuje jeden z ośmiu gniazda mieszanych strona na pierwszej stronie IAM IAM systemu.

APLIKACJA

<DbPrincipalId>:<do kwoty 32 znaków>:(<hash_value>)

Reprezentuje identyfikator bazy danych głównych, która jest używana do określania zakresów tego zasób blokada aplikacji.Również w skład wchodzą do 32 znaków z ciąg zasób, odpowiadający tego zasób blokadę aplikacji.W niektórych przypadkach można wyświetlić tylko dwa znaki ze względu na pełny ciąg znaków, nie są dostępne.To zachowanie występuje tylko w czasie odzyskiwanie bazy danych dla aplikacji blokad, które są reacquired jako część procesu odzyskiwanie.Wartość mieszania reprezentuje wartość mieszania ciąg pełnego zasobu, który odpowiada ten zasób blokada aplikacji.

HOBT

Nie dotyczy

Identyfikator HoBt jest włączony jako resource_associated_entity_id.

ALLOCATION_UNIT

Nie dotyczy

Identyfikator jednostka alokacji jest włączony jako resource_associated_entity_id.

metadane.SEQUENCE

$ seq_type = S, object_id = O

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.STATS

object_id = O stats_id = S

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SCHEMA

schema_id = S

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.INDEXSTATS

object_id = O, index_id lub stats_id = I

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.DATABASE_PRINCIPAL

principal_id = P

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.DB_PRINCIPAL_SID

wartość mieszania $ = H1:H2:H3

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.USER_TYPE

user_type_id = U

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.DATA_SPACE

data_space_id = D

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.PARTITION_FUNCTION

function_id = F

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.PARTITION_FUNCTION

function_id = F

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.wirtualny plik dziennika

assembly_id = A

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.ASSEMBLY_TOKEN

assembly_id = A $ token_id = T

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.ASSEMBLY_CLR_NAME

$ qname_id = Q

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.QNAME

$ qname_id = Q

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.XML_COLLECTION

xml_collection_id = X

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.XML_COMPONENT

xml_component_id = X

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.QNAME_HASH

$ qname_scope_id = Q $ qname_hash = H

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.XML_INDEX_QNAME

object_id = O $ qname_id = Q

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SERVICE_MESSAGE_TYPE

message_type_id = M

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SERVICE_CONTRACT

service_contract_id = S

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.usługa

service_id = S

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.REMOTE_SERVICE_BINDING

remote_service_binding_id = R

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.trasa

route_id = R

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.FULLTEXT_INDEX

object_id = O

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.FULLTEXT_CATALOG

fulltext_catalog_id = F

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.CONVERSATION_GROUP

conversation_group_id = C

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.CONVERSTATION_ENDPOINT_SEND

wartość mieszania $ = H1:H2:H3

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.CONVERSTATION_ENDPOINT_RECV

wartość mieszania $ = H1:H2:H3

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SYMMETRIC_KEY

symmetric_key_id = S

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.certyfikat

certificate_id = C

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.ASSYMMETRIC_KEY

asymmetric_key_id = A

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.DATABASE

database_id = D

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.MESSAGE

message_id = M

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SERVER_PRINCIPAL

principal_id = P

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SERVER

server_id = S

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.ENDPOINT

endpoint_id = E

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.ENDPOINT_WEBMETHOD

wartość mieszania $ = H1:H2:H3

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.DB_MIRRORING_SESSION

database_id = D

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.DB_MIRRORING_WITNESS

wartość mieszania $ = H1:H2:H3

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SERVICE_BROKER_GUID

wartość mieszania $ = H1:H2:H3

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SERVICE_BROKER_GUID

wartość mieszania $ = H1:H2:H3

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.CREDENTIAL

credential_id = C

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.INSTANTIATED_TYPE_HASH

user_type_id = U mieszania = H1

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SECURITY_DESCRIPTOR

sd_id = S

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.SECURITY_CACHE

wartość mieszania $ = H1:H2:H3

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

metadane.METADATA_CACHE

wartość mieszania $ = H1:H2:H3

Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

Przykłady

A.Za pomocą sys.dm_tran_locks z innymi narzędziami

Poniższy przykład działa w przypadku scenariusza, w którym operacja aktualizacji jest zablokowany przez inną transakcję.Za pomocą sys.dm_tran_locks i innych narzędzi podano informacje dotyczące blokowania zasobów.

USE tempdb;
GO

-- Create test table and index.
CREATE TABLE t_lock
    (
    c1 int, c2 int
    );
GO

CREATE INDEX t_lock_ci on t_lock(c1);
GO

-- Insert values into test table
INSERT INTO t_lock VALUES (1, 1);
INSERT INTO t_lock VALUES (2,2);
INSERT INTO t_lock VALUES (3,3);
INSERT INTO t_lock VALUES (4,4);
INSERT INTO t_lock VALUES (5,5);
INSERT INTO t_lock VALUES (6,6);
GO

-- Session 1
SET TRANSACTION ISOLATION LEVEL READ COMMITTED;

BEGIN TRAN
    SELECT c1
        FROM t_lock
        WITH(holdlock, rowlock);

-- Session 2
BEGIN TRAN
    UPDATE t_lock SET c1 = 10

W następującej kwerendzie spowoduje wyświetlenie informacji o blokada.Wartość parametru <dbid> powinien zostać zastąpiony database_id from sys.Databases.

SELECT resource_type, resource_associated_entity_id,
    request_status, request_mode,request_session_id,
    resource_description 
    FROM sys.dm_tran_locks
    WHERE resource_database_id = <dbid>

Następująca kwerenda zwraca informacje o obiekcie za pomocą resource_associated_entity_id z poprzedniej kwerendy. Tę kwerendę należy uruchomić podczas połączenia z bazą danych, która zawiera obiekt.

SELECT object_name(object_id), *
    FROM sys.partitions
    WHERE hobt_id=<resource_associated_entity_id>

Następująca kwerenda pokaże blokowanie informacji.

SELECT 
        t1.resource_type,
        t1.resource_database_id,
        t1.resource_associated_entity_id,
        t1.request_mode,
        t1.request_session_id,
        t2.blocking_session_id
    FROM sys.dm_tran_locks as t1
    INNER JOIN sys.dm_os_waiting_tasks as t2
        ON t1.lock_owner_address = t2.resource_address;

Zwolnij zasoby przez wycofywanie transakcji.

-- Session 1
ROLLBACK;
GO

-- Session 2
ROLLBACK;
GO

B.Łączenie informacji o sesja wątki systemu operacyjnego

W poniższym przykładzie zwraca informacje, które skojarzenie IDENTYFIKATORA sesja z identyfikatorem wątek systemu Windows.W Monitorze wydajności systemu Windows można monitorować wydajność wątek.Ta kwerenda nie zwraca sesja identyfikatorów, które są aktualnie stan uśpienia.

SELECT STasks.session_id, SThreads.os_thread_id
    FROM sys.dm_os_tasks AS STasks
    INNER JOIN sys.dm_os_threads AS SThreads
        ON STasks.worker_address = SThreads.worker_address
    WHERE STasks.session_id IS NOT NULL
    ORDER BY STasks.session_id;
GO