SQLSERVER备份事务日志的作用
事务日志备份有以下3种类型
(1)纯日志备份:仅包含相隔一段时间的事务日志记录,而不包含任何大容量更改
(2)大容量操作日志备份.包括由大容量操作更改的日志和数据页,不支持时间点恢复
(3)尾日志备份:从可能已破坏的数据库创建,用于捕获尚未备份的日志记录。在失败后创建尾日志备份可以防止工作损失,
并且,尾日志备份可以包含纯日志或大容量日志数据
必须至少有一个完整备份或一个等效文件备份集,才能进行任何日志备份。通常DBA定期(如每周)创建数据库完整备份,
以更短的间隔(如每天)创建差异备份,并会频繁(如每10分钟)创建事务日志备份。
最恰当的备份间隔取决于一系列因素,如数据的重要性、数据库的大小和服务器的工作负荷
如果事务日志损坏,则将丢失自最新的日志备份后所执行的工作。
为此,建议经常对关键数据进行日志备份,并注意将日志文件存储在容错存储设备中
事务日志备份顺序独立于完整备份。可以生成一个事务日志备份顺序,然后定期生成用于开始还原操作的完整备份
------------------------------------------------华丽的分割线-----------------------------------------------------
最佳实践
每15~30分钟:事务日志备份
每天:差异备份
每周:完整备份
备份日志尾部失败后执行尾日志备份,以防止丢失所做工作,在失败之后并且在开始还原数据库之前,或者在故障转移到辅助数据库时,
备份活动日志(尾日志备份)。选择此选项等效于在TSQL 中backup log 语句中指定norecovery选项
1 BACKUP LOG [GPOSDB] To disk='D:\GPOSDB_logbackup_201207160152.bak'
2 GO
事务日志备份有时会比数据库备份大。例如,数据库的事务处理很多,从而导致事务日志迅速增大。
在这种情况下,应该经常地创建日志备份并清理事务日志
----------------------------------------------华丽的分割线----------------------------------------------------------------
清理事务日志
如果从来没有从事务日志中删除日志记录,逻辑日志就会一直增长,直到填满容纳物理日志文件的磁盘上的所有可用空间。
为了减少逻辑日志的大小,应定期截断事务日志。在SQLSERVER的最早版本中,截断事务日志意味着将进行数据库恢复或还原不再需要的日志记录物理删除。
但是,在最近的版本中,截断过程只是做标记,以便重新使用旧日志记录使用过的空间。此空间中的日志记录将最终被新的日志记录覆盖。
在事务日志已满的情况下,满的情况根据你的磁盘的容量大小,用户不能更新数据。backup log语句有双重的目的,
不仅可以备份事务日志,并且在事务日志满的时候,用户还可以利用他清理事务日志,移去事务日志中不活动的部分
截断并不减少物理日志文件大小,而是减少逻辑日志文件的大小并释放磁盘空间以供重新使用。
减少物理日志文件大小需要收缩事务日志文件
DBCC SHRINKFILE适用于当前数据库中的文件。要收缩的数据库不必在单用户模式下,收缩文件时,其他用户也可使用该数据库

1 --例如:截断AdventureWorks数据库的事务日志,然后将日志文件收缩到10MB
2 USE [AdventureWorks]
3 GO
4 BACKUP LOG [AdventureWorks] WITH no_log
5 GO
6 EXEC [sys].[sp_helpdb] @dbname = 'AdventureWorks' -- sysname
7 GO
8
9 DBCC SHRINKFILE(AdventureWorks_Log,10)
10 GO

注意:清理事务日志的时候,不产生日志备份副本.考虑到数据库的恢复工作可能需要使用日志备份,应该先做日志备份,再清理事务日志!!
最后附上配图

