• 首页
  • 狐文
  • 狐图
  • About
狐窝
OvO
  1. 首页
  2. 未分类
  3. 正文

LDF文件丢失, 如何仅用MDF文件恢复数据库呢?

2017年08月06日 81点热度 0人点赞 0条评论

2013-07-01 16:42 from---http://www.cnblogs.com/awpatp/archive/2013/07/01/3165134.html

笔者的一个大小为2 TB的SQL Server的database的LDF文件在玩存储盘映射的过程中莫名其妙的丢失了. 好在MDF文件还在. 笔者慌了, Bruce Ye告诉笔者, 不用着急, 光用MDF也可以把数据库弄回来的. 笔者就问Bruce, 假设我可以容忍LDF中信息的丢失的话, 那么该如何恢复这个数据库呢?

 

我们执行了下面的步骤:

1. 在SQL Server Management Studio中删除状态为Recovery Pending的(即丢失了LDF的)问题数据库.

2. 重命名老的MDF文件.

3. 重建一个新的数据库, 名字跟刚刚删除的数据库完全一样. 注意, 新的MDF的位置跟我们老的MDF的文件的位置相同. 这里的LDF文件的位置选在你想要存放的最终位置上(这个就是你所要的被恢复的LDF文件了).

4. 停掉SQL Server服务, 将新的MDF重命名掉, 老的MDF命名回原来的名字.

5. 启动SQL Server服务, 这时这个数据库的状态会变为Recovery Pending. 我们开始执行下面的脚本.

alter database contentdb1 set emergency
alter database contentdb1 set single_user with rollback immediate
alter database contentdb1 rebuild log on (name=ContentDB1_log, filename='E:\CDBLOG\contentdb1log.ldf')
ALTER DATABASE contentdb1 SET MULTI_USER with rollback immediate

5. 这时数据库的状态就应该恢复正常了.

 

问题解决.

 

笔者在运行上面的脚本的时候, 遇到了一个报错. 在运行了命令alter database contentdb1 set single_user with rollback immediate之后, 运行alter database contentdb1 rebuild log on 的时候说数据库在single user mode, 我的当前用户无法执行命令.

我使用了命令exec sp_who2, 发现我的contentdb1上有个suspend的session, 执行命令kill XY 杀掉这个死掉的session之后, 问题解决.

 

参考资料

=====================

SQL – Get Exclusive Lock – Fix for The database could not be exclusively locked to perform the operation error

http://robbamforth.wordpress.com/2009/11/13/sql-get-exclusive-lock-fix-for-the-database-could-not-be-exclusively-locked-to-perform-the-operation-error/

Rebuilding Transaction Log in SQL Server 2000, 2005, 2008

http://database-wiki.com/2011/03/06/rebuilding-transaction-log-in-sql-server-2000-2005-2008/

CHecking SQL Acitivity

http://networking.ringofsaturn.com/SQL/sql-activity.php

How to recover database from MDF in SQL Server 2005?

http://stackoverflow.com/questions/773059/how-to-recover-database-from-mdf-in-sql-server-2005

标签: 暂无
最后更新:2017年08月06日

OvO

狐狸

点赞
< 上一篇
下一篇 >
最新 热点 随机
最新 热点 随机
钛备份或小米系统备份功能备份出来的APK无法正常还原 BBR安装启用 安装docker mitmproxy 调试方法 Android SDK 版本选择 Perdition Mail代理服务器配置 HAProxy SSL代理 Openssl 中间人SSL代理 Stunnel SSL to SSL代理 NGINX反代IMAP配置 各种设备User Agent Torrent下载工具推荐 用 rar2john+hashcat 破解 RAR 文件密码 2020最好的Linux发行版 关闭新版chrome工具栏上拼图图标 Office 下载、安装、激活,有它就够了! Android 非官方的发行版 openwrt添加autoconf-archive
15个最受欢迎的Python开源框架 改造Nginx,让邮件系统也支持双因子验证 Python爬虫之PhantomJS用法总结 知乎神回复 Maven启用代理访问 一键批量禁用、清空系统日志事件 使用IntelliJ IDEA开发SpringMVC网站(一)开发环境 Windows下GitBook的安装详解 18 款名不见经传的下载工具 nginx配置:location配置方法及实例详解 Linux之SAMBA共享服务 ESXI无法添加裸磁盘 网页工程师一定要知道的 14 个超棒 HTML/CSS 框架 win7更新提示不支持的硬件 关闭新版chrome工具栏上拼图图标 BBR安装启用 FreeNAS禁用IPv6 和 jails 启用IPv6 Comparison of proxifiers | 代理工具对比
标签聚合
ssl 路由 linux chrome 网卡 e 镜像 chromium docker blog yum 安装 https git 密码 下载

COPYRIGHT © 2020 狐窝. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS