sql-server - 将数据库恢复到新位置
问题描述
虽然我经常使用 SQL Server,但我不会做那么多数据库备份。我backup.bak
成功地将文件恢复到原始数据库说Database1
。
但是,我也想Database2
从同一个备份文件创建一个新数据库。通过'Restore Database' - General - Source - 我选择了Device中的备份文件,然后将目标组中的数据库名称更改为Database2
.
但是,它错误地给出了有关正在使用的日志文件的消息。
注意:当我在家里这样做时,它会自动创建新的命名日志文件,但在工作中它不会 - 只是错误。
是否只是进入“文件”页面并手动重命名“行数据”和“日志”文件以匹配我的新数据库的名称Database2
?
我必须在选项页面中做任何事情吗?
Database1
在创建数据库的新副本时,我不想对原始数据库进行任何更改。
谢谢
解决方案
RESTORE DATABASE [Database2] FROM DISK = 'c:\mssql\backup\Database1_Full.bak'
WITH Replace,
MOVE 'Database1' TO 'c:\mssql\data\Database2.mdf',
MOVE 'Database1_Log' TO 'c:\mssql\Database2_Log.ldf';
推荐阅读
- python - 命令对象没有属性missingpermissions
- python - 如何从不同长度的字符串python列表中找到字符串的最接近匹配?
- java - 为什么我可以使用有界通配符作为参数而不是方法中的返回类型?
- python - Cython 编译错误“无法将类型 'double' 分配给 'int'”在 Windows 中使用 mingw64 但在 linux 中可以
- apache - 如何进行神级 url 重写?
- html - 如何使我的内容水平显示?
- python - 可以结合 python 方法 isupper 和 isumeric/isdigits 吗?我的列表中没有看到什么?
- python - Django formview form_valid,表单没有属性`instance`
- r - 将循环应用于 r 中的列表列表
- reactjs - TypeError:无法读取 ReactJS 表单字段中未定义的属性“名称”