Bu yazımızda Always On Mimarisinde Read-Scale bir ortamda bulunan Node’ların altında bulundan veri tabanlarının failover yapılması durumunda karşılaşılan hatanın çözümü üzerine konuşacağız.
Daha önce Read-Scale Always On adlı makalemizde kurulumdan bahsetmiştik. Bu yazımızda bahsettiğimiz ortamlar üzerinden konuşarak çözüme ilişkin bilgiler paylaşacağız.
Problem: Data-Loss seçeneği ile bile failover yapılmaması.
Cannot failover availability group ‘Read-Scale_AG’ to this instance of SQL Server.
The local availability replica is already the primary replica of the availability group.
To failover this availability group to another instance of SQL Server, run the failover command on that instance of SQL Server.
If local instance of SQL Server is intended to host the primary replica of the availability group, then no action is required.
1.Ortam ve 2.Ortam’da bulunan Availibility Group ve veri tabanı failover yapabilecek durumda olduğunu aşağıdaki gibi görebilirsiniz. ReadScale_DB isimli veri tabanımız, 1.Ortamımız olan SQLTEST1 ortamında Primary, 2.Ortamımız olan VTTEST2 Ortamında ise Secondary durumunda failover yapmaya hazır durumda bulunmaktadır. Burada oluşturduğumuz Availibility Group iki farklı Cluster içinde herhangi bir Roles olarak eklenmemektedir.
Read-Scale Always On Otomatik failover’a izin vermeyeceği için aşağıdaki gibi “Force Failover Failed” şeklinde hata verecektir.
Çözüm:
Eğer 1.Ortamdan 2.Ortama failover yapmak istersek aşağıdaki komutları kullanarak failover gerçekleştirebiliriz. Bu şekilde failover yaptığınızda veri kaybını göze almış olacaksınız lütfen bu durumu göz önünde bulundurunuz.
Aşağıdaki komutları kullanarak failover işlemini başarılı bir şekilde gerçekleştirebilirsiniz.
ALTER AVAILABILITY GROUP [READ-AG] GRANT CREATE ANY DATABASE; ALTER AVAILABILITY GROUP [READ-AG] FORCE_FAILOVER_ALLOW_DATA_LOSS;
0 Yorum