[This topic is in progress.]

Applies to: Exchange Server 2010 SP3, Exchange Server 2010 SP2

Topic Last Modified: 2012-06-01

Use the Set-DatabaseAvailabilityGroup cmdlet to configure some of the properties of a database availability group (DAG). The Set-DatabaseAvailabilityGroup cmdlet enables you to manage DAG properties that can't be managed from the Exchange Management Console, such as enabling and disabling cross-site RPC client access, configuring network discovery, selecting the TCP port used for replication, and enabling datacenter activation coordination (DAC) mode.

DAG property values are stored in both Active Directory and the cluster database. However, some properties are stored in the cluster database. As a result, the underlying cluster for the DAG must be running and have quorum to set the properties for:

Syntax

Set-DatabaseAvailabilityGroup -Identity <DatabaseAvailabilityGroupIdParameter> [-AllowCrossSiteRpcClientAccess <SwitchParameter>] [-AlternateWitnessDirectory <NonRootLocalLongFullPath>] [-AlternateWitnessServer <FileShareWitnessServerName>] [-Confirm [<SwitchParameter>]] [-DatabaseAvailabilityGroupIpAddresses <IPAddress[]>] [-DatacenterActivationMode <Off | DagOnly>] [-DiscoverNetworks <SwitchParameter>] [-DomainController <Fqdn>] [-NetworkCompression <Disabled | Enabled | InterSubnetOnly | SeedOnly>] [-NetworkEncryption <Disabled | Enabled | InterSubnetOnly | SeedOnly>] [-ReplicationPort <UInt16>] [-WhatIf [<SwitchParameter>]] [-WitnessDirectory <NonRootLocalLongFullPath>] [-WitnessServer <FileShareWitnessServerName>]

Detailed Description

You need to be assigned permissions before you can run this cmdlet. Although all parameters for this cmdlet are listed in this topic, you may not have access to some parameters if they're not included in the permissions assigned to you. To see what permissions you need, see the"Database Availability Group Permissions" section in the High Availability Permissions topic.

Parameters

Parameter Required Type Description

Identity

Required

Microsoft.Exchange.Configuration.Tasks.DatabaseAvailabilityGroupIdParameter

The Identity parameter specifies the name of the DAG to be modified.

AllowCrossSiteRpcClientAccess

Optional

System.Management.Automation.SwitchParameter

The AllowCrossSiteRpcClientAccess parameter specifies the client access endpoint used by Outlook clients after a cross-site database *over event. The default value is False, which disables cross-site RPC client access. Thus, when a cross-site database *over event occurs, the affected user’s Outlook profile will be updated to use the RPC Client Access Server array in the Active Directory site containing the mounted database. If configured with a value of True, the affected user’s Outlook profile will not be updated, and the user will continue to connect to the same RPC Client Access Server array. In order to use this parameter, all Mailbox servers in the DAG must be running Exchange Server 2010 Service Pack 2 Rollup Update 3 or later.

AlternateWitnessDirectory

Optional

Microsoft.Exchange.Data.NonRootLocalLongFullPath

The AlternateWitnessDirectory parameter specifies the name of the directory on the alternate witness server that's used to store file share witness data. The specified directory must not be in use by any other DAGs or used for any other purpose. This parameter is used only as part of a datacenter switchover process.

AlternateWitnessServer

Optional

Microsoft.Exchange.Data.FileShareWitnessServerName

The AlternateWitnessServer parameter specifies the name of the server that will be used as the Witness Server after a datacenter switchover. The specified server must not be a member of the DAG that's configured to use it. This parameter is used only as part of a datacenter switchover process.

Confirm

Optional

System.Management.Automation.SwitchParameter

The Confirm switch causes the command to pause processing and requires you to acknowledge what the command will do before processing continues. You don't have to specify a value with the Confirm switch.

DatabaseAvailabilityGroupIpAddresses

Optional

System.Net.IPAddress[]

The DatabaseAvailabilityGroupIpAddresses parameter specifies one or more static IP addresses to the DAG when a Mailbox server is added to a DAG. If you omit the DatabaseAvailabilityGroupIpAddresses parameter when creating a DAG, the system attempts to lease one or more IP addresses from a Dynamic Host Configuration Protocol (DHCP) server in your organization to assign to the DAG. You must specify this parameter each time an additional IP address is added to the DAG, such as in the case of multi-subnet DAGs. You must also specify all IP addresses previously assigned to the DAG each time the DatabaseAvailabilityGroupIpAddresses parameter is used. Setting the DatabaseAvailabilityGroupIpAddresses parameter to a value of 0.0.0.0 automatically configures the DAG to use DHCP.

DatacenterActivationMode

Optional

Microsoft.Exchange.Data.Directory.SystemConfiguration.DatacenterActivationModeOption

The DatacenterActivationMode parameter specifies whether datacenter activation mode is disabled (Off) or enabled for the DAG (DagOnly).

