SQL Server数据库置疑(或损坏)的原因及解决方法

文章目录
[隐藏]

SQL Server数据库置疑可能的原因

  1. SQL Server数据库文件或者日志文件达到了文件的最大限制
  2. 硬盘空间不足
  3. 数据库文件损坏
  4. 防病毒软件扫描数据库文件引起数据库置疑
  5. 由于其他线程/进程占用了数据库文件,导致SQL Server进程无法access此文件

注意:数据库置疑后是不能对此数据库进行任何内部操作的。

这里以科脉系统下的SQL Server数据库为例,其实SQL Server数据库的置疑或损坏的解决办法是通用的,只是数据库名称和存放路径要根据实际情况修改。

数据库“置疑”的解决步骤(按顺序操作)

1、手动备份数据库文件到其他目录

2、安装一个同名空库,然后将原库文件覆盖空库文件(数据库文件后缀为.MDF,日志文件为.LDF)(需要先停止SQL Server服务,覆盖后再启动)

3、打开“SQL查询分析器”

4、设置数据库为紧急模式(以下语句一条一条执行)

sp_configure 'allow' , 1
reconfigure with override
update sysdatabases set status = 32768 where name = 'kmjxc_pro'

5、重建日志文件(kmjxc_pro_log2.ldf为一新的不存在的文件,执行以下语句时将自动建立)

dbcc rebuild_log('kmjxc_pro' , 'D:\kmdata\kmjxc_pro_log2.ldf')

6、取消紧急模式(以下语句一条一条执行)

update sysdatabases set status = 0 where name ='kmjxc_pro'
restore database kmjxc_pro with recovery
sp_configure 'allow' , 0
reconfigure with override

7、重启SQL服务

8、完成

参考资料

  1. SQL数据库置疑:http://gnaw0725.blogbus.com/logs/43910235.html
  2. 详尽的解决办法:http://topic.csdn.net/u/20081116/10/646b5bf0-cbe6-48a5-87a1-99a750266258.html

分类:数据库

标签:, , ,

对本文发表评论





7 + 6 = ?

注意:
1、请勿单纯发表顶啊、打酱油之类无任何意义的评论,否则将被视为spam!谢谢合作!
2、但欢迎你留下对本文的看法或技术上的任何疑问,我会及时回复你。