共用方式為


Add-SqlAvailabilityDatabase

將主資料庫加入可用性群組,或將輔助資料庫聯結至可用性群組。

語法

ByPath (預設值)

Add-SqlAvailabilityDatabase
    [[-Path] <String[]>]
    -Database <String[]>
    [-Script]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ByObject

Add-SqlAvailabilityDatabase
    [-InputObject] <AvailabilityGroup[]>
    -Database <String[]>
    [-Script]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

Add-SqlAvailabilityDatabase Cmdlet 會將主資料庫新增至可用性群組,或將輔助資料庫聯結至可用性群組。 InputObjectPath 參數會指定可用性群組。 資料庫只能屬於一個可用性群組。

若要將資料庫新增至可用性群組,請在裝載主要複本的伺服器實例上執行此 Cmdlet。 指定一或多個本機用戶資料庫。

若要將輔助資料庫加入可用性群組,請在裝載次要復本的伺服器實例上手動準備輔助資料庫。 然後在裝載次要複本的伺服器實例上執行此 Cmdlet。

範例

範例 1:將資料庫新增至可用性群組

PS C:\>Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MainAG" -Database "Database16"

此命令會將資料庫 Database16 新增至可用性群組 MainAG。 在可用性群組的主伺服器實例上執行此命令。 此命令不會準備輔助資料庫以進行數據同步處理。

範例 2:將資料庫加入可用性群組

PS C:\>Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\SecondaryServer\InstanceName\AvailabilityGroups\MainAG" -Database "Database16"

此命令會將名為 Database16 的輔助資料庫聯結至裝載次要複本之其中一個伺服器實例的可用性群組 MainAG。

範例 3:新增資料庫並將輔助資料庫聯結至可用性群組

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"

此範例會從裝載可用性群組主要複本的伺服器實例上的資料庫準備輔助資料庫。 它會將資料庫新增至可用性群組做為主資料庫。 最後,它會將輔助資料庫聯結至可用性群組。

前四個命令會將路徑儲存在變數中,以供稍後在範例中使用。 命令會將值指派給$DatabaseBackupFile、$LogBackupFile、$AGPrimaryPath和$AGSecondaryPath變數。

第五個命令會將位於主伺服器上的 Database16 資料庫備份到$DatabaseBackupFile中的位置。

第六個命令會將主伺服器上的 Database16 記錄檔備份到 $LogBackupFile 中的位置。

第七個命令會在輔助伺服器上還原 Database16 的資料庫備份。

第八個命令會在輔助伺服器上還原 Database16 的記錄檔。

第九個命令會將資料庫新增至主伺服器上的可用性群組。

最後一個命令會將該複本的輔助資料庫聯結至可用性群組。 如果您有多個次要複本,請針對每個複本還原並聯結輔助資料庫。

範例 4:建立腳本以將資料庫新增至可用性群組

PS C:\>Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\PrimaryServer\InstanceName\AvailabilityGroups\MainAG" -Database "Database16" -Script

此命令會建立 Transact-SQL 腳本,將資料庫 Database16 新增至可用性群組 MainAG。

參數

-Confirm

在執行 Cmdlet 之前,提示您進行確認。

參數屬性

類型:SwitchParameter
預設值:False
支援萬用字元:False
不要顯示:False
別名:cf

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Database

指定使用者資料庫的陣列。 此 Cmdlet 會將此參數指定的資料庫加入或聯結至可用性群組。 您指定的資料庫必須位於 SQL Server 的本機實例上。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:True
來自管線的值:True
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-InputObject

指定可用性群組做為 AvailabilityGroup 物件,此 Cmdlet 會加入或聯結資料庫。

參數屬性

類型:

AvailabilityGroup[]

預設值:None
支援萬用字元:False
不要顯示:False

參數集

ByObject
Position:2
必要:True
來自管線的值:True
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Path

指定這個 Cmdlet 加入或聯結資料庫的可用性群組路徑。 如果您未指定此參數,此 Cmdlet 會使用目前的工作位置。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:False
不要顯示:False

參數集

ByPath
Position:2
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Script

指出此 Cmdlet 會傳回執行此 Cmdlet 所執行工作的 Transact-SQL 腳本。

參數屬性

類型:SwitchParameter
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-WhatIf

顯示 Cmdlet 執行時會發生什麼事。 指令未執行。

參數屬性

類型:SwitchParameter
預設值:False
支援萬用字元:False
不要顯示:False
別名:無線

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

CommonParameters

此 Cmdlet 支援一般參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters

輸入

Microsoft.SqlServer.Management.Smo.AvailabilityGroup