sp_dbmmonitorresults (Transact-SQL)

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.

Ícone de vínculo de tópicoConvenções de sintaxe 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 o status para o banco de dados chamando sp_dbmmonitorupdate antes de computar os resultados. Porém, se a tabela de status foi atualizada dentro dos 15 segundos anteriores ou o usuário não é um membro da função de servidor fixa sysadmin, sp_dbmmonitorresults é executado sem atualizar o status.

Valores de 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 espelhado.

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 quilobytes/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 função de banco de dados fixa dbm_monitor no banco de dados msdb. A função de dbm_monitor permite que seus membros visualizem o status de espelhamento de banco de dados, mas não atualizem ou configurem eventos de espelhamento de banco de dados.

ObservaçãoObservação

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

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 AdventureWorks, 2, 0;