日志备份和差异备份还原中的常见问题示例(转自&邹建)
--创建测试 CREATE DATABASE db GO --正常备份 BACKUP DATABASE db TO DISK='c:\1.bak' WITH FORMAT BACKUP LOG db TO DISK='c:\2.bak' WITH FORMAT BACKUP LOG db TO DISK='c:\3.bak' WITH FORMAT BACKUP DATABASE db TO DISK='c:\4.bak' WITH FORMAT BACKUP DATABASE db TO DISK='c:\5.bak' WITH FORMAT,DIFFERENTIAL BACKUP LOG db TO DISK='c:\6.bak' WITH FORMAT GO --下面是用于日志备份和差异备份还原中易犯的错误 --1. 恢复时使用错误的日志顺序 IF DB_ID('db') IS NOT NULL DROP DATABASE db RESTORE DATABASE db FROM DISK='c:\1.bak' WITH NORECOVERY RESTORE LOG db FROM DISK='c:\3.bak'/*--收到信息 服务器: 消息 4305,级别 16,状态 1,行 5 此备份集中的日志开始于 LSN 6000000002800001,该 LSN 太晚,无法应用到数据库。包含 LSN 6000000002500001 的较早的日志备份可以还原。 --*/ GO --2. 恢复时,将日志备份应用于错误的完全备份 IF DB_ID('db') IS NOT NULL DROP DATABASE db RESTORE DATABASE db FROM DISK='c:\4.bak' WITH NORECOVERY RESTORE LOG db FROM DISK='c:\2.bak'/*--收到错误信息 服务器: 消息 4326,级别 16,状态 1,行 5 此备份集中的日志终止于 LSN 6000000002800001,该 LSN 太早,无法应用到数据库。包含 LSN 6000000003000001 的较新的日志备份可以还原。 --*/ GO --3. 将日志备份用于RESTORE DATABASE IF DB_ID('db') IS NOT NULL DROP DATABASE db RESTORE DATABASE db FROM DISK='c:\2.bak' WITH NORECOVERY /*--收到错误信息 服务器: 消息 3135,级别 16,状态 2,行 4 文件 'c:\2.bak' 中的备份集是由 BACKUP LOG 创建的,无法用于此还原操作。 --*/ GO --4. 将差异备份用于RESTORE LOG IF DB_ID('db') IS NOT NULL IF DB_ID('db') IS NOT NULL DROP DATABASE db RESTORE DATABASE db FROM DISK='c:\4.bak' WITH NORECOVERY RESTORE LOG db FROM DISK='c:\5.bak'/*--收到错误信息 服务器: 消息 3135,级别 16,状态 2,行 3 文件 'c:\5.bak' 中的备份集是由 BACKUP DATABASE WITH DIFFERENTIAL 创建的,无法用于此还原操作。 --*/ GO --5. 将差异备份用于RESTORE LOG IF DB_ID('db') IS NOT NULL IF DB_ID('db') IS NOT NULL DROP DATABASE db RESTORE DATABASE db FROM DISK='c:\4.bak' WITH NORECOVERY RESTORE LOG db FROM DISK='c:\5.bak'/*--收到错误信息 服务器: 消息 3135,级别 16,状态 2,行 3 文件 'c:\5.bak' 中的备份集是由 BACKUP DATABASE WITH DIFFERENTIAL 创建的,无法用于此还原操作。 --*/ GO --6. 将差异备份用于错误的完全备份中 IF DB_ID('db') IS NOT NULL IF DB_ID('db') IS NOT NULL DROP DATABASE db RESTORE DATABASE db FROM DISK='c:\1.bak' WITH NORECOVERY RESTORE DATABASE db FROM DISK='c:\5.bak'/*--收到错误信息 服务器: 消息 3136,级别 16,状态 1,行 3 无法将设备 'c:\5.bak' 上的备份应用于数据库 'db'。 --*/ GO --7. 直接使用日志备份或者差异备份还原 IF DB_ID('db') IS NOT NULL IF DB_ID('db') IS NOT NULL DROP DATABASE db RESTORE DATABASE db FROM DISK='c:\5.bak'RESTORE LOG db FROM DISK='c:\2.bak'/*--收到错误信息 服务器: 消息 913,级别 16,状态 8,行 3 未能找到 ID 为 65535 的数据库。可能该数据库尚未激活,也可能正在转换过程中。 --*/ GO --8. 还原完全备份时,未使用NORECOVERY,导致不能正确还原日志备份或者差异备份 IF DB_ID('db') IS NOT NULL IF DB_ID('db') IS NOT NULL DROP DATABASE db RESTORE DATABASE db FROM DISK='c:\1.bak'RESTORE LOG db FROM DISK='c:\2.bak'/*--收到错误信息 服务器: 消息 4306,级别 16,状态 1,行 4 先前的还原操作未指定 WITH NORECOVERY 或 WITH STANDBY。请在除最后步骤之外的所有其他步骤中指定 WITH NORECOVERY 或 WITH STANDBY 后,重新启动该还原序列。 --*/ GO --删除测试 IF DB_ID('db') IS NOT NULL DROP DATABASE db日志备份和差异备份还原中的常见问题示例(转自&邹建)的更多相关文章
- Sql server 2008 的完成备份和差异备份还原
当数据库数据量不大的情况下用 Sqlserver 的完全备份就完全可以了 步骤为: 1.在需要还原的数据库上右键选择如图 2.在“常规”选项中点击“源设备”选取磁盘上备份好的.bak文件后,勾上“还原 ...
- SQL Server 2012完全备份、差异备份、事务日志备份和还原操作;
SQL Server 2012完全备份.差异备份.事务日志备份和还原操作: 1.首先,建立一个测试数据库,TestA:添加一张表,录入二条数据:备份操作这里我就不详细截图和讲解了.相信大家都会备份,我 ...
- sqlserver2008r2还原完整备份和差异备份及自动删除过期备份
本文主要内容: 还原完整和差异备份 删除超过1个月的备份 注:保证SQL Server代理服务启动,并把服务设置为自动启动 完整备份和差异备份还原原理: 差异备份是完整备份的补充,只备份上次完整备份后 ...
- sql server 数据库备份,完整备份,差异备份,自动备份说明
Sql server 设置完整备份,差异备份说明 在数据库管理器中,选择要备份的数据库,右键找到“备份” 然后可以按照备份的方式进行备份. 关于文件的还原,作以下补充说明: 步骤为: 1.在需要还原的 ...
- 阿里云 如何减少备份使用量? mysql数据库的完整备份、差异备份、增量备份
RDS for MySQL备份.SQL审计容量相关问题_MYSQL使用_技术运维问题_云数据库 RDS 版-阿里云 https://help.aliyun.com/knowledge_detail/4 ...
- SQL Server 2000中的完整备份、差异备份操作
在SQL Server 2000中,假定我们拥有一个数据库为:Test, 现在需要它每天19:00自动进行一次备份,并且以后一旦发生数据库错误,我们都可以通过备份文件将数据库恢复到任何一个备份过的时刻 ...
- sqlserver全备份,差异备份和日志备份
差异备份是以上一个全备为基点,这个期间所有差异数据的备份. 日志备份是基于前一个全备+日志备份为基点,这个期间的事务日志的备份.(日志备份用于确保还原数据库到某个时间点) 在利用全备+日志备份 ...
- sql server 完整备份、差异备份、事务日志备份
一. 理解: 完整备份为基础, 完整备份可以实物回滚还原,但是由于完整备份文件过大,对硬盘空间比较浪费这是就需要差异备份 或者 事务日志备份. 差异备份还原时,只能还原到备份的那个点, 日志备份还原时 ...
- Oracle Rman 增量备份与差异备份
一.增量与差异 关于Incremental增量备份级别: Oracle 9i 共有五种级别 0 1 2 3 4,0级最高-4级最低,0级是1级的基础以此类推. Oracle 10g官方文档明确指出增量 ...
随机推荐
- Android Studio系列教程一--下载与安装
背景 相信大家对Android Studio已经不陌生了,Android Studio是Google于2013 I/O大会针对Android开发推出的新的开发工具,目前很多开源项目都已经在采用,Goo ...
- Android 手机设置CMWAP 接入点
Android 手机设置CMWAP 接入点 设置--- 无限控件---移动网络设置---接入点名称----再按菜单---选择新apn 第一步,设置CMNET 上网APN 新建 APN 1.名称:cmn ...
- UITableViewCell重用机制
UITableView是iOS开发中使用频率非常高的一个控件,它常被用来展示信息列表,尽管信息数据可能非常多,但UITableView消耗的资源却并不会随着展示信息的增多而变大,这都要得益于UITab ...
- git常见问题
一.设置git的user name和email: git config --global user.name "lei.li" git config --global user.e ...
- 【虚拟化实战】存储设计之六latency
在[虚拟化实战]存储设计之五IOPS中我们讲了评估存储性能的三个关键指标.也就是Throughput,IOPs和latency.以及三者之间的关系.本文深入介绍Latency过高的原因和一些建议. L ...
- Android输入输出机制之来龙去脉
openInputChannelPair( 阅读本文的前提条件是知道匿名管道和匿名共享内存是怎么一回事,否则阅读相应的文章. Anonymous pipes 和Anonymous Shared Mem ...
- DES加密解密(适用Windows和Linux系统)防止linux下解密失败
转自:http://blog.csdn.net/jerry_bj/article/details/8276552 package com.lasun.util; import java.io.File ...
- 0c-41-ARC使用特点及注意事项
1.ARC特点总结 1)不允许调用release,retain,retainCount 2)允许重写dealloc,但是不允许调用[super dealloc] 3)@property的参数: str ...
- MySQL Spatial Extensions 地理信息
http://dev.mysql.com/doc/refman/5.7/en/gis-data-formats.html http://mysqlserverteam.com/mysql-5-7-an ...
- Spring MVC @RequestMapping Annotation Example with Controller, Methods, Headers, Params, @RequestParam, @PathVariable--转载
原文地址: @RequestMapping is one of the most widely used Spring MVC annotation.org.springframework.web.b ...