只有mdf文件的数据恢复方法(05、08、2k)

原创
2016-06-07 15:13:32 839浏览

SQL SERVER 2005(2008) 只有mdf 文件 的 数据 恢复 方法 1、新建SharePoint_Config 数据 库 2、停止SQL SERVER 2005,将原来的SharePoint_Config .mdf 数据 库 文件 覆盖刚新建的SharePoint_Config .mdf 数据 库 文件 ,重新启动 数据 库, 此时 数据 库中的

SQL SERVER 2005(2008)

只有mdf文件数据恢复方法

1、新建SharePoint_Config 数据

2、停止SQL SERVER 2005,将原来的SharePoint_Config .mdf数据文件覆盖刚新建的SharePoint_Config .mdf数据文件,重新启动数据库,
此时数据库中的表不能正常读取。

3、将数据库设置为紧急状态:

alter database SharePoint_Config set emergency
此时数据处于紧急状态,库中的表可以读取

4、执行如下代码:

use master

declare @databasename varchar(255)

set @databasename='SharePoint_Config' --设置变量为数据

exec sp_dboption @databasename, N'single', N'true' --将数据库置为单用户状态

dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS)

dbcc checkdb(@databasename,REPAIR_REBUILD)

exec sp_dboption @databasename, N'single', N'false'--将目标数据库置为多用户状态

数据库正常。

------------------------------------------------------------------------------------

SqlServer2000

1、开启数据
2、从企业管理器,建一个同名的数据
3、停止sql server
4、用原mdf文件覆盖新建库的数据文件
5、重启sql server(这时数据库应该是置疑)
6、修改服务器设置:允许对系统目录进行直接修改
sp_configure 'allow updates',1 reconfigure with override
7、将数据库置为紧急状态:
update master.dbo.sysdatabases set status = 32768 where name = '数据库名'
8、删除新的ldf文件,重建日志:
dbcc rebuild_log('数据库名', 'f:\数据库名_log_new.ldf')--假设把新日志在f盘
9、update master.dbo.sysdatabases set status = 16 where name = '数据库名'
10、修改服务器设置:取消 允许对系统目录进行直接修改
sp_configure 'allow updates', 0 reconfigure with override
11、再使用检查工具修复错误
use [数据库名]
alter database [数据库名] set single_user with rollback immediate
dbcc checkdb ('数据库名',REPAIR_ALLOW_DATA_LOSS)
alter database [数据库名] set multi_user
执行完毕之后,如果还有错误,重复执行,直到没有错误为止。

飞扬过海” 博客,转载请与作者联系!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。