AlwaysOn üzerinde Node’lar arasında Job yönetimi olmadığı için failover durumlarında Job’larla alakalı problemler yaşanmaktadır. Job’ların sadece primary sunucu üzerinde çalışması için step’lerin içine aşağıdaki kod bloğunu ekleyerek, job’ları iki sunucuya da kurun. Failover durumunda job’lar kaldığı yerden çalışmalarına devam edecektir.
- Yöntem – 1
IF (SELECT ars.role FROM sys.dm_hadr_availability_replica_states ars JOIN sys.availability_groups ag ON ars.group_id = ag.group_id WHERE ag.name = 'AGNAME' AND ars.is_local = 1) = 1 BEGIN -- this server is the primary node, do something here END
- Yöntem – 2
IF (SELECT sys.fn_hadr_is_primary_replica('AGNAME')) = 1 BEGIN -- this server is the primary node, do something here END