我正在使用一个相当简单的 PowerShell 脚本来自动化恢复数据库的过程:
#Script to restore database.
$serverInstance = $args[0]
$dbName = $args[1]
$file = $args[2]
$dataDestination = $args[3]
$logDestination = $args[4]
Import-Module sqlps
$relocateData = New-Object Microsoft.SqlServer.Management.Smo.RelocateFile(###LOGICALFILENAME###, $dataDestination)
$relocateLog = New-Object Microsoft.SqlServer.Management.Smo.RelocateFile(###LOGICALFILENAME###, $logDestination)
Restore-SqlDatabase -ServerInstance $serverInstance -Database $dbName -BackupFile $file -RelocateFile @($relocateData,$relocateLog)
我正在寻找一种方法来动态获取数据库备份($file)中包含的文件的逻辑文件名并将它们存储到一个变量中,以便可以相应地重命名。
有人有想法么?我已经用头撞这个太久了!:)
谢谢你的帮助!