今天我把公司的数据库(sql2000备份的数据库)我拿到我的机器上(sql2005)去还原结果出现了一大堆的问题 !我看到最为详细的解决方案(http://hi.baidu.com/jordanwj/blog/item/4ba40f6480af50f7f6365455.html),可是还是解决不了我的问题 !纠结死了 弄了半天老是报错!
1、我先新建了一个与之相同的数据库的 再用用命令行还原的
user master
RESTORE DATABASE xxxx FROM DISK='D:\xxxx.bak'
结果:
消息 3154,级别 16,状态 4,第 1 行
备份集中的数据库备份与现有的 'Ixxxx' 数据库不同。
消息 3013,级别 16,状态 1,第 1 行
RESTORE DATABASE 正在异常终止。
而我不新建数据库就直接写语句 又出现了一大堆错误信息:
消息 5133,级别 16,状态 1,第 1 行
对文件 "D:\Project\ChinaMobile\BabyOnline\DataBase\BabyOnlineV5.mdf" 的目录查找失败,出现操作系统错误 3(系统找不到指定的路径。)。
消息 3156,级别 16,状态 3,第 1 行
文件 'BabyOnline' 无法还原为 'D:\Project\ChinaMobile\BabyOnline\DataBase\BabyOnlineV5.mdf'。请使用 WITH MOVE 选项来标识该文件的有效位置。
消息 5133,级别 16,状态 1,第 1 行
对文件 "D:\Project\ChinaMobile\BabyOnline\DataBase\BabyOnlineV5_1.ldf" 的目录查找失败,出现操作系统错误 3(系统找不到指定的路径。)。
消息 3156,级别 16,状态 3,第 1 行
文件 'BabyOnline_log' 无法还原为 'D:\Project\ChinaMobile\BabyOnline\DataBase\BabyOnlineV5_1.ldf'。请使用 WITH MOVE 选项来标识该文件的有效位置。
消息 3119,级别 16,状态 1,第 1 行
在计划 RESTORE 语句时发现了问题。以前的消息提供了详细信息。
消息 3013,级别 16,状态 1,第 1 行
RESTORE DATABASE 正在异常终止。
这些信息都把原来的数据库(sql2000)的存放的具体位置都显示出来了 !而我将要还原的数据库(.bak文件)只是在D盘的根目录下(D:/BabyOnlineV5_backup_201106160000.bak) 。为什么系统要去找它“祖宗的老家呢?”我有点不明白啊??????
2、现在我什么都不做了 就直接用图形化去还原数据库 结果显示这样的:
哎…… 我纠结死啊 实在没有办法了 我就去找数据库的“祖宗” 接下来 就就一步一步的去新建文件夹('D:\Project\ChinaMobile\BabyOnline\DataBase\‘)
新建好了后 把备份的数据库放在了 D:\Project\ChinaMobile\BabyOnline\DataBase的目录里,最后在master下执行了语句如图:
ok !成功的完成了在sql2000中备份的数据库 还原到sql2005中,希望对大家有所帮助!在此谢谢大家的阅读,该睡觉了 晚安!