sp_dbmmonitorresults (Transact-SQL)

Aplica-se a:SQL Server

Retorna as linhas de status de um banco de dados monitorado a partir da tabela de status na qual o monitoramento de espelhamento de banco de dados é armazenado e permite selecionar se o procedimento obtém o último status antes.

Convenções de sintaxe de Transact-SQL

Sintaxe

  
sp_dbmmonitorresults database_name   
   , rows_to_return  
    , update_status   

Argumentos

database_name
Especifica qual banco de dados deve retornar o status de espelhamento.

rows_to_return
Especifica a quantidade de linhas retornadas:

0= Última linha

1 = Linhas das últimas duas horas

2 = Linhas das últimas quatro horas

3 = Linhas das últimas oito horas

4 = Linhas do último dia

5 = Linhas dos últimos dois dias

6 = Últimas 100 linhas

7 = Últimas 500 linhas

8 = Últimas 1.000 linhas

9 = Últimas 1.000.000 linhas

update_status
Especifica que antes de retornar resultados, o procedimento:

0 = Não atualiza o status do banco de dados. Os resultados são computados utilizando somente as últimas duas linhas, a idade depende de quando a tabela de status foi atualizada.

1 = Atualizações o status do banco de dados chamando sp_dbmmonitorupdate antes de calcular os resultados. No entanto, se a tabela de status tiver sido atualizada nos últimos 15 segundos ou se o usuário não for membro da função de servidor fixa sysadmin , sp_dbmmonitorresults será executado sem atualizar o status.

Valores do código de retorno

Nenhum

Conjuntos de resultados

Retorna o número solicitado de linhas de status de histórico do banco de dados especificado. Cada linha contém as seguintes informações:

Nome da coluna Tipo de dados Descrição
database_name sysname Nome de um banco de dados espelho.
role int Função de espelhamento atual da instância do servidor:

1 = Principal

2 = Espelhamento
mirroring_state int Estado do banco de dados:

0 = Suspenso

1 = Desconectado

2 = Sincronização

3 = Failover pendente

4 = Sincronizado
witness_status int O status da conexão da testemunha na sessão de espelhamento de banco de dados pode ser:

0 = Desconhecido

1 = Conectado

2 = Desconectado
log_generation_rate int Quantidade de log gerado desde a atualização anterior do status de espelhamento deste banco de dados em kilobytes/segundo.
unsent_log int Tamanho de log não enviado na fila de envio do principal em kilobytes.
send_rate int Taxa de envio de logs do principal para o espelhamento em kilobytes/segundo.
unrestored_log int Tamanho da fila de restauração do espelhamento em kilobytes.
recovery_rate int Taxa de restauração do espelhamento em kilobytes/segundo.
transaction_delay int Atraso total de todas as transações em milissegundos.
transactions_per_sec int Número de transações que estão ocorrendo por segundo na instância do servidor principal.
average_delay int Espera média na instância de servidor principal para cada transação devido ao espelhamento de banco de dados. Em modo de alto desempenho (isto é, quando a propriedade SAFETY é definida em OFF), este valor geralmente é 0.
time_recorded datetime Hora em que a linha foi registrada pelo monitor de espelhamento de banco de dados. Essa é a hora do relógio do sistema do principal.
time_behind datetime Hora de relógio do sistema aproximada do principal para o qual o banco de dados espelho é atualmente atualizado. Este valor é significante somente na instância de servidor principal.
Local_time datetime Hora de relógio de sistema na instância de servidor local quando esta linha foi atualizada.

Comentários

sp_dbmmonitorresults pode ser executado somente no contexto do banco de dados msdb .

Permissões

Requer associação na função de servidor fixa sysadmin ou na dbm_monitor função de banco de dados fixa no banco de dados msdb . A função dbm_monitor permite que seus membros exibam o status de espelhamento de banco de dados, mas não o atualizem, mas não exibam ou configurem eventos de espelhamento de banco de dados.

Observação

Na primeira vez que sp_dbmmonitorupdate é executado, ele cria a dbm_monitor função de banco de dados fixa no banco de dados msdb . Os membros da função de servidor fixa sysadmin podem adicionar qualquer usuário à dbm_monitor função de banco de dados fixa.

Exemplos

O exemplo seguinte retorna as linhas registradas durante as duas horas anteriores sem atualizar o status do banco de dados.

USE msdb;  
EXEC sp_dbmmonitorresults AdventureWorks2022, 2, 0;  

Consulte Também

Monitorando o espelhamento de banco de dados (SQL Server)
sp_dbmmonitorchangemonitoring (Transact-SQL)
sp_dbmmonitoraddmonitoring (Transact-SQL)
sp_dbmmonitordropmonitoring (Transact-SQL)
sp_dbmmonitorhelpmonitoring (Transact-SQL)
sp_dbmmonitorupdate (Transact-SQL)