Backup-SqlDatabase
備份 SQL Server 資料庫物件。
Syntax
Backup-SqlDatabase
[-BackupContainer <String>]
[-MirrorDevices <BackupDeviceList[]>]
[-BackupAction <BackupActionType>]
[-BackupSetName <String>]
[-BackupSetDescription <String>]
[-CompressionOption <BackupCompressionOptions>]
[-CopyOnly]
[-ExpirationDate <DateTime>]
[-FormatMedia]
[-Incremental]
[-Initialize]
[-LogTruncationType <BackupTruncateLogType>]
[-MediaDescription <String>]
[-RetainDays <Int32>]
[-SkipTapeHeader]
[-UndoFileName <String>]
[-EncryptionOption <BackupEncryptionOptions>]
[-StatementTimeout <Int32>]
[-Database] <String>
[-Path <String[]>]
[[-BackupFile] <String[]>]
[-SqlCredential <PSObject>]
[-BackupDevice <BackupDeviceItem[]>]
[-PassThru]
[-Checksum]
[-ContinueAfterError]
[-NoRewind]
[-Restart]
[-UnloadTapeAfter]
[-NoRecovery]
[-DatabaseFile <String[]>]
[-DatabaseFileGroup <String[]>]
[-BlockSize <Int32>]
[-BufferCount <Int32>]
[-MaxTransferSize <Int32>]
[-MediaName <String>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Backup-SqlDatabase
[-BackupContainer <String>]
[-MirrorDevices <BackupDeviceList[]>]
[-BackupAction <BackupActionType>]
[-BackupSetName <String>]
[-BackupSetDescription <String>]
[-CompressionOption <BackupCompressionOptions>]
[-CopyOnly]
[-ExpirationDate <DateTime>]
[-FormatMedia]
[-Incremental]
[-Initialize]
[-LogTruncationType <BackupTruncateLogType>]
[-MediaDescription <String>]
[-RetainDays <Int32>]
[-SkipTapeHeader]
[-UndoFileName <String>]
[-EncryptionOption <BackupEncryptionOptions>]
[-StatementTimeout <Int32>]
[-DatabaseObject] <Database>
[[-BackupFile] <String[]>]
[-SqlCredential <PSObject>]
[-BackupDevice <BackupDeviceItem[]>]
[-PassThru]
[-Checksum]
[-ContinueAfterError]
[-NoRewind]
[-Restart]
[-UnloadTapeAfter]
[-NoRecovery]
[-DatabaseFile <String[]>]
[-DatabaseFileGroup <String[]>]
[-BlockSize <Int32>]
[-BufferCount <Int32>]
[-MaxTransferSize <Int32>]
[-MediaName <String>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Backup-SqlDatabase
[-BackupContainer <String>]
[-MirrorDevices <BackupDeviceList[]>]
[-BackupAction <BackupActionType>]
[-BackupSetName <String>]
[-BackupSetDescription <String>]
[-CompressionOption <BackupCompressionOptions>]
[-CopyOnly]
[-ExpirationDate <DateTime>]
[-FormatMedia]
[-Incremental]
[-Initialize]
[-LogTruncationType <BackupTruncateLogType>]
[-MediaDescription <String>]
[-RetainDays <Int32>]
[-SkipTapeHeader]
[-UndoFileName <String>]
[-EncryptionOption <BackupEncryptionOptions>]
[-StatementTimeout <Int32>]
[-Database] <String>
-ServerInstance <String[]>
[-Credential <PSCredential>]
[-ConnectionTimeout <Int32>]
[[-BackupFile] <String[]>]
[-SqlCredential <PSObject>]
[-BackupDevice <BackupDeviceItem[]>]
[-PassThru]
[-Checksum]
[-ContinueAfterError]
[-NoRewind]
[-Restart]
[-UnloadTapeAfter]
[-NoRecovery]
[-DatabaseFile <String[]>]
[-DatabaseFileGroup <String[]>]
[-BlockSize <Int32>]
[-BufferCount <Int32>]
[-MaxTransferSize <Int32>]
[-MediaName <String>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Backup-SqlDatabase
[-BackupContainer <String>]
[-MirrorDevices <BackupDeviceList[]>]
[-BackupAction <BackupActionType>]
[-BackupSetName <String>]
[-BackupSetDescription <String>]
[-CompressionOption <BackupCompressionOptions>]
[-CopyOnly]
[-ExpirationDate <DateTime>]
[-FormatMedia]
[-Incremental]
[-Initialize]
[-LogTruncationType <BackupTruncateLogType>]
[-MediaDescription <String>]
[-RetainDays <Int32>]
[-SkipTapeHeader]
[-UndoFileName <String>]
[-EncryptionOption <BackupEncryptionOptions>]
[-StatementTimeout <Int32>]
[-Database] <String>
-InputObject <Server[]>
[[-BackupFile] <String[]>]
[-SqlCredential <PSObject>]
[-BackupDevice <BackupDeviceItem[]>]
[-PassThru]
[-Checksum]
[-ContinueAfterError]
[-NoRewind]
[-Restart]
[-UnloadTapeAfter]
[-NoRecovery]
[-DatabaseFile <String[]>]
[-DatabaseFileGroup <String[]>]
[-BlockSize <Int32>]
[-BufferCount <Int32>]
[-MaxTransferSize <Int32>]
[-MediaName <String>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Backup-SqlDatabase
[-BackupContainer <String>]
[-MirrorDevices <BackupDeviceList[]>]
[-BackupAction <BackupActionType>]
[-BackupSetName <String>]
[-BackupSetDescription <String>]
[-CompressionOption <BackupCompressionOptions>]
[-CopyOnly]
[-ExpirationDate <DateTime>]
[-FormatMedia]
[-Incremental]
[-Initialize]
[-LogTruncationType <BackupTruncateLogType>]
[-MediaDescription <String>]
[-RetainDays <Int32>]
[-SkipTapeHeader]
[-UndoFileName <String>]
[-EncryptionOption <BackupEncryptionOptions>]
[-StatementTimeout <Int32>]
[[-BackupFile] <String[]>]
[-SqlCredential <PSObject>]
[-BackupDevice <BackupDeviceItem[]>]
[-PassThru]
[-Checksum]
[-ContinueAfterError]
[-NoRewind]
[-Restart]
[-UnloadTapeAfter]
[-NoRecovery]
[-DatabaseFile <String[]>]
[-DatabaseFileGroup <String[]>]
[-BlockSize <Int32>]
[-BufferCount <Int32>]
[-MaxTransferSize <Int32>]
[-MediaName <String>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Backup-SqlDatabase Cmdlet 會在 SQL Server 資料庫上執行備份作業。
這包括完整資料庫備份、交易記錄備份和資料庫檔案備份。
這個 Cmdlet 是依照 Microsoft.SqlServer.Management.Smo.Backup 類別建立的。
此類別的參數通常會對應至該 Smo 物件的屬性。
若要依伺服器實例路徑和資料庫名稱備份資料庫,請在Path參數中指定伺服器實例路徑,並在Database參數中指定資料庫名稱。
若要使用 Smo.Server 對象和資料庫名稱來備份資料庫,請直接或使用管線運算符,以及 Database 參數中的資料庫名稱,在 InputObject 參數中指定 Smo.Server 物件。
若要依伺服器實例和資料庫名稱備份資料庫,請在 ServerInstance 參數中指定伺服器實例,並在 Database 參數中指定資料庫名稱。
若要使用 Smo.Database 物件備份資料庫,請直接或使用管線運算符,在 DatabaseObject 參數中指定 Smo.Database 物件。
根據預設,此 Cmdlet 會執行完整資料庫備份。
使用BackupAction 參數設定備份的類型。
根據預設,備份檔會儲存在預設伺服器備份位置,其名稱 databasename.bak為完整和/或文件備份的名稱下,以及記錄備份的名稱為 databasename.trn。 若要指定不同的檔名,請使用BackupFile 參數。
若要指定備份檔位置並使用自動產生的檔名,請使用BackupContainer 參數指定位置。
範例
範例 1:備份完整資料庫
PS C:\> Backup-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB"
此命令會建立名為 『MainDB』 之資料庫的完整資料庫備份至伺服器實例 『Computer\Instance』 的預設備份位置。 備份檔名為 『MainDB.bak』。
範例 2:根據位置備份資料庫
PS C:\> Set-Location "SQLSERVER:\SQL\Computer\Instance"
PS SQLSERVER:\SQL\Computer\Instance> Backup-SqlDatabase -Database "MainDB"
此命令會建立資料庫 'MainDB' 的完整資料庫備份至伺服器實例 'Computer\Instance' 的默認備份位置。 目前的工作目錄是用來判斷備份發生所在的伺服器實例。
範例 3:備份事務歷史記錄
PS C:\> Backup-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupAction Log
此命令會建立資料庫 'MainDB' 事務歷史記錄檔備份至伺服器實例 'Computer\Instance' 的默認備份位置。 備份檔名為 『MainDB.trn』。
範例 4:備份資料庫並提示輸入認證
PS C:\> Backup-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -Credential (Get-Credential "sa")
此命令會使用 『sa』 SQL Server 登入,建立資料庫 『MainDB』 的完整資料庫備份。 此命令會提示輸入密碼以完成驗證。
範例 5:將資料庫備份至網路檔案共用
PS C:\> Backup-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupFile "\\mainserver\databasebackup\MainDB.bak"
此命令會建立資料庫 『MainDB』 的完整資料庫備份至檔案 “\\mainserver\databasebackup\MainDB.bak”。
範例 6:備份伺服器實例中的所有資料庫
PS C:\> Get-ChildItem "SQLSERVER:\SQL\Computer\Instance\Databases" | Backup-SqlDatabase
此命令會將伺服器執行個體 'Computer\Instance' 上的所有資料庫都備份至預設備份位置。 備份檔的名稱為 <資料庫名稱>.bak。
範例 7:將伺服器實例中的所有資料庫備份至網路檔案共用
PS C:\> Set-Location "SQLSERVER:\SQL\Computer\Instance\Databases"
PS SQLSERVER:\SQL\Computer\Instance\Databases> foreach ($database in (Get-ChildItem)) {
$dbName = $database.Name
Backup-SqlDatabase -Database $dbName -BackupFile "\\mainserver\databasebackup\$dbName.bak" }
此命令會為伺服器實例 'Computer\Instance' 上的每個資料庫建立完整備份至共用 “\\mainserver\databasebackup”。 備份檔的名稱為 <資料庫名稱>.bak。
範例 8:備份次要檔案群組中的所有檔案
PS C:\> Backup-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupAction Files -DatabaseFileGroup "FileGroupJan","FileGroupFeb"
此命令會建立次要檔案群組 『FileGroupJan』 和 『FileGroupFeb』 中每個檔案的完整文件備份。
範例 9:建立差異備份
PS C:\> Backup-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -Incremental
此命令會建立資料庫 'MainDB' 的差異備份至伺服器實例 'Computer\Instance' 的默認備份位置。 備份檔名為 「MainDB.bak」。。
範例 10:建立磁帶機的備份
PS C:\> $TapeDevice = New-Object Microsoft.Sqlserver.Management.Smo.BackupDeviceItem("\\.\tape0", "Tape")
PS C:\> Backup-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupDevice $TapeDevice
此命令會建立資料庫 MainDB 的完整備份到磁帶裝置 “\\.\tape0”。 為了表示此裝置,命令會建構 Microsoft.Sqlserver.Management.Smo.BackupDeviceItem 對象的實例。 建構函式會採用兩個自變數:備份裝置的名稱和備份裝置的類型。 這個BackupDeviceItem對象會傳遞至 Backup-SqlDatabase Cmdlet的BackupDevice 參數。
範例 11:將資料庫備份至 Azure Blob 儲存體 服務
PS C:\> Backup-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainDB" -BackupContainer "https://storageaccountname.blob.core.windows.net/containername" -SqlCredential "SQLCredentialName"
此命令會建立資料庫 『MainDB』 的完整備份至 Windows Azure Blob 儲存體 服務。 它會使用BackupContainer來指定 Windows Azure Blob 容器) (URL 的位置。 備份檔的名稱會自動產生。 SqlCredential 參數是用來指定用於儲存驗證資訊之 SQL Server 認證的名稱。
範例 12:將資料庫備份至 Azure Blob 儲存體 服務,並指定檔名
PS C:\> Backup-SqlDatabase -ServerInstance "Computer\Instance" -Database "MainyDB" -BackupFile "https://storageaccountname.blob.core.windows.net/containername/MainDB.bak" -SqlCredential "SQLCredentialName"
此命令會建立資料庫 MainDB 的完整備份至 Windows Azure Blob 儲存體 服務。 此命令會使用 BackupFile 參數指定備份檔案的位置 (URL) 和名稱。 SqlCredential 參數是用來指定 SQL Server 認證的名稱。
範例 13:將所有資料庫備份至 Azure Blob 儲存體 服務
PS C:\> Get-ChildItem "SQLSERVER:\SQL\Computer\Instance\Databases" | Backup-SqlDatabase -BackupContainer "https://storageaccountname.blob.core.windows.net/containername" -SqlCredential "SQLCredentialName"
此命令會使用BackupContainer 參數,將伺服器實例 'Computer\Instance' 上的所有資料庫備份至 Windows Azure Blob 儲存體 服務位置。 備份檔案的名稱是自動產生的。
範例 14:建立加密備份
PS C:\> $EncryptionOption = New-SqlBackupEncryptionOption -Algorithm Aes256 -EncryptorType ServerCertificate -EncryptorName "BackupCert"
PS C:\> Backup-SqlDatabase -ServerInstance "." -Database "MainDB" -BackupFile "MainDB.bak" -CompressionOption On -EncryptionOption $EncryptionOption
此範例會建立加密選項,並將其當做 Backup-SqlDatabase 中的參數值來建立加密的備份。
參數
-AccessToken
用來驗證 SQL Server 的存取令牌,作為使用者/密碼或 Windows 驗證的替代方案。
例如,這可用來連線至 SQL Azure DB
或使用 或使用 SQL Azure Managed Instance
Service Principal
或 Managed Identity
。
要使用的參數可以是字串,代表令牌或 PSAccessToken
執行 所傳 Get-AzAccessToken -ResourceUrl https://database.windows.net
回的物件。
這個參數是模組 v22 的新功能。
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-BackupAction
指定要執行的備份作業類型。 有效值為:
- 資料庫。 備份資料庫中的所有資料檔案。
- 檔案。 備份 DatabaseFile 或 DatabaseFileGroup 參數中指定的數據檔。
- 日誌。 備份交易記錄。
Type: | BackupActionType |
Accepted values: | Database, Files, Log |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-BackupContainer
指定 Cmdlet 儲存備份的資料夾或位置。 這可以是 Azure Blob 容器磁碟或 URL 上的資料夾。 在指定的執行個體中備份多個資料庫時,這個參數可能會很有用。 這個參數無法搭配 BackupDevice 參數使用。 BackupContainer 參數無法搭配 BackupFile 參數使用。
用來指定位置的路徑應該以正斜線結尾 (/) 。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-BackupDevice
指定儲存備份的裝置。 這個參數無法搭配 BackupFile 參數使用。 如果您要備份至磁帶,請使用此參數。
Type: | BackupDeviceItem[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-BackupFile
指定備份的位置和檔名。 這是選擇性參數。 如果未指定,備份會儲存在伺服器的默認備份位置中,其名稱為 databasename.bak,以進行完整備份和文件備份,或記錄備份的 databasename.trn。 此參數不能與 BackupDevice 或 BackupContainer 參數搭配使用。
Type: | String[] |
Position: | 2 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-BackupSetDescription
指定備份集的描述。 這是選擇性參數。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-BackupSetName
指定備份組的名稱。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-BlockSize
指定備份的實體區塊大小,以位元組為單位。 支援的大小為 512、1024、2048、4096、8192、16384、32768 和 65536 (64 KB) 位元組。 磁帶裝置的預設值為 65536,所有其他裝置則為 512。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-BufferCount
指定要用於備份作業的 I/O 緩衝區數目。 您可以指定任何正整數。 如果緩衝區的 Sqlservr.exe 進程中沒有足夠的虛擬位址空間,您會收到記憶體不足的錯誤。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Checksum
表示在備份作業期間計算總和檢查碼值。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CompressionOption
指定備份作業的壓縮選項。
Type: | BackupCompressionOptions |
Accepted values: | Default, On, Off |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
在執行 Cmdlet 之前,會提示您確認。在執行 Cmdlet 之前,會提示您確認。
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ConnectionTimeout
指定在逾時失敗之前等候伺服器連線的秒數。 逾時值必須是介於 0 到 65534 之間的整數。 如果指定 0,則連線嘗試不會逾時。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ContinueAfterError
表示發生總和檢查碼錯誤時,作業會繼續。 如果未設定,則作業會在總和檢查碼錯誤之後失敗。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CopyOnly
表示備份是僅限複製的備份。 僅限複製備份不會影響定期排程傳統備份的一般順序。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
指定 PSCredential 物件,其中包含具有執行這項作業許可權之 SQL Server 登入的認證。 這不是在存取 SQL Server 外部資源時,SQL Server 在內部儲存驗證資訊的 SQL 認證物件。
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Database
指定要備份的資料庫名稱。 這個參數不能與 DatabaseObject 參數搭配使用。 指定此參數時,也必須指定Path、InputObject或 ServerInstance 參數。
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DatabaseFile
指定要備份的一或多個資料庫檔案。 只有當 BackupAction 設定為 Files 時,才會使用此參數。 當 BackupAction 設定為 Files 時,必須指定 DatabaseFileGroups 或 DatabaseFiles 參數。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DatabaseFileGroup
指定備份作業的目標資料庫檔案群組。 只有當 BackupAction 屬性設定為 Files 時,才會使用此參數。 當 BackupAction 參數設定為 Files 時,必須指定 DatabaseFileGroups 或 DatabaseFiles 參數。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DatabaseObject
指定備份作業的資料庫物件。
Type: | Database |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Encrypt
連接到 SQL Server 時要使用的加密類型。
這個值會對應至 Encrypt
Microsoft.Data.SqlClient 驅動程式之 SqlConnection 物件上的 屬性 SqlConnectionEncryptOption
。
在模組的 v22 中,預設為 Optional
(,以便與 v21) 相容。 在模組 v23+ 中,預設值會是「強制」,這可能會為現有的腳本建立重大變更。
這個參數是模組 v22 中的新功能。
Type: | String |
Accepted values: | Mandatory, Optional, Strict |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EncryptionOption
指定備份作業的加密選項。
Type: | BackupEncryptionOptions |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ExpirationDate
指定備份集到期的日期和時間,而且不再將備份數據視為有效。 這隻能用於儲存在磁碟或磁帶裝置上的備份數據。 備份集比到期日還舊的備份集可供稍後的備份覆寫。
Type: | DateTime |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FormatMedia
表示磁帶會格式化為備份作業的第一個步驟。 這不適用於磁碟備份。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-HostNameInCertificate
用於驗證 SQL Server TLS/SSL 憑證的主機名稱。 如果您的 SQL Server 實例已啟用強制加密,而且您想要使用主機名/shortname 連線到實例,則必須傳遞此參數。 如果省略此參數,則必須將完整域名 (FQDN) 傳遞至 -ServerInstance,才能連線到啟用強制加密的 SQL Server 實例。
這個參數是模組 v22 中的新功能。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Incremental
表示執行差異備份。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Initialize
表示與備份作業相關聯的裝置已初始化。 這會覆寫媒體上任何現有的備份集,並將此備份設為媒體上的第一個備份集。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
指定備份位置的伺服器物件。
Type: | Server[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-LogTruncationType
指定記錄備份的截斷行為。 有效值為:
-- TruncateOnly -- NoTruncate -- Truncate
預設值為 Truncate。
Type: | BackupTruncateLogType |
Accepted values: | TruncateOnly, NoTruncate, Truncate |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MaxTransferSize
指定要在備份媒體與 SQL Server 實例之間傳輸的最大位元元組數目。 可能的值是 65536 個位元組 (64 KB) 的倍數,最多 4194304 個位元組 (4 MB)。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MediaDescription
指定包含備份集之媒體的描述。 這是選擇性參數。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MediaName
指定用來識別媒體集的名稱。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MirrorDevices
指定鏡像備份所使用之 BackupDeviceList 物件的陣列。
Type: | BackupDeviceList[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoRecovery
表示記錄的結尾未備份。 還原時,資料庫會處於還原狀態。 如果未設定,則會備份記錄檔的尾端。 這隻適用於BackupAction 參數設定為Log時。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoRewind
表示當備份完成時,磁帶機會保持開啟狀態。 如果未設定,就會在作業完成之後倒轉磁帶。 這不適用於磁碟或 URL 備份。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
表示 Cmdlet 會輸出執行備份的 Smo.Backup 物件。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
指定要執行備份作業 SQL Server 實例的路徑。 這是選擇性參數。 如果未指定,此參數的值預設為目前的工作位置。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Restart
表示 Cmdlet 會繼續處理部分完成的備份作業。 如果未設定,Cmdlet 會在備份集開始時重新啟動中斷的備份作業。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RetainDays
指定必須經過才能覆寫備份集的天數。 這隻能用於儲存在磁碟或磁帶裝置上的備份數據。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Script
表示此 Cmdlet 會輸出執行備份作業的 Transact-SQL 腳本。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ServerInstance
指定 SQL Server 實例的名稱。 這個伺服器執行個體會成為備份作業的目標。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-SkipTapeHeader
表示磁帶標頭未讀取。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SqlCredential
指定儲存驗證資訊的 SQL Server 認證物件。 如果您要備份至 Blob 記憶體服務,則必須指定此參數。 儲存的驗證資訊包括記憶體帳戶名稱和相關聯的存取金鑰值。 請勿為磁碟或磁帶指定此參數。
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-StatementTimeout
設定備份作業的逾時 (,以秒為單位) 。
如果值為 0 或未指定 StatementTimeout 參數,還原作業就不會逾時。
Type: | Int32 |
Position: | Named |
Default value: | 0 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TrustServerCertificate
指出通道是否會在略過憑證鏈結以驗證信任時加密。
在模組的 v22 中,預設為 $true
(,以便與 v21) 相容。 在模組 v23+ 中,預設值會是 『$false』,這可能會為現有的腳本建立重大變更。
這個參數是模組 v22 中的新功能。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UndoFileName
指定復原期間用來儲存復原之未認可交易的復原檔名。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UnloadTapeAfter
表示當作業完成時,磁帶裝置會重新叫用和卸除。 如果未設定,則不會嘗試倒轉並卸載磁帶媒體。 這不適用於磁碟或 URL 備份。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
顯示執行 Cmdlet 後會發生的情況。 Cmdlet 未執行。顯示 Cmdlet 執行時會發生什麼情況。 Cmdlet 並不會執行。
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
輸入
SMO.Server
Microsoft.SqlServer.Management.Smo.Database
Microsoft.SqlServer.Management.Smo.Server[]
指定 SMO。伺服器對象,參考備份作業發生所在 SQL Server 實例。
System.String[]
輸出
System.Object