none
Alerta para Database Mirroring RRS feed

  • Pergunta

  • Bom dia Galera, queria receber um alerta caso meu mirroring pare de sicronizar.

     

    Valeu!

    Felipe Holanda

    MSP - DBA

     

    quinta-feira, 13 de outubro de 2011 11:48

Respostas

Todas as Respostas

  • Bom Dia,

    Uma das formas possíveis de fazer isso é via Event Notification ou via Powershell. De qualquer forma, segue um link com várias referências de como gerar alertas

    Alerting on Database Mirroring Events
    http://technet.microsoft.com/en-us/library/cc966392.aspx

    [ ]s,

    Gustavo Maia Aguiar
    Blog: http://gustavomaiaaguiar.wordpress.com
    Vídeos: http://www.youtube.com/user/gmasql


    Classifique as respostas. O seu feedback é imprescindível
    quinta-feira, 13 de outubro de 2011 13:17
  • Felipe, bom dia!

     

    No SQL Server é disponibilizado 3 opções de mirroring

     

    Alta Performance = Nesse modo é utilizado um servidor Principal e o Mirror, não é necessário que tenha um witness ou seja, se você tiver algum problema de notificação você não será notificado  ou seja essa opção não possui failover além da sincronização entre as bases serem assíncrona.

     

    Alta Segurança = Esse modo é síncrono porém não possuo failover automático.

     

    Em seu caso você necessita utilizar a opção que possibilita a maior segurança e disponibilidade da base que é

     

    Alta Disponibilidade = Ou seja  as transações entre as bases são síncronas ou seja a transação tem que ser commitadas nas das bases e a mesma possui failover automático, caso sua base principal tiver erro e por algum caso ficar indisponível a terceira máquina ou seja a Witness fará com que a sua base Mirror vire principal. Assim você terá automaticamente a troca entre as bases tendo sempre alta disponibilidade.

     

    E não esqueça de ver qual é o modo melhor para seu ambiente

     

    Segue algumas informações adicionais...

     

    http://technet.microsoft.com/en-us/library/cc917680.aspx

    http://technet.microsoft.com/en-us/library/cc917681.aspx

     

    http://luanmorenodba.wordpress.com/2011/03/24/finalmente-mirror-banco-de-dados/

     


    Luan.Moreno [SQL Soul]|| Especialista SQL Server || MCTS SQL Server Admin e Dev @luansql
    quinta-feira, 13 de outubro de 2011 13:22
  • Luan mais que queria receber um email me notificando quando isso acontecer, tipo quando meu mirroring não estiver funcionando por algum motivo, eu vi que posso criar um alerta wmi, mais não estou conseguindo configurar tem como você me ajudar cara valeu!
    quinta-feira, 13 de outubro de 2011 14:29
  • Felipe,


    Você deu uma olhada no link que o Gustavo Maia citou - Alerting on Database Mirroring Events

    http://technet.microsoft.com/en-us/library/cc966392.aspx  eu dei uma olhada aqui é ele parece ser muito bom



    Luan.Moreno [SQL Soul]|| Especialista SQL Server || MCTS SQL Server Admin e Dev @luansql
    quinta-feira, 13 de outubro de 2011 14:48
  • quando crio o alerta ele da erro de namespace tem, a configuração é essa mesmo? tem que ser root?

    \\.\root\Microsoft\SqlServer\ServerEvents\<instance_name>

    quinta-feira, 13 de outubro de 2011 15:44
  • Felipe,

    Você poderia exibir a mensagem de erro?


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    quinta-feira, 13 de outubro de 2011 22:32
    Moderador
  • O nome do banco é Haudit, estou escrevendo essa query, quando rodo ela no banco diz que o objeto  DATABASE_MIRRORING_STATE_CHANGE não existe.
    SELECT * FROM DATABASE_MIRRORING_STATE_CHANGE
    WHERE State = 6 AND Database = 'haudit'
    ==================================================================================
    QUANDO TENTO CRIAR O ALERTA APRESENTA ESSE ERRO.
    ADDITIONAL INFORMATION:
    Create failed for Alert 'ALERTA'.  (Microsoft.SqlServer.Smo)
    exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)
     
    SQLServerAgent Error: WMI error: 0x80041002.
    The @wmi_query could not be executed in the @wmi_namespace provided. Verify that an event class selected in the query exists in the namespace and that the query has the correct syntax. (Microsoft SQL Server, Error: 22022)
     
    sexta-feira, 14 de outubro de 2011 12:51
  • Felipe,

    Você esta executando esta query no banco de dados que esta sendo espelhado ou no banco Master?


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    sábado, 15 de outubro de 2011 21:47
    Moderador