Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Objektet Transactions i Microsoft SQL Server tillhandahåller räknare för att övervaka antalet transaktioner aktiva i en instans av Database Engine, och effekterna av dessa transaktioner på resurser såsom snapshot isolation radversionslagring i tempdb. Transaktioner är logiska arbetsenheter; en uppsättning operationer som antingen alla måste lyckas eller alla raderas från en databas för att upprätthålla datans logiska integritet. Alla ändringar av data i SQL Server-databaser sker i transaktioner.
När en databas är inställd på att tillåta snapshot-isoleringsnivå måste SQL Server föra en logg över de ändringar som gjorts i varje rad i en databas. Varje gång en rad ändras lagras en kopia av raden som den fanns före ändringen i en radversion i tempdb. Många av räknarna i Transaktionsobjektet kan användas för att övervaka storleken och tillväxttakten för radversionslagret i tempdb.
Objekträknarna Transactions rapporterar alla transaktioner i en instans av Database Engine.
Denna tabell beskriver SQLServer:Transactions-räknarna .
| SQL Server Transaktionsräknare | Description |
|---|---|
| Ledigt utrymme i tempdb (KB) | Mängden utrymme (i kilobyte) tillgängligt i tempdb. Det måste finnas tillräckligt med ledigt utrymme för att lagra både snapshot isolation level version store och alla nya temporära objekt som skapats i denna instans av Database Engine. |
| Längsta transaktionskörningstid | Den tid (i sekunder) sedan transaktionens början har varit aktiv längre än någon annan aktuell transaktion. Denna räknare visar endast aktivitet när databasen är under read committed snapshot isolation-nivå. Den loggar ingen aktivitet om databasen befinner sig på någon annan isoleringsnivå. |
| Icke-Snapshot versionstransaktioner | Antalet för närvarande aktiva transaktioner som inte använder snapshot isolation level och har gjort dataändringar som genererat radversioner i versionslagret tempdb . |
| Ögonblickskopiska transaktioner | Antalet för närvarande aktiva transaktioner med hjälp av snapshot-isoleringsnivån. Observera: Objekträknaren Snapshot Transactions svarar när den första dataåtkomsten sker, inte när uttalandet BEGIN TRANSACTION utfärdas. |
| Transactions | Antalet för närvarande aktiva transaktioner av alla slag. |
| Uppdateringskonfliktkvot | Andelen av dessa transaktioner som använder snapshot-isoleringsnivån och som har stött på uppdateringskonflikter inom sista sekunden. En uppdateringskonflikt uppstår när en snapshot-isolationsnivåtransaktion försöker ändra en rad som senast ändrats av en annan transaktion som inte genomfördes när snapshot-isolationsnivåtransaktionen startade. |
| Uppdatera konfliktkvotbasen | Endast för internt bruk. |
| Uppdateringsögonblickstransaktioner | Antalet för närvarande aktiva transaktioner använder snapshot-isoleringsnivån och har ändrad data. |
| Versionsrensningshastighet (KB/s) | Den hastighet (i kilobyte per sekund) med vilken radversioner tas bort från snapshot-isoleringsversionen lagras i tempdb. |
| Versionsgenereringshastighet (KB/s) | Hastigheten (i kilobyte per sekund) med vilken nya radversioner läggs till i snapshot-isoleringsversionen lagras i tempdb. |
| Versionsbutiksstorlek (KB) | Mängden utrymme (i kilobyte) tempdb som används för att lagra radversioner på snapshot-isoleringsnivå. |
| Version Antal enheter Lagra | Antalet aktiva allokeringsenheter i snapshot-isoleringsversionen lagras i tempdb. |
| Versionsbutiksskapande | Antalet allokeringsenheter som har skapats i snapshot isolation-lagret sedan instansen av Database Engine startades. |
| Versionsförkortning av enhetsenheter | Antalet allokeringsenheter som har tagits bort från snapshot-isoleringslagringen sedan instansen av Database Engine startades. |
Example
Du börjar utforska frågeprestandaräknare i det här objektet med hjälp av den här T-SQL-frågan i sys.dm_os_performance_counters dynamisk hanteringsvy:
SELECT * FROM sys.dm_os_performance_counters
WHERE object_name LIKE '%Transactions%';