【数据库SQL】数据库修复,DBCC(常规正常修复)

注:请将 isszmv9替换成相应软件的数据库名。


此处以专卖9例说明:


1.停止SQL Server的服务,备份SQL Server安装目录下的\data子目录一个isszmv9_log.ldf(也有可能非此命名),


同时查看磁盘 
2.启动SQL Server服务(如已停止),创建一个新的数据库,命名为空间是否有足够的空间; 原来数据库的名字。


3.停止SQL Server


4.把老数据库的MDF文件(isszmv9_data.mdf)替换新数据库的相应的MDF文件,并把LDF文件(isszmv9_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 = 'isszmv9'


--Verify one row is updated before committing


commit tran


go


6.停止SQL然后重新启动SQL Server服务,然后运行如下命令


(更换日志文件路径地址):


use master


go


DBCC TRACEON(3604)


DBCC REBUILD_LOG


('isszmv9',


'd:\Program Files\Microsoft SQL Server\MSSQL\Data\isszmv9_log.ldf')


--在这里,请输入你的数据库的路径


Go


 


7.停止SQL然后重新启动SQL Server服务,然后运行:


use master


go


update sysdatabases set status = 8 where name = 'isszmv9'


go
sp_configure 'allow updates', 0


reconfigure with override


go








8.运行 use isszmv9 dbcc checkdb(isszmv9) 检查数据库的完整性


9.修复数库


--请在查询分析器中执行下列语句.执行前断开其它


所有数据库连接,最好是断开网线


--如果不是该数据库名,请将数据库


--isszmv9


--改为要修复的数据库


USE master


Go


--单用户模式


EXEC sp_dboption 'isszmv9', 'single user', 'TRUE'


go


--数据库检查


DBCC CHECKDB ('isszmv9')


Go


--如果返回结果出现了红色的提示文字,说明数据库中存在错误,需要修复


--数据库修复


DBCC CHECKDB ('isszmv9','repair_rebuild')


Go


--再次数据库检查,如果返回结果中没有了红色的提示文字,


说明修复成功;


DBCC CHECKDB ('isszmv9')


Go


--否则意味着还需要更高级别的修复;尝试将上面修复语句的
'repair_rebuild'换为'repair_allow_data_loss'再试,
DBCC CHECKDB ('isszmv9','repair_allow_data_loss')


Go


之后再次检查数据库。


--如果还有错误未修复,请把这些信息以文字的方式发给我们




--退出前请一定要执行以下语句返回到多用户模式


EXEC sp_dboption 'isszmv9', 'single user','FALSE'


go

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值