In this post I will show how you can toggle maintenance mode on or off using PowerShell. The script is intended for OneBox environments. Just paste it into a new ps1 file for future use, or run it through PowerShell ISE.
DISCLAIMER: Don't run this unless you are prepared to take the heat from restarting the entire web application. It stops and starts the web server.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | function ToggleMaintenanceMode() { $parm = @{ ServerInstance = 'localhost' Database = 'AxDB' Query = "UPDATE SQLSYSTEMVARIABLES SET [VALUE] = IIF([VALUE]=1, 0, 1) WHERE PARM = 'CONFIGURATIONMODE'" } Get-Service "W3SVC" | Stop-Service -Force Invoke -Sqlcmd @parm Get-Service "W3SVC" | Start-Service $parm .Query = "SELECT [VALUE] FROM SQLSYSTEMVARIABLES WHERE PARM = 'CONFIGURATIONMODE'" $result = Invoke -Sqlcmd @parm [int] $value = $result .Value Write -Output "Configuration mode $(('disabled','enabled')[$value])" } ToggleMaintenanceMode |
The script shows you how you can easily run SQL commands, and even retrieve values back to your PowerShell script.
Enjoy!
No comments:
Post a Comment