Compartilhar via


New-SqlAvailabilityReplica

Cria uma réplica de disponibilidade.

Sintaxe

ByPath (Padrão)

New-SqlAvailabilityReplica
    [-Name] <String>
    [[-Path] <String>]
    -AvailabilityMode <AvailabilityReplicaAvailabilityMode>
    -FailoverMode <AvailabilityReplicaFailoverMode>
    -EndpointUrl <String>
    [-SessionTimeout <Int32>]
    [-ConnectionModeInPrimaryRole <AvailabilityReplicaConnectionModeInPrimaryRole>]
    [-ConnectionModeInSecondaryRole <AvailabilityReplicaConnectionModeInSecondaryRole>]
    [-BackupPriority <Int32>]
    [-ReadOnlyRoutingList <String[]>]
    [-ReadonlyRoutingConnectionUrl <String>]
    [-Script]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

AsTemplate

New-SqlAvailabilityReplica
    [-Name] <String>
    -AvailabilityMode <AvailabilityReplicaAvailabilityMode>
    -FailoverMode <AvailabilityReplicaFailoverMode>
    -EndpointUrl <String>
    [-SessionTimeout <Int32>]
    [-ConnectionModeInPrimaryRole <AvailabilityReplicaConnectionModeInPrimaryRole>]
    [-ConnectionModeInSecondaryRole <AvailabilityReplicaConnectionModeInSecondaryRole>]
    [-BackupPriority <Int32>]
    [-ReadOnlyRoutingList <String[]>]
    [-ReadonlyRoutingConnectionUrl <String>]
    [-AsTemplate]
    [-Version <ServerVersion>]
    [-Script]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ByObject

New-SqlAvailabilityReplica
    [-Name] <String>
    [-InputObject] <AvailabilityGroup>
    -AvailabilityMode <AvailabilityReplicaAvailabilityMode>
    -FailoverMode <AvailabilityReplicaFailoverMode>
    -EndpointUrl <String>
    [-SessionTimeout <Int32>]
    [-ConnectionModeInPrimaryRole <AvailabilityReplicaConnectionModeInPrimaryRole>]
    [-ConnectionModeInSecondaryRole <AvailabilityReplicaConnectionModeInSecondaryRole>]
    [-BackupPriority <Int32>]
    [-ReadOnlyRoutingList <String[]>]
    [-ReadonlyRoutingConnectionUrl <String>]
    [-Script]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

O cmdlet New-SqlAvailabilityReplica cria uma réplica de disponibilidade. Execute este cmdlet na instância do SQL Server que hospeda a réplica primária.

Para criar uma réplica de disponibilidade antes de criar um grupo de disponibilidade, especifique o parâmetro AsTemplate . Para adicionar uma réplica a um grupo de disponibilidade existente, o parâmetro InputObject ou Path especifica o grupo de disponibilidade.

Exemplos

Exemplo 1: Cria uma representação de uma réplica de disponibilidade

PS C:\> $ServerObject = Get-Item "SQLSERVER:\Sql\PrimaryServer\InstanceName"
PS C:\> New-SqlAvailabilityReplica -Name "PrimaryServer\Instance" -EndpointUrl "TCP://PrimaryServerName.domain.com:5022" -FailoverMode Automatic -AvailabilityMode SynchronousCommit -AsTemplate -Version $ServerObject.Version

Este exemplo cria uma representação na memória de uma réplica de disponibilidade. Nenhuma alteração é confirmada no servidor. Você pode usar essa réplica como um valor para o parâmetro AvailabilityReplica de New-SqlAvailabilityGroup

O primeiro comando obtém uma instância do servidor primário.

O segundo comando cria a réplica de disponibilidade. Essa réplica usa o ponto de extremidade de espelhamento de banco de dados localizado na URL especificada para se comunicar com outras réplicas no grupo de disponibilidade. Essa réplica dá suporte ao failover automático e ao modo de disponibilidade de confirmação síncrona. O parâmetro Version especifica a versão da instância do servidor que hospedará essa nova réplica.

Exemplo 2: Cria uma réplica de disponibilidade que dá suporte ao failover manual e à confirmação assíncrona

PS C:\> $ServerObject = Get-Item "SQLSERVER:\Sql\PrimaryServer\InstanceName"
PS C:\> New-SqlAvailabilityReplica -Name "SecondaryServer\Instance" -EndpointUrl "TCP://PrimaryServerName.domain.com:5022" -FailoverMode Manual -AvailabilityMode AsynchronousCommit -AsTemplate -Version $ServerObject.Version

Este exemplo cria uma representação na memória de uma réplica de disponibilidade. Nenhuma alteração é confirmada no servidor.

O primeiro comando obtém uma instância do servidor primário.

O segundo comando cria a réplica de disponibilidade. Essa réplica usa o ponto de extremidade de espelhamento de banco de dados localizado na URL especificada para se comunicar com outras réplicas no grupo de disponibilidade. Essa réplica dá suporte ao failover manual e ao modo de disponibilidade de confirmação assíncrona. O parâmetro Version especifica a versão da instância do servidor que hospedará essa nova réplica.

Exemplo 3: adicionar uma réplica de disponibilidade a um grupo de disponibilidade

PS C:\> New-SqlAvailabilityReplica -Name "SecondaryServer\Instance" -EndpointUrl "TCP://PrimaryServerName.domain.com:5022" -FailoverMode Manual -AvailabilityMode AsynchronousCommit -ConnectionModeInSecondaryRole AllowAllConnections -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG"

