当我们想恢复SQL server数据库时,只有MDF文件怎么办?在直接进行还原数据库时会提示出错,下面石家庄网站建设(www.viming.com)给大家讲解一下。
1、开启数据库
2、从企业管理器,建一个同名的数据库
3、停止sql server
4、用原mdf文件覆盖新建库的数据库文件
5、重启sql server(这时数据库应该是置疑)
6、修改服务器设置:允许对系统目录进行直接修改,以下所有SQL语句在查询分析器里master下运行
sp_configure 'allow updates',1 reconfigure with override
7、将数据库置为紧急状态:
update master.dbo.sysdatabases set status = 32768 where name = '数据库名'
8、删除新的ldf文件,重建日志:
dbcc rebuild_log('数据库名', 'E:\数据库名_log_new.ldf')--假设把新日志在E盘
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
执行完毕之后,如果还有错误,重复执行11,直到没有错误为止。(一般执行一次就可以了)
在只有MDF文件来恢复SQL server数据库时,本方法非常管用,我已经测试过了。