powershell 如何获得备份的数据库名称?

szqfcxe2  于 2023-01-26  发布在  Shell
关注(0)|答案(1)|浏览(102)

我尝试使用以下代码备份多个SQL Server数据库:

$date = Get-Date -format "yyyyMMdd_hhmmssfff"
Get-SqlDatabase -ServerInstance localhost | Out-GridView -PassThru | Backup-SqlDatabase -BackupFile C:\Backup\MyBackup_$date.bak

我可以在备份文件($date)中合并备份时间,但不能组合数据库的名称,因此-我只能得到一个备份文件,因为每个文件都覆盖前一个文件(此代码使我能够从弹出列表中选择多个数据库)。如何获得数据库名称以便将其组合到巴克文件中?

tnkciper

tnkciper1#

$MyServer = "localhost" 
$DBs = Get-SqlDatabase -ServerInstance $MyServer | Out-GridView -OutputMode Multiple
foreach ($DB in $DBs) {
$dbName = $DB.Name
Write-Host $dbName
$date = Get-Date -format "yyyyMMdd_hhmmss"
Backup-SqlDatabase -ServerInstance $MyServer -Database $dbName -BackupFile C:\Backup\$MyServer-$dbName-$date.bak
 }

相关问题