sp_dbmmonitorresults (Transact-SQL)
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.
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.
Se il valore è 1, aggiorna lo stato del database chiamando sp_dbmmonitorupdate prima di calcolare i risultati. Se tuttavia la tabella di stato è stata aggiornata nei 15 secondi precedenti o se l'utente non è membro del ruolo predefinito del server sysadmin, la stored procedure sp_dbmmonitorresults viene eseguita senza aggiornare lo stato.
Valori restituiti
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. |
role |
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
È possibile eseguire sp_dbmmonitorresults solo nel contesto del database msdb.
Autorizzazioni
È richiesta 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 di mirroring del database, ma non di aggiornarlo, né di visualizzare o configurare gli eventi di mirroring del database.
Nota
Alla prima esecuzione di sp_dbmmonitorupdate, 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 AdventureWorks2008R2, 2, 0;