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