New-AzSqlDatabaseFailoverGroup
This command creates a new Azure SQL Database Failover Group.
Syntax
Default (Default)
New-AzSqlDatabaseFailoverGroup
[-ServerName] <String>
-FailoverGroupName <String>
[-PartnerSubscriptionId <String>]
[-PartnerResourceGroupName <String>]
-PartnerServerName <String>
[-FailoverPolicy <FailoverPolicy>]
[-GracePeriodWithDataLossHours <Int32>]
[-AllowReadOnlyFailoverToPrimary <AllowReadOnlyFailoverToPrimary>]
[-PartnerServerList <System.Collections.Generic.List`1[System.String]>]
[-ReadOnlyEndpointTargetServer <String>]
[-ResourceGroupName] <String>
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Description
Creates a new Azure SQL Database Failover Group for the specified servers.
Two Azure SQL Database TDS endpoints are created at FailoverGroupName.SqlDatabaseDnsSuffix (for example, FailoverGroupName.database.windows.net) and FailoverGroupName.secondary.SqlDatabaseDnsSuffix. These endpoints may be used to connect to the primary and secondary servers in the Failover Group, respectively. If the primary server is affected by an outage, automatic failover of the endpoints and databases will be triggered as dictated by the Failover Group's failover policy and grace period.
Newly created Failover Groups do not contain any databases. To control the set of databases in a Failover Group, use the 'Add-AzSqlDatabaseToFailoverGroup' and 'Remove-AzSqlDatabaseFromFailoverGroup' cmdlets.
Only values greater than or equal to 1 hour are supported for the '-GracePeriodWithDataLossHours' parameter.
[!NOTE] It's possible to deploy your auto-failover group across subscriptions by using the -PartnerSubscriptionId parameter in Azure Powershell starting with Az.SQL 3.11.0 .
Examples
Example 1
$failoverGroup = New-AzSqlDatabaseFailoverGroup -ResourceGroupName rg -ServerName primaryserver -PartnerServerName secondaryserver -FailoverGroupName fg -FailoverPolicy Automatic -GracePeriodWithDataLossHours 1
This command creates a new Failover Group with failover policy 'Automatic' for two servers in the same resource group.
Example 2
$failoverGroup = New-AzSqlDatabaseFailoverGroup -ResourceGroupName rg1 -ServerName primaryserver -PartnerResourceGroupName rg2 -PartnerServerName secondaryserver1 -FailoverGroupName fg -FailoverPolicy Manual
This command creates a new Failover Group with failover policy 'Manual' for two servers in different resource groups.
Example 3
$sub2 = 'b3c40cd6-024f-428c-921b-cda6c6834c34'
$failoverGroup = New-AzSqlDatabaseFailoverGroup -ServerName primaryserver -FailoverGroupName fg -PartnerSubscriptionId $sub2 -PartnerResourceGroupName rg2 -PartnerServerName secondaryserver1 -FailoverPolicy Manual -ResourceGroupName rg1
FailoverGroupName : fg
Location : East US
ResourceGroupName : rg1
ServerName : primaryserver
PartnerLocation : West US 2
PartnerResourceGroupName : rg2
PartnerServerName : secondaryserver1
ReplicationRole : Primary
ReplicationState : CATCH_UP
ReadWriteFailoverPolicy : Manual
FailoverWithDataLossGracePeriodHours :
DatabaseNames : {}
This command creates a new Failover Group with failover policy 'Manual' for two servers in different subscriptions.
Parameters
-AllowReadOnlyFailoverToPrimary
Whether an outage on the secondary server should trigger automatic failover of the read-only endpoint.
Parameter properties
Parameter sets
(All)
Position: Named
Mandatory: False
Value from pipeline: False
Value from pipeline by property name: False
Value from remaining arguments: False
-DefaultProfile
The credentials, account, tenant, and subscription used for communication with azure
Parameter properties
Type: IAzureContextContainer
Default value: None
Supports wildcards: False
DontShow: False
Aliases: AzContext, AzureRmContext, AzureCredential
Parameter sets
(All)
Position: Named
Mandatory: False
Value from pipeline: False
Value from pipeline by property name: False
Value from remaining arguments: False
-FailoverGroupName
The name of the Azure SQL Database Failover Group to create.
Parameter properties
Type: String
Default value: None
Supports wildcards: False
DontShow: False
Parameter sets
(All)
Position: Named
Mandatory: True
Value from pipeline: False
Value from pipeline by property name: False
Value from remaining arguments: False
-FailoverPolicy
The failover policy of the Azure SQL Database Failover Group.
Parameter properties
Type: FailoverPolicy
Default value: Manual
Accepted values: Automatic, Manual
Supports wildcards: False
DontShow: False
Parameter sets
(All)
Position: Named
Mandatory: False
Value from pipeline: False
Value from pipeline by property name: False
Value from remaining arguments: False
-GracePeriodWithDataLossHours
Interval before automatic failover is initiated if an outage occurs on the primary server and failover cannot be completed without data loss.
Parameter properties
Type: Int32
Default value: 1
Supports wildcards: False
DontShow: False
Parameter sets
(All)
Position: Named
Mandatory: False
Value from pipeline: False
Value from pipeline by property name: False
Value from remaining arguments: False
-PartnerResourceGroupName
The name of the secondary resource group of the Azure SQL Database Failover Group.
Parameter properties
Type: String
Default value: None
Supports wildcards: False
DontShow: False
Parameter sets
(All)
Position: Named
Mandatory: False
Value from pipeline: False
Value from pipeline by property name: False
Value from remaining arguments: False
-PartnerServerList
The list of partner servers in the failover group (empty list for 0 servers).
Parameter properties
Type: List<T> [ String ]
Default value: None
Supports wildcards: False
DontShow: False
Parameter sets
(All)
Position: Named
Mandatory: False
Value from pipeline: False
Value from pipeline by property name: False
Value from remaining arguments: False
-PartnerServerName
The name of the secondary server of the Azure SQL Database Failover Group.
Parameter properties
Type: String
Default value: None
Supports wildcards: False
DontShow: False
Parameter sets
(All)
Position: Named
Mandatory: True
Value from pipeline: False
Value from pipeline by property name: False
Value from remaining arguments: False
-PartnerSubscriptionId
The name of the secondary subscription id of the Azure SQL Database Failover Group.
Parameter properties
Type: String
Default value: None
Supports wildcards: False
DontShow: False
Parameter sets
(All)
Position: Named
Mandatory: False
Value from pipeline: False
Value from pipeline by property name: False
Value from remaining arguments: False
-ReadOnlyEndpointTargetServer
The name of the target server for the read only endpoint. If empty, defaults to value of PartnerServerName.
Parameter properties
Type: String
Default value: None
Supports wildcards: False
DontShow: False
Parameter sets
(All)
Position: Named
Mandatory: False
Value from pipeline: False
Value from pipeline by property name: False
Value from remaining arguments: False
-ResourceGroupName
The name of the resource group.
Parameter properties
Type: String
Default value: None
Supports wildcards: False
DontShow: False
Parameter sets
(All)
Position: 0
Mandatory: True
Value from pipeline: False
Value from pipeline by property name: True
Value from remaining arguments: False
-ServerName
The name of the primary Azure SQL Database Server of the Failover Group.
Parameter properties
Type: String
Default value: None
Supports wildcards: False
DontShow: False
Parameter sets
(All)
Position: 1
Mandatory: True
Value from pipeline: False
Value from pipeline by property name: True
Value from remaining arguments: False
CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable,
-InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable,
-ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see
about_CommonParameters .
Outputs