13510228421
技术资料
用DBCC命令来修复数据保存失败的方法
2010-10-27 12:46:19  
1.停止SQL Server的服务,备份SQL Server安装目录下的data子目录下 xxxx_log.ldf(也有可能非此命名),同时查看磁盘
2.启动SQL Server服务(如已停止),创建一个新的数据库,命名为空间是否有足够的空间; 原来数据库的名字。
3.停止SQL Server
4.把老数据库的MDF文件(xxxxx_data.mdf)替换新数据库的相应的MDF文件,并把LDF文件(xxxx_log.ldg)删除。
5.重新启动SQL Server服务,然后运行如下命令:
Use Master
go
sp_configure ‘allow updates’, 1
reconfigure with override
go
begin tran
update sysdatabases set status = 32768 where name = ‘hbposv6_branch’
–Verify one row is updated before committing
commit tran
go
6.停止SQL然后重新启动SQL Server服务,然后运行如下命令
(更换日志文件路径地址):
use master
go
DBCC TRACEON(3604)
DBCC REBUILD_LOG (‘xxxx_branch’,’c:Program FilesMicrosoft SQL ServerMSSQLDataxxxx_log.ldf’) –在这里,请输入你的数据库的路径
Go
7.停止SQL然后重新启动SQL Server服务,然后运行:
use master
go
update sysdatabases set status = 8 where name = ‘xxxx_branch’
go
sp_configure ‘allow updates’, 0
reconfigure with override
go
8.运行dbcc checkdb(db_name) 检查数据库的完整性
9.修复数库
–请在查询分析器中执行下列语句.执行前断开其它所有数据库连接,最好是断开网线
–如果不是该数据库名,请将数据库–xxxx_branch
–改为要修复的数据库
USE master
Go
–单用户模式
EXEC sp_dboption ‘hbposv7′, ’single user’, ‘TRUE’
go
–数据库检查
DBCC CHECKDB (‘hbposv7′)
Go
–如果返回结果出现了红色的提示文字,说明数据库中存在错误,需要修复
–数据库修复
DBCC CHECKDB (‘hbposv7′,’repair_rebuild’)
Go
–再次数据库检查,如果返回结果中没有了红色的提示文字,说明修复成功;
DBCC CHECKDB (‘hbposv7′)
Go
–如还有红色报错,意味着还需要更高级别的修复;尝试将上面修复语句的’repair_rebuild’换为’repair_allow_data_loss’再试,
–之后再次检查数据库。
DBCC CHECKDB (‘hbposv7′,’repair_allow_data_loss’) ——重复执行此语句5次以上
Go
–如果还有错误未修复,请把这些信息以文字的方式发给我们
–退出前请一定要执行以下语句返回到多用户模式
EXEC sp_dboption ‘hbposv7′, ’single user’,’FALSE’
go
注:都要把 dbname 替换成真实的数据库名字。
实际上,一般情况只需要走第8,9步就可以了。
[Print]  [Close]  

7x24小时服务  QQ 1186505712 Email 1186505712@qq.com  TEL  13510228421   陈工   
         本站所有资源版权归深圳市极佳电脑技术服务有限公司,禁止克隆本站,抄袭本站文章等侵权行为,否则我们必将追究其法律责任! 

地址:深圳市龙华区中海汇德理花园2栋1单元1903
copyright 2008-2022 极佳数据 ( SQL110.com ) All rights reserved 粤ICP备17000871号

在线解答
QQ762862548
在线解答
QQ1186505712
在线解答
QQ254897536
在线解答
在线解答
在线解答