菜鸟求救!如何在sql2000里恢复sql7.0的备份数据???

hn_xhj_xhj 2002-07-17 08:50:05
将sql7.0中的一个数据库'hrdata'备份(备份到设备),
然后将操作系统format,重装。
将sql2000装上。
使用数据库'hrdata'的建库hrdata.sql将数据库建立(在sql7.0上也是这样建立的数据库)。
使用sql2000提供的’所有任务‘->’还原数据库‘->’从设备’,选中以前备份的数据库的hrdata.bak文件,
点‘确定’后,提示‘数据库hrdata使用的媒体集有两个,但备份hrdata只提供了一个,
恢复中断‘,


各位老大,如何解决这个问题????200分赠送
...全文
70 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
hn_xhj_xhj 2002-07-19
  • 打赏
  • 举报
回复
1.根据微软的文档所说,backup出来的备份文件不一定是一定可靠的,所以在备份完成后,有必要进行恢复测试,只有能成功恢复的备份文件才是可靠的。这是数据库部门在做备份时容易忽视的一个问题。同时,这也必然带来额外的硬件开销,在操作时根据风险级别自已评估。

2.从上述角度,可以通过下面语句简单进行一下测试,

restore verifyonly from disk='备份文件名'

如果可以的话,一般没问题。



出错:
服务器: 消息 3132,级别 16,状态 1,行 1
数据库 '' 的媒体集有 2 个家族成员,但只提供了 1 个。必须提供所有的成员。
服务器: 消息 3013,级别 16,状态 1,行 1
VERIFY DATABASE 操作异常终止。
xhfjy 2002-07-18
  • 打赏
  • 举报
回复
1.根据微软的文档所说,backup出来的备份文件不一定是一定可靠的,所以在备份完成后,有必要进行恢复测试,只有能成功恢复的备份文件才是可靠的。这是数据库部门在做备份时容易忽视的一个问题。同时,这也必然带来额外的硬件开销,在操作时根据风险级别自已评估。

2.从上述角度,可以通过下面语句简单进行一下测试,

restore verifyonly from disk='备份文件名'

如果可以的话,一般没问题。

3.还有一种可能是,目的机器上的数据目录和源机器的数据目录不同,我估计你这种可能性大一些,你可以用下面语句测试:

restore filelistonly from disk='备份文件名'

检查一下源数据库中文件都放在什么路径,该路径在目的服务器上是否存在,restore时,普通情况下会将数据文件恢复到和备份前相同的盘符和路径下,如果不存在,你可以建一个,或者在restore时使用move参数将数据库文件指定生成到某个已存在的目录下面。


4.另外,如果恢复成功,在SQL2000下会提示你用updatestats语句更新一下恢复后的数据库的状态,照做就是了,毕竟sql2000和sql7在很多地方都有改变。

Good Luck!
ray77 2002-07-18
  • 打赏
  • 举报
回复
如果由原来7。0的.MDF和LOG 可以用附加库的方法
如果只有备份文件好像是不可以的
hn_xhj_xhj 2002-07-17
  • 打赏
  • 举报
回复
使用*.bak文件覆盖*.mdf文件??
guguda 2002-07-17
  • 打赏
  • 举报
回复
up
zqllyh 2002-07-17
  • 打赏
  • 举报
回复
把文件直接改名覆盖数据库文件试试(要保证SQL中设备大小、名称之类相同,用覆盖的办法可能行。)
hn_xhj_xhj 2002-07-17
  • 打赏
  • 举报
回复
1、我整个硬盘都FORMAT了
2、我备份到了harddisk设备,
3、媒体集出错。

leimin 2002-07-17
  • 打赏
  • 举报
回复
1.use master
select * from sysdevices
看看hrdata的设备是否生成。
2.add new device use the same name with the hrdata
--??(备份到设备)---是tape or harddisk
3.copy the hrdata.bak overwrite the old files.
4.use master
restore database hrdata from disk='c:\hrdata.bak' with recovery
5.if not,reinstall sql server7.0 then update to sql server 2000
little0 2002-07-17
  • 打赏
  • 举报
回复
如果你原来的数据文件没被format掉,你可以新建一个同名数据库,然后用原来的数据文件覆盖现有的数据文件即可。
hn_xhj_xhj 2002-07-17
  • 打赏
  • 举报
回复
如果已经有,先删除
执行下面的命令
use master
restore database hrdata from disk='c:\hrdata.bak' with recovery

出现下面问题(与企业管理其中相同):
Server: Msg 3132, Level 16, State 1, Line 1
The RAID set for database 'hrdata' is missing member number 1.
Server: Msg 3013, Level 16, State 1, Line 1
Backup or restore operation terminating abnormally.
hn_xhj_xhj 2002-07-17
  • 打赏
  • 举报
回复
如果已经有,先删除
执行下面的命令
use master
restore database hrdata from disk='c:\hrdata.bak' with recovery

出现下面问题(与企业管理其中相同):
Server: Msg 3132, Level 16, State 1, Line 1
The RAID set for database 'hrdata' is missing member number 1.
Server: Msg 3013, Level 16, State 1, Line 1
Backup or restore operation terminating abnormally.
hn_xhj_xhj 2002-07-17
  • 打赏
  • 举报
回复
"从设备"换成从"文件"试试
你试试能找到备份文件吗??不能!!!

删除数据库hrdata,重建一个空的数据库hrdata,再恢复.
不行,依旧异常。
OpenVMS 2002-07-17
  • 打赏
  • 举报
回复
如果已经有,先删除
执行下面的命令
use master
restore database hrdata from disk='c:\hrdata.bak' with recovery
OpenVMS 2002-07-17
  • 打赏
  • 举报
回复
执行下面的命令
use master
restore database hrdata from disk='c:\hrdata.bak' with recovery
OpenVMS 2002-07-17
  • 打赏
  • 举报
回复
执行下面的命令
use master
restore database hrdata from disk='c:\hrdata.bak' with recovery
CSDNM 2002-07-17
  • 打赏
  • 举报
回复
删除数据库hrdata,重建一个空的数据库hrdata,再恢复.
OpenVMS 2002-07-17
  • 打赏
  • 举报
回复
"从设备"换成从"文件"试试
zqllyh 2002-07-17
  • 打赏
  • 举报
回复
gz
hn_xhj_xhj 2002-07-17
  • 打赏
  • 举报
回复
在sql7.0备份到设备,设备为‘磁盘‘。
hn_xhj_xhj 2002-07-17
  • 打赏
  • 举报
回复
restore database dbname FROM disk='filepath\htdata.bak'
会引起媒体集出错,可我确确实实备份只使用了一个*.bak文件??
如何还原,
在此,感谢大家的回复!但到目前,问题还没有解决
加载更多回复(3)

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