DiscoverNetworks

Optional

System.Management.Automation.SwitchParameter

The DiscoverNetworks parameter specifies whether to force a rediscovery of the network and network interfaces. By default, internal network heartbeats are sent between DAG members on the same subnet. If there's no response to the heartbeats, network discovery is performed automatically by the system. If you add or remove networks or change DAG network subnets, you can force rediscovery of all DAG networks by using the DiscoverNetworks parameter.

DomainController

Optional

Microsoft.Exchange.Data.Fqdn

The DomainController parameter specifies the fully qualified domain name (FQDN) of the domain controller that writes this configuration change to Active Directory.

NetworkCompression

Optional

Microsoft.Exchange.Data.Directory.SystemConfiguration.DatabaseAvailabilityGroup+NetworkOption

The NetworkCompression parameter specifies whether network compression is disabled on all networks (Disabled), enabled on all networks (Enabled), enabled for inter-subnet communication only (InterSubnetOnly), or enabled only for seeding (SeedOnly).

NetworkEncryption

Optional

Microsoft.Exchange.Data.Directory.SystemConfiguration.DatabaseAvailabilityGroup+NetworkOption

The NetworkEncryption parameter specifies whether network encryption is disabled on all networks (Disabled), enabled on all networks (Enabled), enabled for inter-subnet communication only (InterSubnetOnly), or enabled only for seeding (SeedOnly).

ReplicationPort

Optional

System.UInt16

The ReplicationPort parameter specifies a Transmission Control Protocol (TCP) port for replication (log shipping and seeding) activity. If this parameter isn't specified, the default port for replication is TCP 64327.

WhatIf

Optional

System.Management.Automation.SwitchParameter

The WhatIf switch instructs the command to simulate the actions that it would take on the object. By using the WhatIf switch, you can view what changes would occur without having to apply any of those changes. You don't have to specify a value with the WhatIf switch.

WitnessDirectory

Optional

Microsoft.Exchange.Data.NonRootLocalLongFullPath

The WitnessDirectory parameter specifies the name of the directory on the witness server that's used to store file share witness data. The specified directory must not be in use by any other DAGs.

WitnessServer

Optional

Microsoft.Exchange.Data.FileShareWitnessServerName

The WitnessServer parameter specifies the name of a server that will act as a witness for the DAG if the DAG has an even number of members. The server specified can't be a member of the DAG.

Input Types

To see the input types that this cmdlet accepts, see Cmdlet Input and Output Types. If the Input Type field for a cmdlet is blank, the cmdlet doesn’t accept input data.

Return Types

To see the return types, which are also known as output types, that this cmdlet accepts, see Cmdlet Input and Output Types. If the Output Type field is blank, the cmdlet doesn’t return data.

Errors

Error Description

Specified database availability group does not exist.

Verify the name for the DAG and try the task again.

Insufficient authority to perform the task.

Verify that the account you're using has the proper permissions and try the task again.

Examples

EXAMPLE 1

This example sets the witness directory to C:\DAG1DIR for the DAG DAG1.

Copy Code
Set-DatabaseAvailabilityGroup -Identity DAG1 -WitnessDirectory C:\DAG1DIR

EXAMPLE 2

This example preconfigures an alternate witness server of EXHUB3 and an alternate witness directory of C:\DAGFileShareWitnesses\DAG1.contoso.com for the DAG DAG1.

Copy Code
Set-DatabaseAvailabilityGroup -Identity DAG1 -AlternateWitnessDirectory C:\DAGFileShareWitnesses\DAG1.contoso.com -AlternateWitnessServer EXHUB3

EXAMPLE 3

This example configures the DAG DAG1 to use DHCP to obtain an IP address.

Copy Code
Set-DatabaseAvailabilityGroup -Identity DAG1 -DatabaseAvailabilityGroupIpAddresses 0.0.0.0

EXAMPLE 4

This example configures the DAG DAG1 to use a static IP address of 10.0.0.8.

Copy Code
Set-DatabaseAvailabilityGroup -Identity DAG1 -DatabaseAvailabilityGroupIpAddresses 10.0.0.8

EXAMPLE 5

This example configures the multi-subnet DAG DAG1 with multiple static IP addresses.

Copy Code
Set-DatabaseAvailabilityGroup -Identity DAG1 -DatabaseAvailabilityGroupIpAddresses 10.0.0.8,10.0.1.8

EXAMPLE 6

This example configures TCP port 63132 as the port used by replication for the DAG DAG1.

Copy Code
Set-DatabaseAvailabilityGroup -Identity DAG1 -ReplicationPort 63132
Note:
After changing the default replication port for a DAG, you must manually modify the Windows Firewall exceptions on each member of the DAG to allow communication to occur over the specified port.

EXAMPLE 7

This example configures the DAG DAG1 for data center activation mode.

Copy Code
Set-DatabaseAvailabilityGroup -Identity DAG1 -DatacenterActivationMode DagOnly