Add-SqlAvailabilityDatabase
Agrega bases de datos principales a un grupo de disponibilidad o une bases de datos secundarias a un grupo de disponibilidad.
Sintaxis
ByPath (Es el valor predeterminado).
Add-SqlAvailabilityDatabase
[[-Path] <String[]>]
-Database <String[]>
[-Script]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ByObject
Add-SqlAvailabilityDatabase
[-InputObject] <AvailabilityGroup[]>
-Database <String[]>
[-Script]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
El cmdlet Add-SqlAvailabilityDatabase agrega bases de datos principales a un grupo de disponibilidad o une bases de datos secundarias a un grupo de disponibilidad. El parámetro InputObject o Path especifica el grupo de disponibilidad. Una base de datos solo puede pertenecer a un grupo de disponibilidad.
Para agregar bases de datos a un grupo de disponibilidad, ejecute este cmdlet en la instancia del servidor que hospeda la réplica principal. Especifique una o varias bases de datos de usuario locales.
Para unir una base de datos secundaria al grupo de disponibilidad, prepare manualmente la base de datos secundaria en la instancia del servidor que hospeda la réplica secundaria. A continuación, ejecute este cmdlet en la instancia del servidor que hospeda la réplica secundaria.
Ejemplos
Ejemplo 1: Agregar una base de datos a un grupo de disponibilidad
PS C:\>Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MainAG" -Database "Database16"
Este comando agrega la base de datos Database16 al grupo de disponibilidad MainAG. Ejecute este comando en la instancia del servidor principal del grupo de disponibilidad. Este comando no prepara las bases de datos secundarias para la sincronización de datos.
Ejemplo 2: Unión de una base de datos a un grupo de disponibilidad
PS C:\>Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\SecondaryServer\InstanceName\AvailabilityGroups\MainAG" -Database "Database16"
Este comando une una base de datos secundaria denominada Database16 al grupo de disponibilidad MainAG en una de las instancias de servidor que hospeda una réplica secundaria.
Ejemplo 3: Agregar una base de datos y unir una base de datos secundaria a un grupo de disponibilidad
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"
En este ejemplo se prepara una base de datos secundaria de una base de datos en la instancia del servidor que hospeda la réplica principal de un grupo de disponibilidad. Agrega la base de datos a un grupo de disponibilidad como base de datos principal. Por último, une la base de datos secundaria al grupo de disponibilidad.
Los cuatro primeros comandos almacenan rutas de acceso en variables para usarlas más adelante en el ejemplo. Los comandos asignan valores a las variables $DatabaseBackupFile, $LogBackupFile, $AGPrimaryPath y $AGSecondaryPath.
El quinto comando realiza una copia de seguridad de la base de datos denominada Database16 que se encuentra en el servidor principal en la ubicación de $DatabaseBackupFile.
El sexto comando realiza una copia de seguridad del archivo de registro de Database16 en el servidor principal en la ubicación de $LogBackupFile.
El séptimo comando restaura la copia de seguridad de la base de datos para Database16 en un servidor secundario.
El octavo comando restaura el archivo de registro de Database16 en un servidor secundario.
El noveno comando agrega la base de datos al grupo de disponibilidad en el servidor principal.
El comando final combina la base de datos secundaria para esa réplica con el grupo de disponibilidad. Si tiene más de una réplica secundaria, restaure y una la base de datos secundaria para cada una de ellas.
Ejemplo 4: Creación de un script para agregar una base de datos a un grupo de disponibilidad
PS C:\>Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MainAG" -Database "Database16" -Script
Este comando crea un script Transact-SQL que agrega la base de datos Database16 al grupo de disponibilidad MainAG.
Parámetros
-Confirm
Le pide confirmación antes de ejecutar el cmdlet.
Propiedades del parámetro
| Tipo: | SwitchParameter |
| Valor predeterminado: | False |
| Admite caracteres comodín: | False |
| DontShow: | False |
| Alias: | cf |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-Database
Especifica una matriz de bases de datos de usuario. Este cmdlet agrega o une las bases de datos que especifica este parámetro al grupo de disponibilidad. Las bases de datos que especifique deben residir en la instancia local de SQL Server.
Propiedades del parámetro
| Tipo: | String[] |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | True |
| Valor de la canalización: | True |
| Valor de la canalización por nombre de propiedad: | True |
| Valor de los argumentos restantes: | False |
-InputObject
Especifica el grupo de disponibilidad, como un objeto AvailabilityGroup , al que este cmdlet agrega o une bases de datos.
Propiedades del parámetro
| Tipo: | AvailabilityGroup[] |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
ByObject
| Posición: | 2 |
| Mandatory: | True |
| Valor de la canalización: | True |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-Path
Especifica la ruta de acceso de un grupo de disponibilidad al que este cmdlet agrega o une bases de datos. Si no especifica este parámetro, este cmdlet usa la ubicación de trabajo actual.
Propiedades del parámetro
| Tipo: | String[] |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
ByPath
| Posición: | 2 |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-Script
Indica que este cmdlet devuelve un script de Transact-SQL que realiza la tarea que realiza este cmdlet.
Propiedades del parámetro
| Tipo: | SwitchParameter |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
-WhatIf
Muestra lo que sucedería si el cmdlet se ejecuta. El cmdlet no se ejecuta.
Propiedades del parámetro
| Tipo: | SwitchParameter |
| Valor predeterminado: | False |
| Admite caracteres comodín: | False |
| DontShow: | False |
| Alias: | Wi |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Mandatory: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
CommonParameters
Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.