sp_dbmmonitorchangealert (Transact-SQL)
Aplica-se: SQL Server
Adiciona ou altera limites de aviso para uma métrica especificada de desempenho de espelhamento.
Convenções de sintaxe de Transact-SQL
sp_dbmmonitorchangealert
[ @database_name = ] N'database_name'
, [ @alert_id = ] alert_id
, [ @threshold = ] threshold
[ , [ @enabled = ] enabled ]
[ ; ]
Argumentos
@database_name [ = ] N'database_name'
Especifica o banco de dados ao qual adicionar ou no qual alterar o limite de advertência especificado. @database_name é sysname, sem padrão.
@alert_id [ = ] alert_id
Um valor inteiro que identifica o aviso a ser adicionado ou alterado. @alert_id é int e deve ser um dos seguintes valores:
Valor | Métrica de desempenho | Limite de aviso |
---|---|---|
1 |
Transação não enviada mais antiga | Especifica o número de minutos de transações que podem ser acumuladas na fila de envio, antes da geração de um aviso na instância do servidor principal. Esse aviso ajuda a medir o potencial de perda de dados em termos de tempo e pode ser relevante para o modo de alto desempenho. No entanto, o aviso também é relevante para o modo de segurança alta, quando o espelhamento é pausado ou suspenso devido à desconexão dos parceiros. |
2 |
Log não enviado | Especifica quantos quilobytes (KB) de log não enviado geram um aviso na instância do servidor principal. Esse aviso ajuda a medir o potencial de perda de dados em termos de KB e pode ser relevante para o modo de alto desempenho. No entanto, o aviso também é relevante para o modo de segurança alta, quando o espelhamento é pausado ou suspenso devido à desconexão dos parceiros. |
3 |
Log não restaurado | Especifica quantos KB de log não restaurado geram um aviso na instância do servidor espelho. Esse aviso ajuda a medir o tempo de failover. O tempo de failover consiste principalmente no tempo que o antigo servidor espelho requer para efetuar roll forward de qualquer log restante em sua fila de restauração, além de um curto tempo extra. |
4 |
Sobrecarga espelhada confirmada | Especifica o número de milissegundos de atraso médio por transação tolerado, antes que um aviso seja gerado no servidor principal. Esse atraso consiste na quantidade de sobrecarga incidente enquanto a instância do servidor principal aguarda que a instância do servidor espelho grave o registro do log da transação na fila de restauração. Esse valor é relevante somente no modo de alta segurança. |
5 |
Período de retenção | Metadados que controlam quanto tempo as linhas na tabela de status de espelhamento de banco de dados são preservadas. |
Para obter informações sobre as IDs de evento correspondentes aos avisos, consulte Usar limites de aviso e alertas sobre métricas de desempenho de espelhamento (SQL Server).
@threshold [ = ] limiar
O valor do limite para o aviso. @threshold é int, sem padrão. Se um valor acima desse limite for retornado quando o status de espelhamento for atualizado, uma entrada será inserida no log de eventos do Windows. Esse valor representa KB, minutos ou milissegundos, dependendo da métrica de desempenho.
Observação
Para exibir os valores atuais, execute o procedimento armazenado sp_dbmmonitorresults .
@enabled [ = ] habilitado
Especifica se o aviso está habilitado. @enabled é bit, com um padrão de 1
. O período de retenção está sempre habilitado.
0
= O aviso está desativado.1
= O aviso está ativado.
Valores do código de retorno
Nenhum.
Conjunto de resultados
Nenhum.
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 define limites para todas as métricas de desempenho e para o período de retenção do banco de dados AdventureWorks2022
. A tabela a seguir exibe os valores usados no exemplo:
alert_id | Métrica de desempenho | Limite de aviso | Aviso ativado? |
---|---|---|---|
1 |
Transação não enviada mais antiga | 30 minutos | Sim |
2 |
Log não enviado | 10.000 KB | Sim |
3 |
Log não restaurado | 10.000 KB | Sim |
4 |
Sobrecarga espelhada confirmada | 1.000 milissegundos | Não |
5 |
Período de retenção | Oito horas | Sim |
EXEC sp_dbmmonitorchangealert AdventureWorks2022, 1, 30, 1;
EXEC sp_dbmmonitorchangealert AdventureWorks2022, 2, 10000, 1;
EXEC sp_dbmmonitorchangealert AdventureWorks2022, 3, 10000, 1;
EXEC sp_dbmmonitorchangealert AdventureWorks2022, 4, 1000, 0;
EXEC sp_dbmmonitorchangealert AdventureWorks2022, 5, 8, 1;