2

We have 3 replica AG setup:

  • 2 replicas are in sync/automatic failover
  • the other(DR Server, different subnet) in asynchronous/manual mode
  • All these replicas were on SQL Server 2012.

Recently we upgraded the DR server to SQL Server 2014. Since then we've had a problem with the AG databases in the 2014 instance going into ‘Synchronizing/ in recovery’ state.

The SQL Server error log has the message:

The recovery couldn’t start for the database ‘XYZ’

We tried to create a new database and add it to AG, which it works for the other two 2012 replicas, but on 2014 we see the same issue.

Is there any workaround to fix it, or is upgrading other replicas to 2014 the only available solution?

2
  • I don't find any online documentation that mentions that upgrading sql on secondary would mess up AG dbs on that node.. If that was the case, then we would have planned the upgrade on same day for all 3 replicas....Microsoft is being very naughty – deepak Sep 19 '15 at 15:40
  • It is in the documentation. Sorry that you lost track of that detail. AGs require a fair amount of care. – RLF Sep 19 '15 at 16:10
1

The Availability Group prerequisites all indicate that you must be using Enterprise Edition and be using the same version of SQL Server.

See the MSDN link for SQL Server 2012

https://msdn.microsoft.com/en-us/library/ff878487(v=sql.110).aspx

Under the topic: Checklist: Prerequisites (Server Instance) it says:

Each server instance must be running the Enterprise Edition of SQL Server 2012.

Likewise 2014 and 2016 have the same prerequisites for only those versions.

While my response was focused on the requirement in general as noted in MSDN. However, Kin in his comment added details on upgrade path:

"In OP's case, he was upgrading secondary to a higher version which should be fine (once failover is initiated, it will be one way ONLY - no role changes are allowed), and then he might upgrade the primary to 2014. This is how upgrades should be done."

1
  • 1
    I dont quiet agree with - AG requires all version of sql server to be same. In OP's case, he was upgrading secondary to a higher version which should be fine (once failover is initiated, it will be one way ONLY - no role changes are allowed), and then he might upgrade the primary to 2014. This is how upgrades should be done. Also, in your answer you emphasis on having enterprise edition which is fair, but AlwaysON wont even work on Standard edition (2016 might allow it to probably 2 replicas) – Kin Shah Sep 19 '15 at 17:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.