sp_dbmmonitorresults (Transact-SQL)

Si applica a:SQL Server

Restituisce le righe di stato per un database monitorato dalla tabella di stato in cui è archiviata la cronologia di Monitoraggio mirroring del database e consente di scegliere in anticipo se lo stato della procedura verrà aggiornato.

Convenzioni di sintassi Transact-SQL

Sintassi

  
sp_dbmmonitorresults database_name   
   , rows_to_return  
    , update_status   

Argomenti

database_name
Specifica il database per cui restituire lo stato di mirroring.

rows_to_return
Specifica la quantità di righe restituite:

0 = Ultima riga

1 = Righe relative alle ultime due ore

2 = Righe relative alle ultime quattro ore

3 = Righe relative alle ultime otto ore

4 = Righe relative all'ultimo giorno

5 = Righe relative agli ultimi due giorni

6 = Ultime 100 righe

7 = Ultime 500 righe

8 = Ultime 1.000 righe

9 = Ultimo milione di righe

update_status
Specifica che prima di restituire i risultati, la procedura esegue le operazioni seguenti:

Se il valore è 0, non aggiorna lo stato del database. I risultati vengono calcolati utilizzando solo le ultime due righe, la cui data dipende dal momento in cui è stato eseguito l'aggiornamento della tabella di stato.

1 = Aggiorna lo stato del database chiamando sp_dbmmonitorupdate prima di calcolare i risultati. Tuttavia, se la tabella di stato è stata aggiornata entro i 15 secondi precedenti o l'utente non è membro del ruolo predefinito del server sysadmin , sp_dbmmonitorresults viene eseguito senza aggiornare lo stato.

Valori del codice restituito

Nessuno

Set di risultati

Restituisce il numero richiesto di righe dello stato della cronologia per il database specificato. Ogni riga contiene le informazioni seguenti:

Nome colonna Tipo di dati Descrizione
database_name sysname Nome di un database con mirroring.
ruolo int Ruolo di mirroring corrente dell'istanza del server:

1 = Database principale

2 = Database mirror
mirroring_state int Stato del database:

0 = Sospeso

1 = Disconnesso

2 = Sincronizzazione in corso

3 = Failover in sospeso

4 = Sincronizzato
witness_status int Stato di connessione del server di controllo del mirroring nella sessione di mirroring del database. I possibili valori sono i seguenti:

0 = Sconosciuto

1 = Connesso

2 = Disconnesso
log_generation_rate int Quantità di log generati a partire dall'ultimo aggiornamento dello stato di mirroring del database, espressa in kilobyte al secondo.
unsent_log int Dimensioni del log non inviato nella coda di invio nel database principale, espressa in kilobyte.
send_rate int Velocità di invio del log dal database principale al database mirror, espressa in kilobyte al secondo.
unrestored_log int Dimensioni della coda di rollforward nel database mirror, espressa in kilobyte.
recovery_rate int Tempo di rollforward nel database mirror, espresso in kilobyte al secondo.
transaction_delay int Ritardo totale per tutte le transazioni, espresso in millisecondi.
transactions_per_sec int Numero di transazioni al secondo nell'istanza del server principale.
average_delay int Ritardo medio nell'istanza del server principale per ogni transazione causato dal mirroring del database. In modalità a prestazioni elevate, ovvero quando la proprietà SAFETY è impostata su OFF, questo valore è in genere 0.
time_recorded datetime Ora in cui la riga è stata registrata da Monitoraggio mirroring del database. Si tratta dell'ora dell'orologio di sistema del database principale.
time_behind datetime Ora approssimativa dell'orologio di sistema del database principale rispetto al quale è aggiornato il database mirror. Questo valore è significativo solo nell'istanza del server principale.
local_time datetime Ora dell'orologio di sistema nell'istanza locale del server al momento dell'aggiornamento della riga.

Osservazioni:

sp_dbmmonitorresults può essere eseguito solo nel contesto del database msdb.

Autorizzazioni

Richiede l'appartenenza al ruolo predefinito del server sysadmin o al ruolo predefinito del database dbm_monitor nel database msdb . Il ruolo dbm_monitor consente ai membri di visualizzare lo stato del mirroring del database, ma non di aggiornarlo ma non di visualizzare o configurare gli eventi di mirroring del database.

Nota

La prima volta che sp_dbmmonitorupdate viene eseguito, viene creato il ruolo predefinito del database dbm_monitor nel database msdb . I membri del ruolo predefinito del server sysadmin possono aggiungere qualsiasi utente al ruolo predefinito del database dbm_monitor .

Esempi

Nell'esempio seguente vengono restituite le righe registrate nelle due ore precedenti senza aggiornare lo stato del database.

USE msdb;  
EXEC sp_dbmmonitorresults AdventureWorks2022, 2, 0;  

Vedi anche

Monitoraggio del mirroring del database (SQL Server)
sp_dbmmonitorchangemonitoring (Transact-SQL)
sp_dbmmonitoraddmonitoring (Transact-SQL)
sp_dbmmonitordropmonitoring (Transact-SQL)
sp_dbmmonitorhelpmonitoring (Transact-SQL)
sp_dbmmonitorupdate (Transact-SQL)