因忽然断电,导致SQL Server 2000里的某个数据库不能使用, 求怎样恢复?已试过多种方法.

时间:2021-06-25 06:25:06
现在造成的问题已经比较严重了.
同学现在只把数据文件(.mdf)拷给了我(比较大,有8G多),没有日志文件.

采用"附加数据库"的方式,不能附加成功,报1813错误.

在网上找了一些贴子,大致方法是:新建一个同名的数据库,然后替换掉数据文件,删除日志文件,然后执行一些DBCC语句,可是不能成功.我把一些主要代码贴出来..
use master    
go    
sp_configure 'allow updates',1 reconfigure with override    
go    
update sysdatabases set status =32768 where name='SXBDFXNew'   
go    
sp_dboption 'SXBDFXNew', 'single user', 'true'   
go    
dbcc checkdb('SXBDFXNew')      
go    
update sysdatabases set status =28 where name='SXBDFXNew'   
go    
sp_configure 'allow updates', 0 reconfigure with override    
go     
sp_dboption 'SXBDFXNew', 'single user', 'false'   
go   

执行上面的代码,这一句会报错误...
dbcc checkdb('SXBDFXNew') 

9 个解决方案

#1


执行上面的代码,这一句会报错误... 
dbcc checkdb('SXBDFXNew') 
--------
报什么错?

#2


因忽然断电,导致SQL Server 2000里的某个数据库不能使用
--------
是出什么问题呢?..
什么问题都不想就直接找到这代码就执行??

#3


将你报的错也贴出来

#4


执行 dbcc checkdb('SXBDFXNew') 报的错误为:

服务器: 消息 8908,级别 16,状态 1,行 1
表错误: 数据库 ID 15,对象 ID 2,索引 ID 0。链的链接不匹配。(1:29338)->next = (1:529201),但 (1:529201)->prev = (1:56776)。
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。


因忽然断电,导致SQL Server 2000里的某个数据库不能使用 
具体怎么不能用,我没到朋友机房里去看,可以肯定的是,在企业管理器里打不开..

#5


可以看看这个贴子,与这个贴子的差不多.
http://www.cnblogs.com/ygchina/articles/860776.html

#6


有偿恢复,你做不做.

#7


Q : 当系统突然断电,重启后不能进入数据库 
主要解答者: happydreamer 提交人: lwd01 
感谢: dull_knife、zqllyh、happydreamer、xwmhn 
审核者: xwmhn 社区对应贴子: 查看 
     A :  

当系统突然断电,重启后不能进入数据库,数据库被所锁定  
 
1、用单用户模式启动试试.  
   如果不行的话就只能用既有的备份恢复  
 
2、是被挂起吧?  
sql服务能启动的吧,  
sp_configure  'allow  updates',  1  
RECONFIGURE  WITH  OVERRIDE  
 
sp_resetstatus  你的数据库名  
 
sp_configure  'allow  updates',  0  
RECONFIGURE  WITH  OVERRIDE  
3、  
控制面版--〉服务--〉MSSQLSERVER点右键--〉登录--〉本地登陆--〉确定  
试试
 

#8


谢谢各位了,
他们把数据库文件(SQL2000)在SQL2005里面附加进去了.

#9


你数据坏了? 磁盘问题! 你修复以下 磁盘属性底下! 看看 哈哈! 数据库修复之外的方法

#1


执行上面的代码,这一句会报错误... 
dbcc checkdb('SXBDFXNew') 
--------
报什么错?

#2


因忽然断电,导致SQL Server 2000里的某个数据库不能使用
--------
是出什么问题呢?..
什么问题都不想就直接找到这代码就执行??

#3


将你报的错也贴出来

#4


执行 dbcc checkdb('SXBDFXNew') 报的错误为:

服务器: 消息 8908,级别 16,状态 1,行 1
表错误: 数据库 ID 15,对象 ID 2,索引 ID 0。链的链接不匹配。(1:29338)->next = (1:529201),但 (1:529201)->prev = (1:56776)。
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。


因忽然断电,导致SQL Server 2000里的某个数据库不能使用 
具体怎么不能用,我没到朋友机房里去看,可以肯定的是,在企业管理器里打不开..

#5


可以看看这个贴子,与这个贴子的差不多.
http://www.cnblogs.com/ygchina/articles/860776.html

#6


有偿恢复,你做不做.

#7


Q : 当系统突然断电,重启后不能进入数据库 
主要解答者: happydreamer 提交人: lwd01 
感谢: dull_knife、zqllyh、happydreamer、xwmhn 
审核者: xwmhn 社区对应贴子: 查看 
     A :  

当系统突然断电,重启后不能进入数据库,数据库被所锁定  
 
1、用单用户模式启动试试.  
   如果不行的话就只能用既有的备份恢复  
 
2、是被挂起吧?  
sql服务能启动的吧,  
sp_configure  'allow  updates',  1  
RECONFIGURE  WITH  OVERRIDE  
 
sp_resetstatus  你的数据库名  
 
sp_configure  'allow  updates',  0  
RECONFIGURE  WITH  OVERRIDE  
3、  
控制面版--〉服务--〉MSSQLSERVER点右键--〉登录--〉本地登陆--〉确定  
试试
 

#8


谢谢各位了,
他们把数据库文件(SQL2000)在SQL2005里面附加进去了.

#9


你数据坏了? 磁盘问题! 你修复以下 磁盘属性底下! 看看 哈哈! 数据库修复之外的方法