Add-SqlAvailabilityDatabase
Adiciona bancos de dados primários a um grupo de disponibilidade ou une bancos de dados secundários a um grupo de disponibilidade.
Sintaxe
Add-SqlAvailabilityDatabase
-Database <String[]>
[[-Path] <String[]>]
[-Script]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Add-SqlAvailabilityDatabase
-Database <String[]>
[-InputObject] <AvailabilityGroup[]>
[-Script]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
O cmdlet Add-SqlAvailabilityDatabase adiciona bancos de dados primários a um grupo de disponibilidade ou une bancos de dados secundários a um grupo de disponibilidade. O parâmetro InputObject ou Path especifica o grupo de disponibilidade. Um banco de dados pode pertencer a apenas um grupo de disponibilidade.
Para adicionar bancos de dados a um grupo de disponibilidade, execute esse cmdlet na instância do servidor que hospeda o réplica primário. Especifique um ou mais bancos de dados de usuário locais.
Para unir um banco de dados secundário ao grupo de disponibilidade, prepare manualmente o banco de dados secundário na instância do servidor que hospeda o réplica secundário. Em seguida, execute esse cmdlet na instância do servidor que hospeda o réplica secundário.
Exemplos
Exemplo 1: Adicionar um banco de dados a um grupo de disponibilidade
PS C:\>Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MainAG" -Database "Database16"
Esse comando adiciona o banco de dados Database16 ao grupo de disponibilidade MainAG. Execute esse comando na instância do servidor primário do grupo de disponibilidade. Esse comando não prepara bancos de dados secundários para sincronização de dados.
Exemplo 2: Unir um banco de dados a um grupo de disponibilidade
PS C:\>Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\SecondaryServer\InstanceName\AvailabilityGroups\MainAG" -Database "Database16"
Esse comando une um banco de dados secundário chamado Database16 ao grupo de disponibilidade MainAG em uma das instâncias do servidor que hospeda um réplica secundário.
Exemplo 3: Adicionar um banco de dados e unir um banco de dados secundário a um grupo de disponibilidade
PS C:\> $DatabaseBackupFile = "\\share\backups\Database16.bak"
PS C:\> $LogBackupFile = "\\share\backups\Database16.trn"
PS C:\> $AGPrimaryPath = "SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MainAG"
PS C:\> $MyAGSecondaryPath = "SQLSERVER:\SQL\SecondaryServer\InstanceName\AvailabilityGroups\MainAG"
PS C:\> Backup-SqlDatabase -Database "Database16" -BackupFile $DatabaseBackupFile -ServerInstance "PrimaryServer\InstanceName"
PS C:\> Backup-SqlDatabase -Database "Database16" -BackupFile $LogBackupFile -ServerInstance "PrimaryServer\InstanceName" -BackupAction Log
PS C:\> Restore-SqlDatabase -Database "Database16" -BackupFile $DatabaseBackupFile -ServerInstance "SecondaryServer\InstanceName" -NoRecovery
PS C:\> Restore-SqlDatabase -Database "Database16" -BackupFile $LogBackupFile -ServerInstance "SecondaryServer\InstanceName" -RestoreAction Log -NoRecovery
PS C:\> Add-SqlAvailabilityDatabase -Path $AGPrimaryPath -Database 'Database16'
PS C:\> Add-SqlAvailabilityDatabase -Path $AGSecondaryPath -Database "Database16"
Este exemplo prepara um banco de dados secundário de um banco de dados na instância do servidor que hospeda o réplica primário de um grupo de disponibilidade. Ele adiciona o banco de dados a um grupo de disponibilidade como um banco de dados primário. Por fim, ele une o banco de dados secundário ao grupo de disponibilidade.
Os quatro primeiros comandos armazenam caminhos em variáveis para uso posteriormente no exemplo. Os comandos atribuem valores às variáveis $DatabaseBackupFile, $LogBackupFile, $AGPrimaryPath e $AGSecondaryPath.
O quinto comando faz backup do banco de dados chamado Database16 que está no servidor primário para o local em $DatabaseBackupFile.
O sexto comando faz backup do arquivo de log do Database16 no servidor primário para o local em $LogBackupFile.
O sétimo comando restaura o backup de banco de dados do Database16 em um servidor secundário.
O oitavo comando restaura o arquivo de log do Database16 em um servidor secundário.
O nono comando adiciona o banco de dados ao grupo de disponibilidade no servidor primário.
O comando final une o banco de dados secundário para esse réplica ao grupo de disponibilidade. Se você tiver mais de um réplica secundário, restaure e ingresse no banco de dados secundário para cada um deles.
Exemplo 4: Criar um script para adicionar um banco de dados a um grupo de disponibilidade
PS C:\>Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MainAG" -Database "Database16" -Script
Esse comando cria um script Transact-SQL que adiciona o banco de dados Database16 ao grupo de disponibilidade MainAG.
Parâmetros
-Confirm
Solicita sua confirmação antes de executar o cmdlet.
Tipo: | SwitchParameter |
Aliases: | cf |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Database
Especifica uma matriz de bancos de dados de usuário. Esse cmdlet adiciona ou une os bancos de dados que esse parâmetro especifica ao grupo de disponibilidade. Os bancos de dados especificados devem residir na instância local do SQL Server.
Tipo: | String[] |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-InputObject
Especifica o grupo de disponibilidade, como um objeto AvailabilityGroup , ao qual esse cmdlet adiciona ou une bancos de dados.
Tipo: | AvailabilityGroup[] |
Cargo: | 2 |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-Path
Especifica o caminho de um grupo de disponibilidade ao qual esse cmdlet adiciona ou une bancos de dados. Se você não especificar esse parâmetro, esse cmdlet usará o local de trabalho atual.
Tipo: | String[] |
Cargo: | 2 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Script
Indica que esse cmdlet retorna um script Transact-SQL que executa a tarefa que esse cmdlet executa.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Tipo: | SwitchParameter |
Aliases: | wi |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
Entradas
Microsoft.SqlServer.Management.Smo.AvailabilityGroup
Links Relacionados
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de