Author | Shawn Melton (@wsmelton), wsmelton.github.io |
Availability | Windows, Linux, macOS |
Want to see the source code for this command? Check out Disable-DbaAgHadr on GitHub.
Want to see the Bill Of Health for this command? Check out Disable-DbaAgHadr.
Disables High Availability Disaster Recovery (HADR) capability on SQL Server instances.
Disables the HADR service setting at the SQL Server instance level, effectively removing the instance's ability to participate in Availability Groups. This is commonly needed when decommissioning servers from AGs, troubleshooting AG setup issues, or converting instances back to standalone operation after removing them from Availability Groups.
The function modifies the HADR setting through WMI but requires a SQL Server service restart to take effect. Use the -Force parameter to automatically restart both SQL Server and SQL Agent services immediately, or manually restart later to apply the change.
Disable-DbaAgHadr
[-SqlInstance] <DbaInstanceParameter[]>
[[-Credential] <PSCredential>]
[-Force]
[-EnableException]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
PS C:\> Disable-DbaAgHadr -SqlInstance sql2016
Sets Hadr service to disabled for the instance sql2016 but changes will not be applied until the next time the server restarts.
PS C:\> Disable-DbaAgHadr -SqlInstance sql2016 -Force
Sets Hadr service to disabled for the instance sql2016, and restart the service to apply the change.
PS C:\> Disable-DbaAgHadr -SqlInstance sql2012\dev1 -Force
Sets Hadr service to disabled for the instance dev1 on sq2012, and restart the service to apply the change.
The target SQL Server instance or instances.
Alias | |
Required | True |
Pipeline | true (ByValue) |
Default Value |
Credential object used to connect to the Windows server as a different user
Alias | |
Required | False |
Pipeline | false |
Default Value |
Automatically restarts both SQL Server and SQL Server Agent services to immediately apply the HADR setting change. Without this switch, the HADR disable setting is changed but requires manual service
restart to take effect.
Alias | |
Required | False |
Pipeline | false |
Default Value | False |
By default, when something goes wrong we try to catch it, interpret it and give you a friendly warning message.
This avoids overwhelming you with "sea of red" exceptions, but is inconvenient because it basically disables advanced scripting.
Using this switch turns this "nice by default" feature off and enables you to catch exceptions with your own try/catch.
Alias | |
Required | False |
Pipeline | false |
Default Value | False |
Shows what would happen if the command were to run. No actions are actually performed.
Alias | wi |
Required | False |
Pipeline | false |
Default Value |
Prompts you for confirmation before executing any changing operations within the command.
Alias | cf |
Required | False |
Pipeline | false |
Default Value |