Partilhar via


sp_dbmmonitorupdate (Transact-SQL)

Aplica-se: SQL Server

Atualiza a tabela de status do monitor de espelhamento de banco de dados ao inserir uma nova linha na tabela para cada banco de dados espelho, e trunca linhas anteriores ao período de retenção atual. O período de retenção padrão é de sete dias (168 horas). Quando sp_dbmmonitorupdate atualiza a tabela, ela avalia as métricas de desempenho.

Observação

Na primeira vez sp_dbmmonitorupdate que é executado, ele cria a tabela de status de espelhamento de banco de dados e a função de banco de dados fixa dbm_monitor no msdb banco de dados.

Convenções de sintaxe de Transact-SQL

Sintaxe

sp_dbmmonitorupdate [ [ @database_name = ] N'database_name' ]
[ ; ]

Argumentos

@database_name [ = ] N'database_name'

O nome do banco de dados para o qual atualizar o status de espelhamento. @database_name é sysname, com um padrão de NULL. Se database_name não for especificado, o procedimento atualizará a tabela de status para cada banco de dados espelhado na instância do servidor.

Valores do código de retorno

Nenhum.

Conjunto de resultados

Nenhum.

Comentários

sp_dbmmonitorupdate pode ser executado apenas no contexto do msdb banco de dados.

Se uma coluna da tabela de status não se aplicar à função de um parceiro, o valor estará NULL nesse parceiro. Uma coluna também teria um NULL valor se as informações relevantes não estivessem disponíveis, como durante um failover ou reinicialização do servidor.

Depois sp_dbmmonitorupdate de criar a função de banco de dados fixa dbm_monitor no banco de dados, os msdb membros da função de servidor fixa sysadmin podem adicionar qualquer usuário à função de banco de dados fixa dbm_monitor . 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.

Quando sp_dbmmonitorupdate atualiza o status de espelhamento de um banco de dados, ele inspeciona o valor mais recente de qualquer métrica de desempenho de espelhamento para a qual um limite de aviso é especificado. Se o valor exceder o limiar, o procedimento adicionará um evento de informação ao log de evento. Todas as taxas são médias desde a última atualização. Para obter mais informações, veja Usar os limites de aviso e alertas em métricas de desempenho de espelhamento (SQL Server).

Permissões

Requer associação na função de servidor fixa sysadmin ou permissão de execução diretamente nesse procedimento armazenado.

Exemplos

O exemplo a seguir atualiza o status de espelhamento apenas para o banco de dados AdventureWorks2022.

USE msdb;
EXEC sp_dbmmonitorupdate AdventureWorks2022;