Monday 15 December 2014

How to apply service packs or hotfixes on an Active/Passive SQL Server cluster?


As per Microsoft, you need to apply the latest service pack or hotfixes to resolve a bug that was discovered by a SQL Server Agent job failure or stumbled on by your development team. How can you prepare and how should you apply service packs or hotfixes on the Active/Passive SQL Server cluster?
Preparation steps for the production server after you had already tested the service pack or hotfixes on a development server:
  1. Request a scheduled maintenance window of 1 hour or more. Usually in the late evenings or weekends, depending on your business.
  2. Once approved, notify the users or required teams of the scheduled maintenance window.
  3. Download the service pack or hotfixes to a shared drive or to a local drive.
  4. Backup all databases.
  5. Script out all SQL Server Agent jobs.
  6. Script out all the logins and permissions for the logins.
If your System Administration team has third party software to take snapshot of the servers, ask them nicely to do so.
Applying the service pack or hotfixes on the Active/Passive SQL Server cluster:
  1. On the passive node (Node2), apply the service pack or hotfixes.
  2. Reboot the passive node (Node2).
  3. On the active node (Node1), failover the SQL resource. The passive node (Node2) that you had already patched will become the active node.
  4. On the passive node (Node1), apply the service pack or hotfixes.
  5. Reboot the passive node (Node1).
You can verify the current service pack and version build number by running the following query:
1-- Querying the SQL Server Instance level info
2SELECT 
3    SERVERPROPERTY('ServerName'AS [SQLServer]
4    ,SERVERPROPERTY('ProductVersion'AS [VersionBuild]
5    ,SERVERPROPERTY ('Edition'AS [Edition]
6    ,SERVERPROPERTY('ProductLevel'AS [ProductLevel]
7    ,SERVERPROPERTY('IsIntegratedSecurityOnly'AS[IsWindowsAuthOnly]
8    ,SERVERPROPERTY('IsClustered'AS [IsClustered]
9    ,SERVERPROPERTY('Collation'AS [Collation]
10    ,SERVERPROPERTY('ComputerNamePhysicalNetBIOS'AS[CurrentNodeName]

No comments:

Post a Comment