4
私はデータベース$CurrentDB
を持っており、$CurrentDB
のバックアップを$NewDB
に復元したいと考えています。 T-SQLコマンドは次のようになります。Powershellは新しいデータベースにSQL Serverデータベースを復元します
USE [master]
ALTER DATABASE [NewDB]
SET SINGLE_USER WITH ROLLBACK IMMEDIATE
RESTORE DATABASE [NewDB]
FROM DISK = N'D:\Backups\CurrentDB.bak'
WITH FILE = 1,
MOVE N'CurrentDB' TO N'D:\Databases\NewDB.mdf',
MOVE N'CurrentDB_log' TO N'D:\Logs\NewDB_log.ldf',
NOUNLOAD, REPLACE, STATS = 5
ALTER DATABASE [NewDB]
SET MULTI_USER
GO
私は、ユーザーRestore-SqlDatabase
しようとしていますが、私はきちんと-RelocateFile
$CurrentDB = "CurrentDB"
$NewDB = "NewDB"
$NewDBmdf = "NewDB.mdf"
$CurrentDBlog = "CurrentDB_log"
$NewDBldf = "NewDB_log.ldf"
$backupfile = $CurrentDB + "ToNewDB.bak"
$RelocateData = New-Object
Microsoft.SqlServer.Management.Smo.RelocateFile($CurrentDB, $NewDBmdf)
$RelocateLog = New-Object
Microsoft.SqlServer.Management.Smo.RelocateFile($CurrentDBlog, $NewDBldf)
Restore-SqlDatabase -ServerInstance $SQLServer -Database $NewDB -BackupFile
$backupfile -ReplaceDatabase -NoRecovery -RelocateFile @($RelocateData,
$RelocateLog)
私は何の例を見つけることができないようにする方法がわかりません私はしようとしています。私は同じ名前で異なるファイルを復元する例をたくさん見てきました。別の名前とファイル名が必要です。私は提案に開放されています。