sqlserver完整差异备份还原

Sql server  的完整备份和差异备份

完整备份当然就是将数据库的数据全部备份

而差异备份指得是将上一次备份后到现在对数据的修改进行备份.

因此差异备份不能单独使用,只能先还原上一次的完整备份后,才能还原差异备份,

当有多个差异备份时,只需要选择指定日期的差异备份文件即可,不需要逐个还原在此期间的差异备份.

步骤为:

1、在需要还原的数据库上右键选择如图

2、在“常规”选项中点击“源设备”选取磁盘上备份好的.bak文件后,勾上“还原”选项的勾

3、在“选项”页面中,勾选上“覆盖现有数据库”,恢复状态,选择第一个“回滚未提交的事务。。。。”,其中在“行数据”和“日志”两个数据行中,务必查看“还原为”的路径是否指向了你需要还原的数据库名字 dbname.mdf和dbname_log.ldf,因为有些被还原的数据库名字和.bak备份文件中的名字不一样,导致还原失败。

4、点击确定后还原成功

当数据库文件很大,数据量很大,备份和还原需要花费不少时间的时候,数据库的差异备份自然就成为考虑的备份方案之一。

SQLSERVER2008的差异备份存在两种备份方式:

1. 先做一个完整备份,然后再做差异备份,差异备份的文件还是使用完整备份的那个文件,这样在完整备份集中就会存在两个

备份文件。还原的时候,都选中这个差异文件,还原选项选择“覆盖现有数据库”和“回滚未提交的事务......”这两项即可

2. 先做一个完整备份,然后再做一个差异备份,差异备份的文件不使用完整备份的那个文件,自己再新建一个差异备份文件。

这样磁盘上针对这两次备份就会存在两个备份文件。还原这两个备份文件时,先选择完整备份的文件,还原选项里选择

“覆盖现有数据库”和“不对数据库执行任何操作....” 完成还原后,会发现被还原的数据库名呈现“DBName(正在还原...)”

针对这个数据库再进行一次还原,选择差异备份文件后,直接点确定即可。

步骤截图:

1、首先如下图对数据库做一个完全备份后再做差异备份

2、进行差异还原的时候首选选择上图中_完全.bak文件进行还原,此时DB会显示 dbname(正在还原…)

3、在上图(正在还原…)的DB名字上,右键-》任务-》还原-》数据库,选择如上图的“源设备”选项,选择_差异2.bak,勾上还原

在“选项”页面做如下选择

点击确定后,差异还原成功执行。

注意:我们是直接选择的_差异2.bak进行的还原,这样的话也会将_差异1.bak中的数据还原到数据库中,因为_差异2.bak是从_差异1.bak上进行差异备份的。

From:http://www.cnblogs.com/ivanyb/archive/2013/01/23/2873437.html

时间: 2024-10-09 08:14:46

sqlserver完整差异备份还原的相关文章

日志备份和差异备份还原中的常见问题示例(转自&邹建)

--创建测试 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 

SQLServer数据库差异备份

差异备份 (differential backup)定义 一种数据备份,基于完整数据库或部分数据库或一组数据文件或文件组(差异基准)的最新完整备份,并且仅包含自确定差异基准以来发生更改的数据. 使用SSMS数据库管理工具进行数据库差异备份 1.选择数据库->右键点击->选择任务->选择备份. 2.在备份数据库弹出框中->选择备份类型为差异->然后删除系统生成的目标文件->然后点击添加. 3.在选择备份目标弹出框中->点击选择备份路径. 4.在定位数据库文件弹出框中

SQL Server差异备份的备份/还原原理

SQL Server差异备份的备份/还原原理 记住一点:差异备份是基于最后一次完整备份的差异,而不是基于最后一次差异的差异 备份过程: 1-完整备份之后有无对数据库做过修改,如果有,记录数据库的最后LSN(Last LSN) 如果完整备份之后无对数据库做过修改,那么差异备份就没有意义了 2-做差异备份时根据差异位图读取差异页面内容 注意:差异位图记录了自从最后一次完整备份以来数据库中有变化的页面,这样在做差异备份时候就不用扫全库页面,只需要读取有差异的页面 3-在备份之前,数据库会做一次检查点,

sqlserver备份还原(解压上传到阿里云)

1.完全备份 mssql_backup.sh #!/bin/bashcurrent_time=$(date "+%Y%m%d-%H%M%S")backup_dir='/cygdrive/d/backup/'backup_zip_dir='/cygdrive/d/backup/Archive/'backup_archive_dir='/cygdrive/d/backup/Archive/'backup_cygwin_dir=${backup_archive_dir}${current_t

分析VTL以及利用日志备份还原数据库到指定时间

本文原整理于2012-09 一备份链 USEMASTER; GO CREATEDATABASElogtest 运行如下语句 USElogtest go DBCCloginfo 图1-1 运行如下语句可以看到产生很多VTL USElogtest go SELECTTOP 10000 *INTOt1 FROMAdventureWorks.Sales.SalesOrderHeader DBCCloginfo 图1-2 运行如下语句可以看到日志被截断,标记为可重用状态(status=0) USElogt

sqlserver数据库的备份与还原——完整备份与还原

sqlserver提供四种数据库备份方式 完整备份:备份整个数据库的所有内容包括书屋和日志 差异备份:只备份上次完整备份后更高的数据部分 事务日志备份:只备份事务日志里的内容 文件或文件组备份:只备份文件或文件组中的某些文件 在数据库完整备份期间,sqlserver做一下工作: 备份数据以及数据库中的所有表的结构和相应的文件结构 备份在备份期间发生的所有活动 备份在事务日志中未确认的事务 备份过程: 右击要备份的数据库--->任务--->备份 可以选择备份类型以及备份文件的存放位置. 还原过程

sqlServer数据库备份与还原——差异备份与还原

1.差异备份 是完整备份的补充 备份自上次完整备份以来的数据变动的部分 2.备份过程: 在做差异备份之前需要先进行完整备份.完整备份的过程见:https://i.cnblogs.com/EditPosts.aspx?postid=10322955 差异备份与完整备份过程类似,只是备份类型选为差异备份 3.还原过程: 在进行差异还原的时候先要进行完整备份还原,但是要注意要选择上以下两个对勾,否则会报错. 不要着急点击确定,在选项中选中覆盖现有数据库,同时在恢复状态处选择第二个. 点击确定后,可以看

差异备份和还原操作方法(转)

   差异备份只创建数据库中自上一次数据库备份之后修改过的所有页的复本.差异日志主要用于使用频繁的系统,一旦这类系统中的数据库发生故障,必须尽快使其重新联机.差异备份比完整数据库备份小,因此对正在运行的系统影响较小.            例如,某个站点在星期天晚上执行完整数据库备份.在白天每隔 4 小时制作一个事务日志备份集,并用当天的备份重写头一天的备份.每晚则进行差异备份.如果数据库的某个数据磁盘在星期四上午 9:12 出现故障,则该站点可以:        1.备份当前事务日志.    

SQL Server 2000中的完整备份、差异备份操作

在SQL Server 2000中,假定我们拥有一个数据库为:Test, 现在需要它每天19:00自动进行一次备份,并且以后一旦发生数据库错误,我们都可以通过备份文件将数据库恢复到任何一个备份过的时刻点. 备份步骤:1. 在“SQL Server企业管理器”中注册数据库所在的服务器,注意要使用sa用户名和口令,否则以后执行备份调度的时候,会出现权限不足,导致不能进行备份.2. 确保该服务器的SQL Server Agent服务是开启的,因为所有的调度都是通过该代理进行执行的.3. 在“SQL S