Open SQLPS console and fail over to target Availability Replica that will make this replica to the new primary of availability group. In questa attività viene utilizzato il parametro AllowDataLoss
Target | Microsoft.SQLServer.2012.AlwaysOn.AvailabilityReplica |
Application | sqlps.exe |
WorkingDirectory | |
isRequireOutput | False |
Accessibility | Internal |
Enabled | True |
<ConsoleTask ID="Microsoft.SQLServer.2012.AlwaysOn.ForcedFailoverForAvailabilityReplica" Accessibility="Internal" Target="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.AvailabilityReplica" RequireOutput="false" Category="MonitoringObject">
<Application>sqlps.exe</Application>
<Parameters>
<Parameter>-NoExit</Parameter>
<Parameter>"&{ New-Variable -Name replicaName -Value ([regex]::Replace('$Target/Property[Type="System!System.Entity"]/DisplayName$', '\\', '%5C')); function p{ param($v) if ($v -ilike '*\*') { return $v } else { return '{0}\DEFAULT' -f $v } }; New-Variable -Name rp -Value ('{0}' -f (p(\"$Target/Property[Type="System!System.Entity"]/DisplayName$\"))); New-Variable -Name ag -Value (\"$Target/Property[Type="AlwaysOnDisc!Microsoft.SQLServer.2012.AlwaysOn.AvailabilityReplica"]/AvailabilityGroupName$\"); cd SQL\$rp\AvailabilityGroups\$ag\AvailabilityReplicas\$replicaName\; New-Variable -Name avg -Value (Get-Item ..\..\..\$ag); try{ Switch-SqlAvailabilityGroup -InputObject $avg -AllowDataLoss -Confirm; } catch { Write-Host -ForegroundColor Red $_.Exception.Message; } Write-Host "Press any key to exit..."; $key=[Console]::ReadKey($true); Exit }"</Parameter>
</Parameters>
<WorkingDirectory/>
</ConsoleTask>