Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:SQL Server
Azure SQL Database
Spravovaná instance
Azure SQLAzure Synapse Analytics
PdW (Analytics Platform System)
Sklad v Microsoft Fabric
Databáze SQL v Microsoft Fabric
Vrací informace o aktuálně aktivních zdrojích správce zámků v SQL Serveru. Každý řádek představuje aktuálně aktivní žádost správci zámků o zámek, který byl udělen nebo čeká na schválení.
Sloupce ve výsledné sadě jsou rozděleny do dvou hlavních skupin: zdroj a požadavek. Skupina zdrojů popisuje zdroj, na kterém je žádost o zámek vykonávána, a skupina požadavků popisuje žádost o zámek.
Poznámka:
Pokud to chcete volat ze služby Azure Synapse Analytics nebo systému PDW (Analytics Platform System), použijte název sys.dm_pdw_nodes_tran_locks. Tato syntaxe není podporována bezserverovým fondem SQL ve službě Azure Synapse Analytics.
| Název sloupce | Datový typ | Popis |
|---|---|---|
resource_type |
nvarchar(60) | Představuje typ zdroje. Hodnota může být: DATABASEFILEOBJECTPAGEKEYEXTENTRID (Identifikace řady)APPLICATIONMETADATAHOBT (Heap nebo B-strom)ALLOCATION_UNITXACT (Transakce)OIB (Online build indexu)ROW_GROUP |
resource_subtype |
nvarchar(60) | Reprezentuje podtyp .resource_type Získání podtypového zámku bez držení ne-podtypizovaného zámku rodičovského typu je technicky platné. Různé podtypy nejsou v konfliktu mezi sebou ani s ne-podtypovaným rodičovským typem. Ne všechny typy zdrojů mají podtypy. |
resource_database_id |
int | ID databáze, pod kterou je tento zdroj zařazen. Všechny zdroje spravované správcem zámků jsou omezeny ID databáze. |
resource_description |
nvarchar(256) | Popis zdroje, který obsahuje pouze informace, jež nejsou dostupné z jiných sloupců zdrojů. |
resource_associated_entity_id |
bigint | ID entity v databázi, ke které je zdroj přiřazen. Může to být ID objektu, HoBt ID nebo ID alokační jednotky, v závislosti na typu zdroje. |
resource_lock_partition |
int | ID oddílu zámku pro zdroj rozděleného zámku. Hodnota pro nepartitionované zámkové zdroje je .0 |
request_mode |
nvarchar(60) | Způsob žádosti. Pro samozřejmé žádosti je to udělený režim; Pro čekací požadavky je toto režim, o který žádáme. NULL = K danému zdroji není udělen žádný přístup. Slouží jako dočasný závazek. Sch-S (Stabilita schématu) = Zajišťuje, že prvek schématu, jako je tabulka nebo index, nebude vyhozen, zatímco jakákoli relace drží na tomto prvku schématu uzamčenost stability.Sch-M (Modifikace schématu) = Musí být držen každou relací, která chce změnit schéma určeného zdroje. Zajišťuje, že žádné jiné sezení neodkazují na uvedený objekt.S (Sdílené) = Držící relace získává sdílený přístup ke zdroji.U (Aktualizace) = Označuje aktualizační zámek získaný na zdrojích, které by mohly být nakonec aktualizovány. Používá se k zabránění běžné formě zablokování, které nastává, když více relací uzamkne zdroje pro případné budoucí aktualizace.X (Exkluzivně) = Držící relace získává výhradní přístup ke zdroji.IS (Sdílený záměr) = Označuje záměr umístit S zámků na nějaký podřízený zdroj v hierarchii zámků.IU (Aktualizace záměru) = Označuje záměr umístit U zámky na nějaký podřízený zdroj v hierarchii zámků.IX (Intentionent Exclusive) = Označuje záměr umístit X zámků na nějaký podřízený zdroj v hierarchii zámků.SIU (Aktualizace sdíleného záměru) = Označuje sdílený přístup ke zdroji s cílem získat aktualizační zámky na podřízených zdrojích v hierarchii zámků.SIX (Sdílený záměr exkluzivní) = Označuje sdílený přístup k zdroji s cílem získat exkluzivní zámky na podřízené zdroje v hierarchii zámků.UIX (Exkluzivní záměr aktualizace) = Označuje zadržení zámku aktualizace na zdroji s cílem získat exkluzivní zámky na podřízených zdrojích v hierarchii zámků.BU = Používá se pro hromadné operace.RangeS_S (Sdílený Key-Range a zámek sdílených zdrojů) = Označuje serializovatelný rozsah skenování.RangeS_U (Sdílený Key-Range a aktualizační zámek zdrojů) = Označuje serializovatelné skenovaní aktualizace.RangeI_N (Insert Key-Range and Null Resource lock) = Používá se k testování rozsahů před vložením nového klíče do indexu.RangeI_S = Key-Range Konverzní zámek, vytvořený překryvem a RangeI_NS zámků.RangeI_U = Key-Range Konverzní zámek, vytvořený překryvem zámků RangeI_N a U.RangeI_X = Key-Range Konverzní zámek, vytvořený překryvem a RangeI_NX zámků.RangeX_S = Key-Range Konverzní zámek, vytvořený překryvem RangeI_N a RangeS_S. zámky.RangeX_U = Key-Range Konverzní zámek, vytvořený překryvem a RangeI_NRangeS_U zámků.RangeX_X (Zámek exkluzivního Key-Range a exkluzivního zdroje) = Toto je konverzní zámek používaný při aktualizaci klíče v určitém rozsahu. |
request_type |
nvarchar(60) | Typ požadavku. Hodnota je LOCK. |
request_status |
nvarchar(60) | Aktuální stav této žádosti. Možné hodnoty jsou GRANTED, , CONVERT, WAITLOW_PRIORITY_CONVERT, LOW_PRIORITY_WAIT, nebo ABORT_BLOCKERS. Pro více informací o čekání s nízkou prioritou a blokátorech přerušení viz sekci low_priority_lock_waitvALTER INDEX (Transact-SQL). |
request_reference_count |
smallint | Vrací přibližně početkrát, kolikrát stejný žadatel požadoval tento zdroj. |
request_lifetime |
int | Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
request_session_id |
int |
session_id Kdo v současnosti tuto žádost vlastní. Vlastnictví session_id se může měnit u distribuovaných a vázaných transakcí. Hodnota označuje -2 , že požadavek patří k osiřelé distribuované transakci. Hodnota označuje -3 , že požadavek patří do odložené obnovovací transakce, například k transakci, u které bylo při obnově odloženo vrácení zpět, protože vrácení nemohlo být úspěšně dokončeno. |
request_exec_context_id |
int | ID kontextu provedení procesu, který aktuálně vlastní tento požadavek. |
request_request_id |
int |
request_id (batch ID) procesu, který aktuálně vlastní tento požadavek. Tato hodnota se mění pokaždé, když se změní aktivní spojení Multiple Active Result Set (MARS) pro transakci. |
request_owner_type |
nvarchar(60) | Typ entity, který vlastní požadavek. Požadavky správce zámků mohou vlastnit různé entity. Možné hodnoty:TRANSACTION = Požadavek je vlastněn transakcí.CURSOR = Požadavek je vlastněn kurzorem.SESSION = Požadavek vlastní uživatelská relace.SHARED_TRANSACTION_WORKSPACE = Požadavek vlastní sdílená část transakčního pracovního prostoru.EXCLUSIVE_TRANSACTION_WORKSPACE = Požadavek vlastní výhradní část pracovního prostoru transakce.NOTIFICATION_OBJECT= Požadavek je vlastněn interní komponentou SQL Server. Tato komponenta požádala správce zámků, aby ji upozornil, když jiná komponenta čeká na převzetí zámku. Funkce FileTable je komponenta, která tuto hodnotu používá.Poznámka: Pracovní prostory se využívají interně k držení zámků pro poddůstojnické sezení. |
request_owner_id |
bigint | Identifikace konkrétního vlastníka této žádosti. Když je transakce vlastníkem požadavku, tato hodnota obsahuje ID transakce (transaction ID). Když je FileTable vlastníkem požadavku, request_owner_id má jednu z následujících hodnot:
|
request_owner_guid |
uniqueidentifier | GUID konkrétního vlastníka této žádosti. Tato hodnota se používá pouze v distribuované transakci, kde hodnota odpovídá MS DTC GUID pro danou transakci. |
request_owner_lockspace_id |
nvarchar(32) | Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. Tato hodnota představuje ID zámkového prostoru žadatele. Lockspace ID určuje, zda jsou dva žadatelé kompatibilní a mohou jim být uděleny zámky v režimech, které by jinak kolidovaly. |
lock_owner_address |
varbinary(8) | Paměťová adresa interní datové struktury, která se používá ke sledování tohoto požadavku. Tento sloupec lze spojit s sloupcem s v resource_addresssys.dm_os_waiting_tasks. |
pdw_node_id |
int | Identifikátor uzlu, na který je tato distribuce zapnutá. platí pro: Azure Synapse Analytics, Analytics Platform System (PDW) |
Povolení
Na SQL Server a SQL Managed Instance vyžaduje sys.dm_tran_locksVIEW SERVER STATE oprávnění.
U služby SQL Database Basic, S0a S1 a pro databáze v elastických fondech, účet správce serveru serveru, účet správce Microsoft Entra nebo členství v roli ##MS_ServerStateReader##serveru. U všech ostatních cílů služby SQL Database se vyžaduje buď oprávnění VIEW DATABASE STATE k databázi, nebo členství v roli serveru ##MS_ServerStateReader##.
V SQL analytickém endpointu a Warehouse v Microsoft Fabric je členství v roli Viewer workspace minimálním povolením potřebným pro zobrazení sys.dm_tran_locks.
Oprávnění pro SQL Server 2022 a novější
V SQL Server 2022 a novějších verzích vyžaduje sys.dm_tran_locksVIEW SERVER PERFORMANCE STATE oprávnění na serveru.
Poznámky
Status schválené žádosti znamená, že žadatel má udělený zámek na zdroj. Žádost o čekání znamená, že žádost ještě nebyla schválena. Sloupec request_status vrací následující typy požadavků na čekání:
Stav požadavku pro konverzi znamená, že žadatel již obdržel žádost o zdroj a momentálně čeká na schválení upgradu na původní požadavek.
Stav čekací žádosti znamená, že žadatel momentálně nedrží schválenou žádost na zdroji.
Protože sys.dm_tran_locks jsou vyplňovány z interních struktur správce zámků, udržování těchto informací nepřidává další režie běžnému zpracování. Materializace pohledu vyžaduje přístup k interním datovým strukturám správce zámků. To může mít menší vliv na běžné zpracování na serveru. Tyto efekty by měly být nepostřehnutelné a měly by ovlivňovat jen silně využívané zdroje. Protože data v tomto zobrazení odpovídají stavu správce živých zámků, data se mohou kdykoli změnit a řádky jsou přidávány a odebírány při získávání a uvolňování zámků. Aplikace dotazující tento pohled mohou zaznamenat nepředvídatelný výkon kvůli povaze ochrany integrity struktur správců zámků. Tento pohled nemá žádné historické informace.
Dva požadavky pracují na stejném zdroji pouze tehdy, pokud jsou všechny sloupce skupiny zdrojů stejné.
Zamykaní čtení můžete ovládat pomocí následujících nástrojů:
SET TRANSACTION ISOLATION LEVELpro určení úrovně uzamčení pro relaci. Další informace najdete v tématu SET TRANSACTION ISOLATION LEVEL (Transact-SQL).Zamykací tabulka naznačuje určení úrovně uzamčení pro jednotlivou referenci tabulky ve větě.
FROMPro syntaxi a omezení viz Tabulkové nápovědy (Transact-SQL).
Zdroj, který běží pod tímto režimem session_id , může mít více než jeden udělený zámek. Různé entity, které běží pod jednou relací, mohou mít každý zámek na stejný zdroj a informace se zobrazují ve request_owner_type sloupcích a request_owner_id vrácených .sys.dm_tran_locks Pokud existuje více instancí stejného request_owner_type zařízení, sloupec request_owner_id se používá k rozlišení každé instance. U distribuovaných transakcí request_owner_type sloupce a request_owner_guid ukazují různé informace o entitách.
Například relace S1 vlastní sdílený zámek na Table1; a transakce T1, která běží pod relací S1, také vlastní sdílený zámek na Table1. V tomto případě sloupec resource_description , který je vrácen , sys.dm_tran_locks ukazuje dvě instance stejného zdroje. Sloupec request_owner_type zobrazuje jednu instanci jako relaci a druhou jako transakci. Sloupec resource_owner_id má také různé hodnoty.
Více kurzorů, které běží pod jednou seanci, jsou nerozlišitelné a jsou považovány za jednu entitu.
Distribuované transakce, které nejsou spojeny s hodnotou session_id , jsou osiřelé transakce a jsou přiřazeny session_id hodnotě -2. Další informace najdete v tématu KILL (Transact-SQL).
Locks
Zámky jsou drženy na zdrojích SQL Serveru, například na řádkech přečtených nebo upravených během transakce, aby se zabránilo současnému využívání zdrojů různými transakcemi. Například pokud je exkluzivní (X) zámek držen na řádku v tabulce transakcí, žádná jiná transakce nemůže tento řádek upravit, dokud není zámek uvolněn. Minimalizace zámků zvyšuje souběžnost, což může zlepšit výkon.
Podrobnosti o prostředku
Následující tabulka uvádí zdroje reprezentované ve sloupci resource_associated_entity_id .
| Typ zdroje | Popis prostředku | resource_associated_entity_id |
|---|---|---|
DATABASE |
Představuje databázi. | Není relevantní |
FILE |
Představuje databázový soubor. Tento soubor může být datový nebo logovací soubor. | Není relevantní |
OBJECT |
Představuje objekt v databázi. Tento objekt může být datová tabulka, pohled, uložená procedura, rozšířená uložená procedura nebo jakýkoli objekt, který má ID objektu. | ID objektu |
PAGE |
Představuje jednu stránku v datovém souboru. |
HoBt Doklad. Tato hodnota odpovídá .sys.partitions.hobt_id ID HoBt není vždy dostupné pro zdroje PAGE, protože ID HoBt je další informace, kterou může volající poskytnout, a ne všichni volající mohou tuto informaci poskytnout. |
KEY |
Představuje řádek v indexu. |
HoBt Doklad. Tato hodnota odpovídá .sys.partitions.hobt_id |
EXTENT |
Představuje rozsah datového souboru. Rozsah je skupina osmi souvislých stran. | Není relevantní |
RID |
Představuje fyzickou řadu v haldě. |
HoBt Doklad. Tato hodnota odpovídá .sys.partitions.hobt_id ID HoBt není vždy dostupné pro zdroje RID, protože ID HoBt je další informace, kterou může volající poskytnout, a ne všichni volající mohou tyto informace poskytnout. |
APPLICATION |
Představuje aplikativně specifikovaný zdroj. | Není relevantní |
METADATA |
Představuje informace o metadatech. | Není relevantní |
HOBT |
Reprezentuje haldu nebo B-strom. To jsou základní přístupové cesty. |
HoBt Doklad. Tato hodnota odpovídá .sys.partitions.hobt_id |
OIB |
Představuje online index (znovu)vybudování. |
HoBt Doklad. Tato hodnota odpovídá .sys.partitions.hobt_id |
ALLOCATION_UNIT |
Představuje sadu souvisejících stránek, například indexovou partition. Každá alokační jednotka pokrývá jeden řetězec Index Allocation Map (IAM). | ID jednotky alokace. Tato hodnota odpovídá .sys.allocation_units.allocation_unit_id |
ROW_GROUP |
Reprezentuje skupinu řádků columnstore. | |
XACT |
Představuje transakci. Stává se to, když je zapnuté optimalizované zamykaní . | Existují dva scénáře: Scénář 1 (Majitel) - Typ zdroje: XACT.- Popis zdroje: Když TID je zámek držen, je to resource_description zdroj.XACT- ID entity přiřazené k zdroji: resource_associated_entity_id je 0.Scénář 2 (Číšník) - Typ zdroje: XACT.- Popis zdroje: Když požadavek čeká na TID zámek, je resource_description to XACT zdroj následovaný podkladovým KEYRID nebo zdrojem.- ID entity přiřazené ke zdroji: resource_associated_entity_id je HoBt základní ID. |
Poznámka:
Dokumentace používá termín B-tree obecně v odkazu na indexy. V indexech rowstore databázový stroj implementuje strom B+. To neplatí pro indexy columnstore ani indexy v tabulkách optimalizovaných pro paměť. Další informace najdete v SQL Serveru a architektuře indexu Azure SQL a průvodci návrhem.
Následující tabulka uvádí podtypy, které jsou přiřazeny ke každému typu zdroje.
| ResourceSubType | Synchronizuje |
|---|---|
ALLOCATION_UNIT.BULK_OPERATION_PAGE |
Předem alokované stránky používané pro hromadné operace. |
ALLOCATION_UNIT.PAGE_COUNT |
Statistiky počtu stran alokace během operací odloženého předání. |
DATABASE.BULKOP_BACKUP_DB |
Zálohy databází s hromadnými operacemi. |
DATABASE.BULKOP_BACKUP_LOG |
Zálohy databázových logů s hromadnými operacemi. |
DATABASE.CHANGE_TRACKING_CLEANUP |
Úkoly při čištění změn. |
DATABASE.CT_DDL |
DDL operace na úrovni databáze a tabulek pro sledování změn. |
DATABASE.CONVERSATION_PRIORITY |
Prioritní operace konverzace Service Broker, jako jsou CREATE BROKER PRIORITY. |
DATABASE.DDL |
Operace v datovém jazyku pro definici dat (DDL) s operacemi souborové skupiny, jako je drop. |
DATABASE.ENCRYPTION_SCAN |
Synchronizace šifrování TDE. |
DATABASE.PLANGUIDE |
Synchronizace plánovacího průvodce. |
DATABASE.RESOURCE_GOVERNOR_DDL |
DDL operace pro operace resource govern, jako jsou ALTER RESOURCE POOL. |
DATABASE.SHRINK |
Operace zmenšování databáze. |
DATABASE.STARTUP |
Používá se pro synchronizaci spuštění databáze. |
FILE.SHRINK |
Operace zmenšování souborů. |
HOBT.BULK_OPERATION |
Hromadné operace optimalizované pro haldu s souběžným skenováním při těchto úrovních izolace: snapshot, read uncommitted a read committed pomocí verzování řádků. |
HOBT.INDEX_REORGANIZE |
Operace reorganizace haldy nebo indexu. |
OBJECT.COMPILE |
Uložená procedura zkompilovala. |
OBJECT.INDEX_OPERATION |
Indexové operace. |
OBJECT.UPDSTATS |
Statistiky se aktualizují v tabulce. |
METADATA.ASSEMBLY |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.ASSEMBLY_CLR_NAME |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.ASSEMBLY_TOKEN |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.ASYMMETRIC_KEY |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.AUDIT |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.AUDIT_ACTIONS |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.AUDIT_SPECIFICATION |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.AVAILABILITY_GROUP |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CERTIFICATE |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CHILD_INSTANCE |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.COMPRESSED_FRAGMENT |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.COMPRESSED_ROWSET |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CONVERSTATION_ENDPOINT_RECV |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CONVERSTATION_ENDPOINT_SEND |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CONVERSATION_GROUP |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CONVERSATION_PRIORITY |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CREDENTIAL |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CRYPTOGRAPHIC_PROVIDER |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.DATA_SPACE |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.DATABASE |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.DATABASE_PRINCIPAL |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.DB_MIRRORING_SESSION |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.DB_MIRRORING_WITNESS |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.DB_PRINCIPAL_SID |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.ENDPOINT |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.ENDPOINT_WEBMETHOD |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.EXPR_COLUMN |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.EXPR_HASH |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.FULLTEXT_CATALOG |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.FULLTEXT_INDEX |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.FULLTEXT_STOPLIST |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.INDEX_EXTENSION_SCHEME |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.INDEXSTATS |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.INSTANTIATED_TYPE_HASH |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.MESSAGE |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.METADATA_CACHE |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.PARTITION_FUNCTION |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.PASSWORD_POLICY |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.PERMISSIONS |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.PLAN_GUIDE |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.PLAN_GUIDE_HASH |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.PLAN_GUIDE_SCOPE |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.QNAME |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.QNAME_HASH |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.REMOTE_SERVICE_BINDING |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.ROUTE |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SCHEMA |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SECURITY_CACHE |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SECURITY_DESCRIPTOR |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SEQUENCE |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SERVER_EVENT_SESSIONS |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SERVER_PRINCIPAL |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SERVICE |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SERVICE_BROKER_GUID |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SERVICE_CONTRACT |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SERVICE_MESSAGE_TYPE |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.STATS |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SYMMETRIC_KEY |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.USER_TYPE |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.XML_COLLECTION |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.XML_COMPONENT |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.XML_INDEX_QNAME |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
Následující tabulka uvádí formát sloupce resource_description pro každý typ zdroje.
| Zdroj | Format | Popis |
|---|---|---|
DATABASE |
Není relevantní | ID databáze je již ve sloupci resource_database_id dostupné. |
FILE |
<file_id> |
ID souboru, který je tímto zdrojem reprezentován. |
OBJECT |
<object_id> |
ID objektu, který je tímto zdrojem reprezentován. Tento objekt může být jakýkoli objekt uvedený v , sys.objectsnejen tabulka. |
PAGE |
<file_id>:<page_in_file> |
Představuje ID souboru a stránky stránky, která je tímto zdrojem reprezentována. |
KEY |
<hash_value> |
Představuje hash klíčových sloupců z řádku, který je tímto zdrojem reprezentován. |
EXTENT |
<file_id>:<page_in_files> |
Představuje ID souboru a stránky v rozsahu, který je tímto zdrojem reprezentován. ID rozsahu je stejné jako ID stránky první stránky v rozsahu. |
RID |
<file_id>:<page_in_file>:<row_on_page> |
Představuje ID stránky a ID řádku řádku, který je tímto zdrojem reprezentován. Pokud je přiřazené ID objektu 99, tento zdroj představuje jeden z osmi smíšených stránkových slotů na první IAM stránce IAM řetězce. |
APPLICATION |
<DbPrincipalId>:<up to 32 characters>:(<hash_value>) |
Představuje ID principu databáze, který se používá pro omezení tohoto zdroje zámku aplikace. Součástí je také až 32 znaků z řetězce zdroje, který odpovídá tomuto zdroji zámku aplikace. V určitých případech mohou být zobrazeny pouze dva znaky, protože celý řetězec již není dostupný. Toto chování nastává pouze při obnově databáze u aplikačních zámků, které jsou znovu získány v rámci procesu obnovy. Hodnota hashu představuje hash celého řetězce zdroje, který odpovídá tomuto zdroji zámku aplikace. |
HOBT |
Není relevantní |
HoBtID je zahrnuto jako .resource_associated_entity_id |
ALLOCATION_UNIT |
Není relevantní | Allocation Unit ID je zahrnuto jako .resource_associated_entity_id |
XACT |
<dbid>:<XdesId low>:<XdesId high> |
Zdroj TID (ID transakce). Stává se to, když je zapnuté optimalizované zamykaní . |
XACT KEY |
[XACT <dbid>:<XdesId low>:<XdesId High>] KEY (<hash_value>) |
Základní zdroj, na který transakce čeká, s indexovým objektem KEY . Stává se to, když je zapnuté optimalizované zamykaní . |
XACT RID |
[XACT <dbid>:<XdesId low>:<XdesId High>] RID (<file_id>:<page_in_file>:<row_on_page>) |
Základní zdroj, na který transakce čeká, spolu s objektem haldy RID . Stává se to, když je zapnuté optimalizované zamykaní . |
METADATA.ASSEMBLY |
assembly_id = A |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.ASSEMBLY_CLR_NAME |
$qname_id = Q |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.ASSEMBLY_TOKEN |
assembly_id = A, $token_id |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.ASSYMMETRIC_KEY |
asymmetric_key_id = A |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.AUDIT |
audit_id = A |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.AUDIT_ACTIONS |
device_id = D, major_id = M |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.AUDIT_SPECIFICATION |
audit_specification_id = A |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.AVAILABILITY_GROUP |
availability_group_id = A |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CERTIFICATE |
certificate_id = C |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CHILD_INSTANCE |
$hash = H1:H2:H3 |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.COMPRESSED_FRAGMENT |
object_id = O , compressed_fragment_id = C |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.COMPRESSED_ROW |
object_id = O |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CONVERSTATION_ENDPOINT_RECV |
$hash = H1:H2:H3 |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CONVERSTATION_ENDPOINT_SEND |
$hash = H1:H2:H3 |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CONVERSATION_GROUP |
$hash = H1:H2:H3 |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CONVERSATION_PRIORITY |
conversation_priority_id = C |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CREDENTIAL |
credential_id = C |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.CRYPTOGRAPHIC_PROVIDER |
provider_id = P |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.DATA_SPACE |
data_space_id = D |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.DATABASE |
database_id = D |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.DATABASE_PRINCIPAL |
principal_id = P |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.DB_MIRRORING_SESSION |
database_id = D |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.DB_MIRRORING_WITNESS |
$hash = H1:H2:H3 |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.DB_PRINCIPAL_SID |
$hash = H1:H2:H3 |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.ENDPOINT |
endpoint_id = E |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.ENDPOINT_WEBMETHOD |
$hash = H1:H2:H3 |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.FULLTEXT_CATALOG |
fulltext_catalog_id = F |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.FULLTEXT_INDEX |
object_id = O |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.EXPR_COLUMN |
object_id = O, column_id = C |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.EXPR_HASH |
object_id = O, $hash = H |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.FULLTEXT_CATALOG |
fulltext_catalog_id = F |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.FULLTEXT_INDEX |
object_id = O |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.FULLTEXT_STOPLIST |
fulltext_stoplist_id = F |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.INDEX_EXTENSION_SCHEME |
index_extension_id = I |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.INDEXSTATS |
object_id = O
index_id, nebostats_id = I |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.INSTANTIATED_TYPE_HASH |
user_type_id = U, hash = H |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.MESSAGE |
message_id = M |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.METADATA_CACHE |
$hash = H1:H2:H3 |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.PARTITION_FUNCTION |
function_id = F |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.PASSWORD_POLICY |
principal_id = P |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.PERMISSIONS |
class = C |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.PLAN_GUIDE |
plan_guide_id = P |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.PLAN_GUIDE_HASH |
$hash = H1:H2:H3 |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.PLAN_GUIDE_SCOPE |
scope_id = S |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.QNAME |
$qname_id = Q |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.QNAME_HASH |
$qname_scope_id = Q, $qname_hash = H |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.REMOTE_SERVICE_BINDING |
remote_service_binding_id = R |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.ROUTE |
route_id = R |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SCHEMA |
schema_id = S |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SECURITY_CACHE |
$hash = H1:H2:H3 |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SECURITY_DESCRIPTOR |
sd_id = S |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SEQUENCE |
$seq_type = S, object_id = O |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SERVER |
server_id = S |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SERVER_EVENT_SESSIONS |
event_session_id = E |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SERVER_PRINCIPAL |
principal_id = P |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SERVICE |
service_id = S |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SERVICE_BROKER_GUID |
$hash = H1:H2:H3 |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SERVICE_CONTRACT |
service_contract_id = S |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SERVICE_MESSAGE_TYPE |
message_type_id = M |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.STATS |
object_id = O, stats_id = S |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.SYMMETRIC_KEY |
symmetric_key_id = S |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.USER_TYPE |
user_type_id = U |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.XML_COLLECTION |
xml_collection_id = X |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.XML_COMPONENT |
xml_component_id = X |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
METADATA.XML_INDEX_QNAME |
object_id = O, $qname_id = Q |
Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. |
Examples
A. Používejte sys.dm_tran_locks s dalšími nástroji
Následující příklad funguje se scénářem, kdy je aktualizační operace zablokována jinou transakcí. Používáním sys.dm_tran_locks a dalšími nástroji jsou poskytovány informace o uzamykacích zdrojích.
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;
Následující dotaz zobrazuje informace o zámku. Hodnota pro <dbid> by měla být nahrazena z database_id .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>;
Následující dotaz vrací informace o objektu pomocí resource_associated_entity_id předchozího dotazu. Tento dotaz musí být proveden, zatímco jste připojeni k databázi, která objekt obsahuje.
SELECT object_name(object_id), *
FROM sys.partitions
WHERE hobt_id=<resource_associated_entity_id> ;
Následující dotaz zobrazuje informace o blokování.
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;
Uvolněte zdroje tím, že transakce vrátíte zpět.
-- Session 1
ROLLBACK;
GO
-- Session 2
ROLLBACK;
GO
B. Informace o relaci propojení s vlákny operačního systému
Následující příklad vrací informace, které asociují a session_id s ID vlákna Windows. Výkon vlákna lze sledovat v Windows Sledování výkonuu. Tento dotaz nevrací , session_id která je právě v režimu spánku.
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