Esse comando adiciona uma réplica de disponibilidade a um grupo de disponibilidade existente chamado MainAG. Esta réplica dá suporte a failover manual e ao modo de disponibilidade de confirmação assíncrona. Na função secundária, essa réplica dá suporte a conexões de acesso de leitura. Essa configuração permite descarregar o processamento somente leitura para essa réplica.

Parâmetros

-AsTemplate

Indica que esse cmdlet cria um objeto AvailabilityReplica temporário na memória. Especifique esse parâmetro para criar um grupo de disponibilidade antes de criar uma réplica de disponibilidade. Crie um grupo de disponibilidade usando o cmdlet New-SqlAvailabilityGroup. Especifique a réplica de disponibilidade temporária como o valor do parâmetro AvailabilityReplica .

Se você especificar AsTemplate, esse cmdlet ignorará os valores dos parâmetros InputObject e Path .

Se você especificar esse parâmetro, também deverá especificar uma versão do SQL Server para o parâmetro Version ou sua sessão atual deverá ter uma conexão ativa com uma instância.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

AsTemplate
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-AvailabilityMode

Especifica o modo de disponibilidade da réplica. Os valores aceitáveis para este parâmetro são:

  • SynchronousCommit
  • AssíncronoCommit

Você pode especificar um valor de $Null.

Propriedades do parâmetro

Tipo:AvailabilityReplicaAvailabilityMode
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-BackupPriority

Especifica a prioridade desejada das réplicas na execução de backups. Os valores aceitáveis para esse parâmetro são: inteiros de 0 a 100. Do conjunto de réplicas que estão online e disponíveis, a réplica que tem a prioridade mais alta executa o backup.

Propriedades do parâmetro

Tipo:Int32
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Confirm

Solicita sua confirmação antes de executar o cmdlet.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:False
Dá suporte a curingas:False
DontShow:False
Aliases:cf

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-ConnectionModeInPrimaryRole

Especifica como a réplica de disponibilidade lida com conexões quando está na função primária. Os valores aceitáveis para este parâmetro são:

  • AllowReadWriteConnections. Permitir conexões de leitura/gravação
  • AllowAllConnections. Permitir todas as conexões

Propriedades do parâmetro

Tipo:AvailabilityReplicaConnectionModeInPrimaryRole
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-ConnectionModeInSecondaryRole

Especifica como a réplica de disponibilidade lida com conexões quando na função secundária. Os valores aceitáveis para este parâmetro são:

  • AllowNoConnections. Não permite conexões
  • AllowReadIntentConnectionsOnly. Permite apenas conexões de intenção de leitura
  • AllowAllConnections. Permite todas as conexões

Propriedades do parâmetro

Tipo:AvailabilityReplicaConnectionModeInSecondaryRole
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-EndpointUrl

Especifica a URL do ponto de extremidade de espelhamento de banco de dados. Essa URL é um endereço TCP no seguinte formulário:

TCP://system-address:port

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-FailoverMode

Especifica o modo de failover. Os valores aceitáveis para este parâmetro são:

  • Automático
  • Manual Você pode especificar um valor de $Null.

Propriedades do parâmetro

Tipo:AvailabilityReplicaFailoverMode
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-InputObject

Especifica o grupo de disponibilidade, como um objeto AvailabilityGroup , ao qual a réplica pertence.

Propriedades do parâmetro

Tipo:AvailabilityGroup
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

ByObject
Cargo:3
Obrigatório:True
Valor do pipeline:True
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Name

Especifica um nome para a réplica de disponibilidade no seguinte formato:

Computador\Instância

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:2
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Path

Especifica o caminho do grupo de disponibilidade ao qual a réplica pertence. Se você não especificar esse parâmetro, esse cmdlet usará o local de trabalho atual.

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

ByPath
Cargo:3
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-ReadonlyRoutingConnectionUrl

Especifica o FQDN (nome de domínio totalmente qualificado) e a porta a serem usadas ao rotear para a réplica para conexões somente leitura, como no exemplo a seguir:

TCP://DBSERVER8.manufacturing.Contoso.com:7024

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-ReadOnlyRoutingList

Especifica uma lista ordenada de nomes de servidor de réplica que representam a sequência de investigação para o diretor de conexão usar ao redirecionar conexões somente leitura por meio dessa réplica de disponibilidade. Esse parâmetro se aplica se a réplica de disponibilidade é a réplica primária atual do grupo de disponibilidade.

Propriedades do parâmetro

Tipo:

String[]

Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Script

Indica que esse cmdlet retorna um script Transact-SQL que executa a tarefa executada por esse cmdlet.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-SessionTimeout

Especifica a quantidade de tempo, em segundos, para aguardar uma resposta entre a réplica primária e essa réplica antes que a conexão falhe.

Propriedades do parâmetro

Tipo:Int32
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Version

Especifica uma versão do SQL Server. Se você especificar o parâmetro AsTemplate , deverá especificar uma versão. O objeto de modelo é criado no modo de design em um servidor que inclui essa versão. Você pode especificar um inteiro ou uma cadeia de caracteres, como nos seguintes exemplos:

  • 13
  • "13.0.0"

Propriedades do parâmetro

Tipo:ServerVersion
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

AsTemplate
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:False
Dá suporte a curingas:False
DontShow:False
Aliases:wi

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

Entradas

Microsoft.SqlServer.Management.Smo.AvailabilityGroup

Você pode passar um grupo de disponibilidade para este cmdlet.

Saídas

Microsoft.SqlServer.Management.Smo.AvailabilityReplica

Esse cmdlet retorna uma réplica de disponibilidade.