当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 恢复.mdf 数据库步骤

MSSQL
修改自定义数据类型精度
SQL Server 2000之日志传送功能(1)
SQL Server 2000之日志传送功能(2)
建立安全的MSSQL SERVER启动账号
用T-SQL导入文件数据到SQL Server
SQL Server CHARINDEX和PATINDEX详解
如何同时对多个表或列操作
让数据库产生一张详细的日历表
用DTS导入多个文件数据到SQL Server中
SQL SERVER2000备份和恢复存储过程
将Excel中的数据导入到SQL Server 2000数据库中
SQL Server数据库文件恢复技术
SQL邮件自动应答
SQL Sever 2000的系统数据库和索引
SQLServer2000中UNION与UNION ALL的区别
用SQL语句来建立跟踪的问题
关于SQL Server 2000的安全配置
备份服务器端SQL SERVER数据库至本地目录
Sqlserver中的一些技巧
在SQL Server存储过程中执行DTS包

MSSQL 中的 恢复.mdf 数据库步骤


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

完成后一般就可以访问数据库中的数据了,这时,数据库本身一般还要问题,解决办法是,利用数据库的脚本创建一个新的数据库,并将数据导进去就行了. 方法一(只有mdf没有日志文件的可以恢复) 证明有效
1.新建同名数据库。
2.把该数据库设置为脱机。
3.删除其日志文件(.LDF),不删除后边的过程执行通不过。
4.在在查询分析器中以超级用户登入,执行以下存储过程,必须以超级用户登入,这是系统级存存处过程。
EXEC sp_detach_db @dbname = 'xxx' //@dbnam 为要还原的数据库
EXEC sp_attach_single_file_db @dbname = 'xxx', @physname = 'yyyy' //@physname 为.mdf文件路径
5.把该数据库设置为联机。
6.刷新数据库,表出来了,数据完好
方法二(无日志文件或日志文件损坏)
  1.新建一个同名的数据库
  2.再停掉sql server(注意不要分离数据库)
  3.用原数据库的数据文件覆盖掉这个新建的数据库
  4.再重启sql server
5.此时打开企业管理器时会出现置疑,先不管,执行下面的语句(注意修改其中的数据库名)
复制代码 代码如下:

use master
go
SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
go
UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='置疑的数据库名''
go
sp_dboption '置疑的数据库名'', 'single user', 'true'
go
DBCC CHECKDB('置疑的数据库名'')
go
update sysdatabases set status =28 where name='置疑的数据库名''
go
sp_configure 'allow updates', 0 reconfigure with override
go
sp_dboption '置疑的数据库名'', 'single user', 'false'
go

6.完成后一般就可以访问数据库中的数据了,这时,数据库本身一般还要问题,解决办法是,利用
数据库的脚本创建一个新的数据库,并将数据导进去就行了.