mssqlserver恢复ldf文件数据的方法
我们重要的数据是存放在MDF文件中的,如果LDF文件丢失,MDF文件没有丢失,那么数据也可以还原。如果LDF文件没有丢失,MDF文件丢失,且LDF文件是完整的,也是可以提供一定手段还原数据。
现象描述
我们现在要面对的问题是,针对wtlog_2008_m12这个数据库,只有MDF文件而LDF文件丢失了,SQL Server Management Studio中也没有这个数据库,附加上也会提示错误。
解决方法
(1)在SQL Server Management Studio删除状态为Recovery Pending的(即丢失了LDF的)问题数据库(如果有的话,应该是在数据库管理中没有的)
(2)重命名老的MDF文件. 比如改为wtlog_2008_m12_bak.mdf
(3) 重建一个新的数据库, 名字跟丢失的数据库完全一样,比如为wtlog_2008_m12,LDF文件的名字如果为wtlog_2008_m12的话,数据库提示报错,说逻辑名字已存在,但文件怎么也找不到,此处的LDF的文件命名为wtlog_2008_m12_log。 注意, 新的MDF的位置跟我们老的MDF的文件的位置相同. 这里的LDF文件的位置选在你想要存放的最终位置上(这个就是你所要的被恢复的LDF文件了).
(4)关闭SQL Server服务,将新的MDF(wtlog_2008_m12.mdf)重命名掉(比如改为wtlog_2008_m12___.mdf), 老的MDF(wtlog_2008_m12_bak.mdf)命名回原来的名字(wtlog_2008_m12.mdf).
(5)开启SQL Server服务,连接数据库,执行下面语句,如果报错的话,请查看是否连接上数据库,或者有其他进程连着数据库。
代码如下:
alter database wtlog_2008_m12 set emergency
alter database wtlog_2008_m12 set single_user with rollback immediate
alter database wtlog_2008_m12 rebuild log on (name=wtlog_2008_m12, filename='D:/watcher/database/wtlog_2008_m12.ldf')
alter database wtlog_2008_m12 SET MULTI_USER with rollback immediate
(6)此时,mdf和ldf的名字都为wtlog_2008_m12,删除多余的mdf文件即可。
相关推荐
-
一个查看MSSQLServer数据库空间使用情况的存储过程 SpaceUsed
运行下面存储过程 然后直接使用 SpaceUsed 就可以查看了. 存储过程代码 程序代码 复制代码 代码如下: Create procedure SpaceUsed as begin declare @id int -- The object id of @objname. declare @type character(2) -- The object type. declare @pages int
-
图文教程mssqlserver数据库导出到另外一个数据库的方法
下文通过图文并茂的方式给大家介绍mssqlserver数据库导出到另外一个数据库的方法,具体详情请看下文. 1.准备源数据库,找到想要导出的数据库,右键选择"任务"再选择"导出数据" 2.设置源数据库信息 3.设置目标数据库,导出到的数据库信息 4.设置要复制的数据 这里有两大类,一是直接复制某些表,二是根据sql查询出的指定数据 复制某些表的话选择第一项,之后选择要复制的表,选择之后点击"完成"按钮即可开始复制数据从源数据库到目标数据库 选择
-
MSSQLSERVER跨服务器连接(远程登录)的示例代码
MSSQLSERVER跨服务器链接服务器创建方法如下 复制代码 代码如下: --声明变量 Declare @svrname varchar(255), @dbname varchar(255), @sapassword varchar(255) --请在执行前,根据实际情况修改下列变量 select @svrname = '目标服务器名', @dbname = '目标数据库', @sapassword = 目标数据库密码 if exists ( select
-
命令行启动mssqlserver服务的方法示例
最近mssql服务老是开机启动不了,干脆也就不让他启动了,开完机了手动启动吧,由于每次都要用管理工具启动太麻烦,所以还是命令行方便些. 记录如下: 使用"SQLServer命令行"的方式来启动和关闭IIS.SQLServer. 一个批处理文件start.bat,是启动: 复制代码 代码如下: net start mssqlserver net start w3svc 一个是停止stop.bat: 复制代码 代码如下: net stop mssqlserver net stop iisa
-
mssqlserver恢复ldf文件数据的方法
我们重要的数据是存放在MDF文件中的,如果LDF文件丢失,MDF文件没有丢失,那么数据也可以还原.如果LDF文件没有丢失,MDF文件丢失,且LDF文件是完整的,也是可以提供一定手段还原数据.现象描述我们现在要面对的问题是,针对wtlog_2008_m12这个数据库,只有MDF文件而LDF文件丢失了,SQL Server Management Studio中也没有这个数据库,附加上也会提示错误.解决方法(1)在SQL Server Management Studio删除状态为Recovery Pe
-
ajax读取properties资源文件数据的方法
本文实例讲述了ajax读取properties资源文件数据的方法.分享给大家供大家参考.具体实现方法如下: properties资源文件的内容如下: hello=englishww name=english zk emailEmpty=Field cannot be empty! emailInvalid=Invalid email address! js调用ajax处理代码: $.ajax({ type:'POST', dataType:'json', url:'/jeecms/jeecms/
-
C#使用FileStream循环读取大文件数据的方法示例
本文实例讲述了C#使用FileStream循环读取大文件数据的方法.分享给大家供大家参考,具体如下: 今天学习了FileStream的用法,用来读取文件流,教程上都是读取小文件,一次性读取,但是如果遇到大文件,那么我们就需要循环读取文件. 直接上代码. 引用命名空间 using System.IO; 下面就是循环读取大文件的代码 class Program { static void Main(string[] args) { //循环读取大文本文件 FileStream fsRead; //获
-
JavaScript实现读取与输出XML文件数据的方法示例
本文实例讲述了JavaScript实现读取与输出XML文件数据的方法.分享给大家供大家参考,具体如下: 一.介绍 通过JavaScript读取XML文档中数据的方法很多. 其根本的思路就是:首先在后台加载XML文档,然后通过JavaScript获取文档中所需的数据,最后应用HTML展示获取的数据. 二.获取XML元素的属性值的应用 下面应用attributes属性和getNamedItem()方法获取一个指定的XML文档中的属性值. 三.代码 首先创建一个XML文档,并且为指定的元素设置属性,程
-
Python读取txt文件数据的方法(用于接口自动化参数化数据)
小试牛刀: 1.需要python如何读取文件 2.需要python操作list 3.需要使用split()对字符串进行分割 代码运行截图 : 代码(copy) #encoding=utf-8 #1.range中填写的数据 跟txt中行数保持一致 默认按照空格分隔 f_space = open(r"C:\Users\Administrator\Desktop\Space.txt","r") line_space = f_space.readlines() for i
-
用WebClient.UploadData方法上载文件数据的方法
假如某网站有个表单,例如(url: http://localhost/login.aspx): 帐号 密码 我们需要在程序中提交数据到这个表单,对于这种表单,我们可以使用 WebClient.UploadData 方法来实现,将所要上传的数据拼成字符即可,程序很简单: string uriString = "http://localhost/login.aspx"; // 创建一个新的 WebClient 实例. WebClient myWebClient = new WebC
-
C#读取txt文件数据的方法实例
第一步新建txt文件,写入内容 我是放在D盘下的,数据以逗号隔开的,是英文逗号 第二步读取数据 在需要读取数据的页面,添加代码,就可以了 private void Phone_Load(object sender, EventArgs e) { string ReadLine; string[] array; string Path = @"D:\FrontierApp.TXT"; StreamReader reader = new StreamReader(Path,System.T
-
springboot读取application.yaml文件数据的方法
本文实例为大家分享了springboot读取application.yaml文件数据的具体代码,供大家参考,具体内容如下 提示:以下是本篇文章正文内容,下面案例可供参考 一.创建并编辑对应的文件 1.application.yaml !!!这里一定要注意,datasource一定不能写成dataSource,因为会和Spring内部的产生冲突 server: port: 8080 contry: china user: - name: zhangsan age: 18 - n
-
清除SQL Server数据库日志(ldf文件)的方法汇总
目录 解决方案1 - 直接删除本地ldf日志文件:(比较靠谱方案!) 解决方案2 -收缩数据库日志文件(最靠谱方案!) 解决方案3 - 采用SQL脚本删除. 清除SQL Server数据库日志(ldf文件)的几种方法 随着系统运行时间的推移,数据库日志文件会变得越来越大,这时我们需要对日志文件进行备份或清理. 解决方案1 - 直接删除本地ldf日志文件:(比较靠谱方案!) 1. 在SQL管理器分离数据库. 2. 对数据库日志文件进行压缩备份(rar, zip) 3. 直接删除ldf文件. 附加数
-
解说mysql之binlog日志以及利用binlog日志恢复数据的方法
众所周知,binlog日志对于mysql数据库来说是十分重要的.在数据丢失的紧急情况下,我们往往会想到用binlog日志功能进行数据恢复(定时全备份+binlog日志恢复增量数据部分),化险为夷! 废话不多说,下面是梳理的binlog日志操作解说: 一.初步了解binlog MySQL的二进制日志binlog可以说是MySQL最重要的日志,它记录了所有的DDL和DML语句(除了数据查询语句select),以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日志是事务安全型的. ---
随机推荐
- Do All in Cmd Shell一切在命令行下完成第1/6页
- Redis整合Spring结合使用缓存实例
- Ubuntu Server 16.04安装MySQL设置远程访问出现问题的完美解决方案(error:10061)
- jQuery给表格添加分页效果
- IOS设计模式之组合设计模式
- JavaScript验证知识整理
- Mysql误操作后利用binlog2sql快速回滚的方法详解
- python3使用urllib示例取googletranslate(谷歌翻译)
- 在Django框架中运行Python应用全攻略
- zaq5.exe zaq8.exe 之最新熊猫烧香专杀工具
- SQL Server2005打开数据表中的XML内容时报错的解决办法
- Navicat for MySQL导出表结构脚本的简单方法
- Android实现横向二级菜单
- javascript 洒脱飘动的文字
- 让Apache Shiro保护你的应用
- maven打包web项目时同时打包为war和jar文件的方法
- Android获取apk签名指纹的md5值(防止重新被打包)的实现方法
- C#使用GDI绘制矩形的方法
- 解决C++中事件不响应的方法详解
- c# 开机启动项的小例子