今天高手都没来吗?看来我完了,WWWWW................

解决方案 »

  1.   

    用这个试一试
    EXEC sp_resetstatus 'mydatabase'
    他能恢复suspect的数据库,可能有用
      

  2.   

    不知道sqlserver65有没有这个存储过程
    我没有用过
      

  3.   

    我没用过6.5,不知道这样可不可以?
    你找到现在这个数据库的实体(扩展名为mdf和ldf), 到另一台电脑上装个SQL 6.5, 建一个新的数据库,用sp_acctach_db命令,将该实体重新连接到sql server 上。我不知6.5 中有没有这个命令,若SQL 6.5中有其他能直接将物理文件连接到服务器的命令也可以。
    若在另一台电脑上能恢复,就在上面做一个备份,然后将你的服务器重装,把这个备份COPY过来恢复就可以了。
      

  4.   

    没错,重新在另外的机器上建立数据库,然后将dat文件拷贝过来,用DISK REINIT命令试试!DISK REINIT
    NAME = 'logical_name',
    PHYSNAME = 'physical_name',
    VDEVNO = virtual_device_number,
    SIZE = number_of_2K_blocks
    Once all devices have been created, run DISK REFIT.DISK REFIT
      

  5.   

    to leeyoong:
       前几天我专程出差向“专家”请教,得到的答案是没办法。
       我没有死心,回来时腾出一台机器按你所说恢复,命令执行不通过。不知是否我做的步骤有错,请详细告诉我你的方法。
       已经拖了好几天了,今天如不行看来我只有重输入数据了。唉!也麻烦各位帮忙出出主意。
      

  6.   

    看了你的出错信息,好像是日志文件出了问题.我想leeyoong(莫西)的说法还是有道理的.不过当DISK REINIT
    NAME = 'testdb_data',
    PHYSNAME = 'c:\testdb_data.dat', 
    VDEVNO = 9,
    SIZE = 10240
    完了以后(恢复了主要数据),log数据就随便建一个,把disk reinit 改成disk init就可以
    DISK INIT name = 'testdb_log', 
       physname = 'c:\testdb_log.dat', 
       vdevno = 8, 
       size = 10240
    最后用create database命令
    CREATE DATABASE testdb on testdb_data = 10, testdb_log = 10
    EXEC sp_logdevice testdb, testdb_log 
    试试吧!不然我也没有办法啦!
      

  7.   

    这个问题比较难解决,你有没有到SQL7上面去试?
      

  8.   

    to haihong:
       disk reinit这个命令我怎么老是执行不成功,有没有什么限制。
      

  9.   

    我觉得现在只好放数据库的二个文件放到sql7上去恢复看行不行。不行就用sql2000!如果成功数据恢复就不是问题了。
      

  10.   

    to snowglave(独孤九剑):因为我手头没有6.5.请详细贴出操作方法和错误信息.
      

  11.   

    谢谢haihong,拜各位所托,经过不懈努力数据库终于恢复成功。现在开始加分了