Add-SqlAvailabilityDatabase
Aggiunge database primari a un gruppo di disponibilità o aggiunge database secondari a un gruppo di disponibilità.
Sintassi
ByPath (impostazione predefinita).
Add-SqlAvailabilityDatabase
[[-Path] <String[]>]
-Database <String[]>
[-Script]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ByObject
Add-SqlAvailabilityDatabase
[-InputObject] <AvailabilityGroup[]>
-Database <String[]>
[-Script]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Descrizione
Il cmdlet Add-SqlAvailabilityDatabase aggiunge database primari a un gruppo di disponibilità o aggiunge database secondari a un gruppo di disponibilità. Il parametro InputObject o Path consente di specificare il gruppo di disponibilità. Un database può appartenere a un solo gruppo di disponibilità.
Per aggiungere database a un gruppo di disponibilità, eseguire questo cmdlet nell'istanza del server che ospita la replica primaria. Specificare uno o più database utente locali.
Per aggiungere un database secondario al gruppo di disponibilità, preparare manualmente il database secondario nell'istanza del server che ospita la replica secondaria. Eseguire quindi questo cmdlet nell'istanza del server che ospita la replica secondaria.
Esempio
Esempio 1: Aggiungere un database a un gruppo di disponibilità
PS C:\>Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MainAG" -Database "Database16"
Questo comando aggiunge il database Database16 al gruppo di disponibilità MainAG. Eseguire questo comando nell'istanza del server primario del gruppo di disponibilità. Questo comando non prepara i database secondari per la sincronizzazione dei dati.
Esempio 2: Aggiungere un database a un gruppo di disponibilità
PS C:\>Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\SecondaryServer\InstanceName\AvailabilityGroups\MainAG" -Database "Database16"
Questo comando aggiunge un database secondario denominato Database16 al gruppo di disponibilità MainAG in una delle istanze del server che ospita una replica secondaria.
Esempio 3: Aggiungere un database e aggiungere un database secondario a un gruppo di disponibilità
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"
In questo esempio viene preparato un database secondario da un database nell'istanza del server che ospita la replica primaria di un gruppo di disponibilità. Aggiunge il database a un gruppo di disponibilità come database primario. Infine, aggiunge il database secondario al gruppo di disponibilità.
I primi quattro comandi archiviano i percorsi nelle variabili da usare più avanti nell'esempio. I comandi assegnano valori alle variabili di $DatabaseBackupFile, $LogBackupFile, $AGPrimaryPath e $AGSecondaryPath.
Il quinto comando esegue il backup del database denominato Database16 che si trova nel server primario nel percorso in $DatabaseBackupFile.
Il sesto comando esegue il backup del file di log per Database16 nel server primario nel percorso in $LogBackupFile.
Il settimo comando ripristina il backup del database per Database16 in un server secondario.
L'ottavo comando ripristina il file di log per Database16 in un server secondario.
Il nono comando aggiunge il database al gruppo di disponibilità nel server primario.
Il comando finale aggiunge il database secondario per tale replica al gruppo di disponibilità. Se sono presenti più repliche secondarie, ripristinare e aggiungere il database secondario per ognuna di esse.
Esempio 4: Creare uno script per aggiungere un database a un gruppo di disponibilità
PS C:\>Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MainAG" -Database "Database16" -Script
Questo comando crea uno script Transact-SQL che aggiunge il database Database16 al gruppo di disponibilità MainAG.
Parametri
-Confirm
Richiede conferma prima di eseguire il cmdlet.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | cfr |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Database
Specifica una matrice di database utente. Questo cmdlet aggiunge o aggiunge i database specificati da questo parametro al gruppo di disponibilità. I database specificati devono trovarsi nell'istanza locale di SQL Server.
Proprietà dei parametri
| Tipo: | String[] |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | True |
| Valore dalla pipeline: | True |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-InputObject
Specifica il gruppo di disponibilità, come oggetto AvailabilityGroup , a cui questo cmdlet aggiunge o aggiunge database.
Proprietà dei parametri
| Tipo: | AvailabilityGroup[] |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
ByObject
| Posizione: | 2 |
| Obbligatorio: | True |
| Valore dalla pipeline: | True |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Path
Specifica il percorso di un gruppo di disponibilità a cui questo cmdlet aggiunge o aggiunge database. Se non si specifica questo parametro, questo cmdlet usa la posizione di lavoro corrente.
Proprietà dei parametri
| Tipo: | String[] |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
ByPath
| Posizione: | 2 |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Script
Indica che questo cmdlet restituisce un Transact-SQL script che esegue l'attività eseguita da questo cmdlet.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-WhatIf
Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | Wi |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
CommonParameters
Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.