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
Returnerar statusrader för en övervakad databas från statustabellen där databasspegelövervakningshistoriken lagras, och låter dig välja om proceduren får den senaste statusen i förväg.
Transact-SQL syntaxkonventioner
Syntax
sys.sp_dbmmonitorresults
[ @database_name = ] N'database_name'
[ , [ @mode = ] mode ]
[ , [ @update_table = ] update_table ]
[ ; ]
Arguments
[ @database_name = ] N'database_name'
Specificerar databasen för vilken spegelstatusen ska returneras. @database_name är sysname, utan standard.
[ @mode = ] läge
Specificerar antalet rader som returneras. @mode är int, och kan vara ett av dessa värden.
| Value | Beskrivning |
|---|---|
0 |
Sista raden |
1 |
Raderna varar i två timmar |
2 |
Rodd varar i fyra timmar |
3 |
Raderna varar i åtta timmar |
4 |
Rows sista dagen |
5 |
Gräl varar i två dagar |
6 |
Sista 100 varven |
7 |
Sista 500 varven |
8 |
Sista 1 000 raderna |
9 |
Sista 1 000 000 raderna |
[ @update_table = ] update_table
Specificerar att innan man returnerar resultatet av proceduren.
@update_table är int, med standardvärdet .0
0= Uppdaterar inte statusen för databasen. Resultaten beräknas med endast de två sista raderna, vars ålder beror på när statustabellen uppdaterades.1= Uppdaterar statusen för databasen genom att anropasp_dbmmonitorupdateinnan resultaten beräknas. Men om statustabellen uppdaterades inom de föregående 15 sekunderna, eller om användaren inte är medlem i sysadmin-fixserverrollen ,sp_dbmmonitorresultskörs den utan att statusen uppdateras.
Returnera kodvärden
None.
Resultatuppsättning
Returnerar det begärda antalet rader med historikstatus för den angivna databasen. Varje rad innehåller följande information:
| Kolumnnamn | Datatyp | Description |
|---|---|---|
database_name |
sysname | Namnet på en speglad databas. |
role |
int | Nuvarande speglingsroll för serverinstansen:1 = Rektor2 = Spegel |
mirroring_state |
int | Databasens status:0 = Pausad1 = Frånkopplad2 = Synkronisering3 = Väntande failover4 = Synkroniserad |
witness_status |
int | Vittnets anslutningsstatus i databasens speglingssession kan vara:0 = Okänt1 = Ansluten2 = Frånkopplad |
log_generation_rate |
int | Mängden logg som genererats sedan föregående uppdatering av spegelstatusen för denna databas i kilobyte/sekund. |
unsent_log |
int | Storleken på den ej skickade loggen i sändningskön på principalen i kilobyte. |
send_rate |
int | Skicka logghastigheten från principalen till spegeln i kilobyte/sekund. |
unrestored_log |
int | Storleken på redo-kön på spegeln i kilobyte. |
recovery_rate |
int | Omarbetningshastighet på spegeln i kilobyte/sekund. |
transaction_delay |
int | Total fördröjning för alla transaktioner inom millisekunder. |
transactions_per_sec |
int | Antal transaktioner som sker per sekund på huvudserverinstansen. |
average_delay |
int | Genomsnittlig fördröjning på huvudserverinstansen för varje transaktion på grund av databasspegling. I högpresterande läge (det vill säga när egenskapen SAFETY sätts till OFF), är detta värde generellt .0 |
time_recorded |
datetime | Tidpunkt då databasens speglingsmonitor registrerade raden. Detta värde är systemets klocktid för huvudpersonen. |
time_behind |
datetime | Ungefärlig systemklocktid för det princip som spegeldatabasen för närvarande är ikapp. Detta värde är meningsfullt endast på huvudserverinstansen. |
local_time |
datetime | Systemklocktid på den lokala serverinstansen när denna rad uppdaterades. |
Remarks
sp_dbmmonitorresults kan endast köras i databasens msdb kontext.
Permissions
Kräver medlemskap i sysadmin-rollen som fast server eller i den dbm_monitor fasta databasrollen i databasen msdb .
Den dbm_monitor rollen gör det möjligt för medlemmarna att se databasspeglingsstatus, men inte uppdatera den och inte visa eller konfigurera databasspeglingshändelser.
Note
Första gången det sp_dbmmonitorupdate körs skapar det den dbm_monitor fasta databasrollen i databasen msdb . Medlemmar i sysadmin-fasta serverrollen kan lägga till vilken användare som helst till dbm_monitor fasta databasrollen.
Examples
Följande exempel returnerar raderna som registrerats under de föregående två timmarna utan att uppdatera databasens status.
USE msdb;
EXECUTE sp_dbmmonitorresults AdventureWorks2022, 2, 0;