SQL Server 2005 如何恢复mdf文件的数据库
展开全部
在sql
server
2005
数据库中,一次误操作,分离数据库后,直接将日志文件删除掉了,后进行附加出错,无法附加上去,经过如下解决方案,数据库附加成功,操作如下:
第一步:先建立一个同名数据库,停止sql
server2005,将原来的.mdf数据库文件覆盖刚新建的.mdf数据库文件,重新启动数据库。
第三步:在查询分析器中运行如下代码:
alter
database
你的.mdf文件名
set
emergency
'--将数据库设置为紧急状态
use
master
declare
@databasename
varchar(255)
set
@databasename='你的.mdf文件名'
'--你的.mdf文件文件名
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'--将目标数据库置为多用户状态
以上代码请同时运行,可能会出现“数据库其他多个文件与数据库主文件不匹配....”错误,请多次重试执行以上代码
。
server
2005
数据库中,一次误操作,分离数据库后,直接将日志文件删除掉了,后进行附加出错,无法附加上去,经过如下解决方案,数据库附加成功,操作如下:
第一步:先建立一个同名数据库,停止sql
server2005,将原来的.mdf数据库文件覆盖刚新建的.mdf数据库文件,重新启动数据库。
第三步:在查询分析器中运行如下代码:
alter
database
你的.mdf文件名
set
emergency
'--将数据库设置为紧急状态
use
master
declare
@databasename
varchar(255)
set
@databasename='你的.mdf文件名'
'--你的.mdf文件文件名
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'--将目标数据库置为多用户状态
以上代码请同时运行,可能会出现“数据库其他多个文件与数据库主文件不匹配....”错误,请多次重试执行以上代码
。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询