还原数据库时出现的问题 “设备激活错误”的解决办法

一台机器上备份了一个数据库,把备份后的文件打击拷到另一台机器上准备还原时却出了错,提示是:"设备激活错误,物理文件名:d:/program files/microsoft sqlserver/MSSQL/finance_data.mdf"可能有误.文件finance_DATA无法还原为d:/program files/microsoft sqlserver/MSSQL/finance_data.mdf.请使用WITH MOVE 选项来标识该文件的有效位置..."
即如下图所示的错误
解决方法:
目录不对
--解决第一个问题的详细步骤:

1.企业管理器中的方法:
--右键"数据库"
--所有任务
--还原数据库
--"还原为数据库库"中输入还原后的数据库名
--还原选择"从设备"--选择设备--添加--添加你的备份文件--确定,回到数据库还原的界面
--备份号--选择内容--选择你要恢复那次备份的内容
--选项--将"移至物理文件名"中的物理文件名修改为你的数据文件要存放的文件名
--如果要还原的数据库已经存在,选择"在现有数据库上强制还原"-
-确定


2.用SQL语句的方法(假设你的备份文件名为: c:/xx.bak

--列出备份文件中的逻辑文件名
restore filelistonly from disk='c:/xx.bak'


--用语句恢复,根据上面列出的逻辑文件名使用move选项
restore database 恢复后的数据库名
from disk='c:/xx.bak'
with move '逻辑数据文件名1' to 'c:/物理数据文件名1'
,move '逻辑数据文件名2' to 'c:/物理数据文件名2'
...
,move '逻辑数据文件名n' to 'c:/物理数据文件名n'

问题:



解答:

还原数据库时出现的问题 “设备激活错误”的解决办法_第1张图片

--我的经验:
--先在查询分析器中看一下原来备份前的数据库情况,通常只有不是自已备份的情况下才如此做,如果是自已做的当然知道是什么数据库了!
restore filelistonly from disk='J:/Java组件/源码示例/Eclipse写的商城购物系统/newshop/db/db_shop备份'
--注意:他提供的是备份文件而不是MDF文件,不能用附加的方法
--然后在企业管理器中建一个空的数据库,如本例是:db_bookmanage
--然后在企业管理器中的方法:
--右键"数据库"下的"db_bookmanage"
--选择“所有任务”
--选择“还原数据库”
--"还原为数据库库"中输入还原后的数据库名
--还原选择"从设备"--选择设备--添加--添加你的备份文件--确定,回到数据库还原的界面
--备份号--选择内容--选择你要恢复那次备份的内容
--选项--将"移至物理文件名"中的物理文件名修改为你的数据文件要存放的文件名
--如果要还原的数据库已经存在,选择"在现有数据库上强制还原"
--确定

还原数据库时出现的问题 “设备激活错误”的解决办法_第2张图片

你可能感兴趣的:(数据库)