幸运星空

Lucker的程序人生

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

最近,有客户反映数据库应用程序不能正常运行,对个别表用sql语句在查询分析器里执行最简单的检索查询也不能成功.

经过分析,认为数据库里某些结构错误,于是在查询分析器里用DBCC CHECKDB('db_name')命令检查数据,果然发现数十处错误.于是开始修改发现的错误,我的方法如下:

1,启用单用户模式:

断开数据库与所有用户的连接,然后执行:
sp_dboption 'db_name', 'single user', 'true'

2,修复数据库错误:

DBCC CHECKDB('db_name',REPAIR_ALLOW_DATA_LOSS)
执行成功的话,会显示修复了多少过错误.当然,也可以使用以下命令:
DBCC CHECKDB('db_name',REPAIR_FAST)
DBCC CHECKDB('db_name',REPAIR_REB)

3,禁用单用户模式,回来原来的设置:

sp_dboption 'db_name', 'single user', 'false'

到此,数据库存在的错误被顺利修复,程序运行恢复正常.本文主要使用的是DBCC CHECKDB命令,这是一个非常强大的数据库维护命令,其实,DBCC还具有众多的其它命令形式,感兴趣的朋友可以查询T-SQL帮助文档,以获利详尽的说明和示例.

posted on 2008-07-22 21:10  Lucker  阅读(295)  评论(0编辑  收藏  举报