服务器上有个完整备份文件,abc.bak,下载到本地进行还原,新建了个同名的数据库,然后
右键——》所有任务-》还原,大概相当于以下 sql 语句restore database abc
from disk = 'c:\abc.bak'
with replace, norecover大约1分钟后,提示还原成功,但是问题是这时候数据库并不能使用,在 2005 管理器中
显示是(正在还原……),等了10几分钟还没动静,重起机器后仍然没变化,还原的数据库不能使用我尝试停止 mssqlserver 服务,然后复制了数据库文件,用管理器删除 abc 数据后,附加复制的文件
也失败了,提示"无法附加正在还原的数据库"!请高人帮忙

解决方案 »

  1.   

    用manger studio的话, 是选项设置错了, 用语句的话, 显然是选项设置错了norecovery
    NORECOVERY 指定不发生回滚。从而使前滚按顺序在下一条语句中继续进行。 
    在这种情况下,还原顺序可还原其他备份,并执行前滚。
    也就意味着数据库在还原中
      

  2.   

    应该指定 recovery 选项才对
    即在 manger studion 中还原时, 在选项设置中, 恢复状态选择第1项
      

  3.   

    -- 或者执行下面的语句把还原状态关闭restore database abc with recovery
      

  4.   

    restore database abc with recovery这句非常管用,谢谢了!