当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 修复MSSQLSERVER数据库置疑的步骤

MSSQL
优化SQL Server索引的小技巧
SQL Server的空值处理策略
Windows上的MySQL UDF开发
MS SQLSERVER中如何快速获取表的记录总数
MS SQLSERVER 中如何得到表的创建语句
使用索引调节向导调整应用程序的性能
使用查询分析器调整SQL服务器脚本
SQL Server到Oracle连接服务器的实现
数据库查询结果的动态排序(6)
数据库查询结果的动态排序(7)
保持Oracle数据库优良性能的若干诀窍
数据库管理员制胜之宝
在Linux下访问MS SQL Server数据库
关于如何在查询结果中添加自动编号
如何提取除最新十条记录之外的所有记录?
一个有关DISTINCT的问题解答
关于MSSQL Server中DATETIME类型数据的处理
TOP N 和SET ROWCOUNT N 哪个更快?
金额阿拉伯数字转换为中文的存储过程
谈谈数据从sql server数据库导入mysql数据库的体验

修复MSSQLSERVER数据库置疑的步骤


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 113 ::
收藏到网摘: n/a

1.找到备份出来的 mdf。

2.在企业管理器里新建一个同样名字的数据库。
注意:我们软件创建的数据库名称为:abc.mdf,在企业管理器里创建的名字会默认为:abc_data.mdf,在企业管理器里创建时一定要把 _data去掉,不然不会成功,要报错。

3.停掉sql服务器,然后把新建的 mdf和log 文件删除掉,用原来文件替换新建的数
据库文件,log文件不要。

4.启动数据库,并在企业管理器的数据库服务器(即企业管理器里面SQL服务器图表)上点右键找到属性,把其中服务器设置中允许对系统目录直接进行修改选中。

5.把数据库改成紧急模式,查询分析器中执行:

  sp_configure 'allow', 1
  reconfigure with override
  update sysdatabases set status = 32768 where name = '数据库名'


6.重建log文件:

DBCC REBUILD_LOG ('数据库名', 'E:\f6n.net\database\f6n.net_Log.LDF' )


其中 E:\f6n.net\database\f6n.net_Log.LDF 为日志文件路径(即是SQL安装目录下data下面将‘f6n.net’改为我的数据库名,即自动生成自己的LDF文件)。

7.恢复数据库紧急模式

update sysdatabases set status = 0 where name = '数据库名'


8.把服务器设置中允许对系统目录直接进行修改取消。至此已完成。

9.然后用 DBCC CHECKDB ('数据库名') 看看有没有错误