且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何在 SQL Server 中还原到不同的数据库?

更新时间:2023-02-02 18:46:52

您可以创建一个新的数据库,然后使用还原向导";启用覆盖选项或:

You can create a new db then use the "Restore Wizard" enabling the Overwrite option or:

查看备份文件的内容:

RESTORE FILELISTONLY FROM DISK='c:your.bak'

注意 .mdf & 的逻辑名称.ldf 从结果,然后:

note the logical names of the .mdf & .ldf from the results, then:

RESTORE DATABASE MyTempCopy FROM DISK='c:your.bak'
WITH 
   MOVE 'LogicalNameForTheMDF' TO 'c:MyTempCopy.mdf',
   MOVE 'LogicalNameForTheLDF' TO 'c:MyTempCopy_log.ldf'

这将使用 your.bak 的内容创建数据库 MyTempCopy.

This will create the database MyTempCopy with the contents of your.bak.

(不要创建 MyTempCopy,它是在恢复过程中创建的)

(Don't create the MyTempCopy, it's created during the restore)

示例(将名为creditline"的数据库备份恢复到MyTempCopy"):

RESTORE FILELISTONLY FROM DISK='e:mssqlackupcreditline.bak'

>LogicalName
>--------------
>CreditLine
>CreditLine_log

RESTORE DATABASE MyTempCopy FROM DISK='e:mssqlackupcreditline.bak'
WITH 
   MOVE 'CreditLine' TO 'e:mssqlMyTempCopy.mdf',
   MOVE 'CreditLine_log' TO 'e:mssqlMyTempCopy_log.ldf'

>RESTORE DATABASE successfully processed 186 pages in 0.010 seconds (144.970 MB/sec).