仅剩数据库mdf文件,恢复SqlServer2008正常数据库,操作如下:

情况一:

1、你已经将数据库分离出来了,但是日志文件太大,大到你没有多余的空间干别的;现在你将日志文件直接删除了,

咱开始新建一个同名数据库,修改数据库为紧急模式;把SQL server服务停掉;用原来的数据库mdf文件把这个同名的mdf文件覆盖掉,启动SQL server服务,执行代码块:单用户模式---->分析数据库--->撤销单用户----->重启SQL server服务------>完成

2、你直接将数据库服务停止后,将日志文件删除了(下次在更新)

alter database[数据库名称]set emergency------修改未紧急模式

 go

alter database[数据库名称]  set single_user with rollback immediate--------改为单用户模式

go

use master

go

alter database[数据库名称]  Rebuild Log on

(name=数据库名称_log,filename='E:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\数据库名称_log.LDF')-----------------重新生成LDF的日志文件

go

select * from sys.databases

go

dbcc checkdb('数据库名称 ', repair_allow_data_loss)------分析数据库

go

sp_dboption '数据库名称','single user','false'------撤销单用户模式

 

进行直接删除ldf操作迫不得已,当时磁盘空间只剩下6M不足以打开数据库相关文件, 数据库名称_log.LDF文件占据185G大小,才有此番操作

 

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