SQLServer数据事务日志操作

日志备份 (log backup)

包括以前日志备份中未备份的所有日志记录的事务日志备份。 (完整恢复模式)

使用SSMS数据库管理工具备份事务日志

1、连接数据库,选择数据库-》右键点击-》选择任务-》选择备份。

2、在备份数据库弹出框中-》备份类型选择事务日志备份-》删除系统自动生成的文件名-》点击添加。

3、在选择备份目标弹出框中选择备份路径。

4、在定位数据库文件弹出框中-》选择备份文件路径-》输入文件名(注意添加后缀名)-》点击确定。

5、弹出框都点击确定。

6、示例结果:

使用SSMS数据库管理工具还原事务日志

数据库事务日志还原分为两步,第一步为还原数据库,第二步为还原数据库事务日志

第一步还原数据库

1、连接数据库,选择要还原的数据库-》右键点击-》选择任务-》选择还原-》选择数据库。

2、在还原数据库弹出框中-》选择设备-》选择要还原的文件的路径。

3、在选择备份设备弹出框中-》点击添加。

4、在定位备份文件弹出框中-》选择文件所在文件夹-》选择要还原的文件。

5、在还原数据库弹出框中-》点击选项选择恢复模式。

6、在还原数据库弹出框中-》如果要还原的数据库已存在,选择覆盖现有数据库,如果不存在,不必选择-》选择数据库恢复模式为RESTORE WITH NORECOVERY。

7、点击确定。

8、此时数据库状态为正在还原。

第二步还原事务日志文件

1、选择正在还原数据库-》右键点击-》选择任务-》选择还原-》选择事务日志。

2、在还原事务日志弹出框中-》选择备份介质-》选择路径。

3、在选择备份设备弹出框中-》点击添加。

4、在定位备份文件弹出框中-》选择文件所在路径-》选择要还原的文件-》点击确定。

5、在还原事务日志弹出框-》选择选项-》选择要还原的恢复模式。

6、在还原事务日志弹出框中-》选择回滚未提交的事务-》点击确定。

7、还原结果。

8、数据库状态。

使用T-SQL脚本备份数据库事务日志

备份语法:backup log 数据库名 to disk=文件完整路径;

示例:backup log testss to disk='D:\SqlTest\backup\sw3.bak';

使用T-SQL脚本还原数据库事务日志

如果要还原的数据库不存在

还原语法:

第一步还原数据库:restore database 数据库名 from disk=文件完整路径 with norecovery;

第二步还原事务日志:restore log 数据库名 from disk=文件完整路径 with recovery;

示例:

第一步还原数据库:restore database testss from disk='D:\SqlTest\backup\sw1.bak' with norecovery;

第二步还原日志文件:restore log testss from disk='D:\SqlTest\backup\sw11.bak' with recovery;

如果要还原的数据库存在

还原语法:

第一步还原数据库:restore database 数据库名 from disk=文件完整路径 with norecovery,replace;

第二步还原事务日志:restore log 数据库名 from disk=文件完整路径 with recovery;

示例:

第一步还原数据库:restore database testss from disk='D:\SqlTest\backup\sw1.bak' with norecovery,replace;

第二步还原日志文件:restore log testss from disk='D:\SqlTest\backup\sw11.bak' with recovery;

总结

优点:

1、日志备份会节约更多的时间,恢复起来也更快可以及时恢复,数据丢失少。

2、在SQL Server中,事务日志备份是增量备份,它捕获的是自上一次事务日志备份以来的变化,而差异备份则包含了自上一次完整备份以来所有变化的页。

3、日志备份可以恢复到相应的时间点。

缺点:恢复过程比较慢,需要恢复多个备份包括完整备份和日志备份。

作者:小子pk了

原文地址:https://www.cnblogs.com/vuenote/p/9494422.html

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181104A0V7D900?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券