SQLSERVER备份事务日志的作用的更多相关文章
- (转)对SQLSERVER数据库事务日志的疑问
本文转载自桦仔的博客http://www.cnblogs.com/lyhabc/archive/2013/06/10/3130856.html 对SQLSERVER数据库事务日志的疑问 摸不透SQLS ...
- SQL Server备份事务日志结尾(Tail)
原文:http://blog.csdn.net/tjvictor/article/details/5256906 事务日志结尾经常提交数据库未备份的事务日志内容.基本上,每一次你执行事务日志备份时 ...
- SQLServer数据事务日志操作
日志备份 (log backup) 包括以前日志备份中未备份的所有日志记录的事务日志备份. (完整恢复模式) 使用SSMS数据库管理工具备份事务日志 1.连接数据库,选择数据库->右键点击-&g ...
- SQLserver提示事务日志已满无法重建索引,前台提示日志已满处理方案
1.数据库--属性--选项--恢复模式:简单. 2.数据库--任务--文件类型:日志 在释放未使用的空间潜重新组织页:1M 3.数据库--属性-- ...
- SqlServer 事务日志传输
基本概念 可以使用日志传送将事务日志不间断地从一个数据库(主数据库)发送到另一个数据库(辅助数据库).不间断地备份主数据库中的事务日志,然后将它们复制并还原到辅助数据库,这将使辅助数据库与主数据库基本 ...
- (转)解释一下SQLSERVER事务日志记录
本文转载自桦仔的博客http://www.cnblogs.com/lyhabc/archive/2013/07/16/3194220.html 解释一下SQLSERVER事务日志记录 大家知道在完整恢 ...
- 解释一下SQLSERVER事务日志记录
解释一下SQLSERVER事务日志记录 大家知道在完整恢复模式下,SQLSERVER会记录每个事务所做的操作,这些记录会存储在事务日志里,有些软件会利用事务日志来读取 操作记录恢复数据,例如:log ...
- SQL SERVER完整、差异和事务日志备份及还原(脚本和GUI实现) [原创]
一.完整备份.差异备份和事务日志备份的脚本 --完整备份数据库 BACKUP DATABASE Test_Bak TO DISK = 'E:\20150609_75\bak\Test_bak_full ...
- 第16周翻译:SQL Server中的事务日志管理,级别3:事务日志、备份和恢复
源自: http://www.sqlservercentral.com/articles/Stairway+Series/73779/ 作者: Tony Davis, 2011/09/07 翻译:刘琼 ...
随机推荐
- java 代码如何生成 chm
由于要把一个框架的东西打成 chm, 今天在网上找了几篇文章 http://blog.sina.com.cn/s/blog_5d31611a0100gqwp.html 李顺利 首先第一步,从eclip ...
- 设计模式 命令-Command
命令-Command 当要向不同类的对象发出相同的请求时,可以将接收者和他的动作封装进一个命令对象.这样调用者只和命令产生依赖.而不会和众多的接收者发生依赖. Head First例子 要设计一款遥控 ...
- Tcl之load
做一个ASIC项目,基本结构是MCU+ROM+RAM.目前想把单片机程序下载到ROM中,然后在ModelSim中仿真程序,得到运行结果.好二哥给出的Tcl下载文件如下,细细研读中... puts &q ...
- 集群重启后启动ambari-server访问Web页面无法启动集群解决
集群重启后启动ambari-server访问Web页面无法启动集群解决 使用ambari部署的集群重新启动后,必须手动重启ambari-server和所有集群主机上的ambari-agent. amb ...
- phonegap,Cordova 使用html5标签
某些安卓手机的webview使用location.href="tel:123456"不能调到打电话的界面,可以用下面的解决办法: config.xml文件最后加上一行: <a ...
- 【MySql】权限不足导致的无法连接到数据库以及权限的授予和撤销
[环境参数] 1.Host OS:Win7 64bit 2.Host IP:192.168.10.1 3.VM: VMware 11.1.0 4.Client OS:CentOS 6 5.Client ...
- ADT-bundle
eclipse 弹出 Version 1.4.2_03 of the JVM not suitable for this product.Version1.6or geeater is requir ...
- 时隔3年,再次折腾BlackBerry 8830!
2010年手头换得8830,之后就是好几番刷机.解SPC.倒腾各种软件..算软件注册码..那个时候记得最难弄的注册码就是crunchSMS.需要运行虚拟机来从内存地址读取注册码..不过黑莓真的很经得起 ...
- Socket小项目的一些心得(鸣谢传智的教学视频)
Socket是一种封装了四层通信的整体抽象入口,通常也称作"套接字",这是常用的四层通信这是访问Socket的流程图,这个分为客户端和服务器端,其中服务器端有以下步骤去建立,前面的 ...
- css之clear属性
clear属性用来设置元素左右两边是否可以存在浮动元素. 它的值包括:left,right,both,none.其中none代表左右两边可以出现浮动元素.