最近更新   设为主页   SQLServer事务日志的具体分析说明 加入收藏  
计算机基础教程网 本站招聘  
 [投稿登 陆]    [问题求解或论坛登 陆]
ITWEN首页操作系统网络冲浪办公软件网页设计图形图象认证考试程序设计数据库其它文章交流论坛  
  当前位置:ITWen >>  网络技术  >>  SQLServer事务日志的具体分析说明
SQLServer事务日志的具体分析说明
作者:ItWen收集整理    来源:www.itwen.com    更新时间:2006-10-27
[ 收藏此页到: 天天 | 和讯 | 博采 | ViVi | 狐摘 | 我摘 ]  
  


  SQL Server 的每一个数据库,无论是系统数据库(master,model, sybsystemprocs, tempdb),还是用户数据库,都有自己的transaction log,每个库都有syslogs表。Log记录用户对数据库修改的操作,所以如果不用命令清除, log会一直增长直至占满空间。清除log可用dump transaction 命令;或者开放数据库选项trunc log on chkpt,数据库会每隔一段间隔自动清除log。管理好数据库log是用户操作数据库必须考虑的一面。   下面就几个方面谈谈log及其管理:
  
  一、SQL Server 如何记录及读取日志信息
  我们知道,SQL Server是先记log的机制。Server Cache Memory中日志页总是先写于数据页:
  
  Log" pages 在commit ,checkpoint,space needed 时写入硬盘。
  
  Data pages 在checkpoint,space needed 时写入硬盘。
  
  系统在recovery 时读每个database 的syslogs 表的信息,回退未完成的事务(transaction)(数据改变到事务前状态);完成已提交的事务(transaction)(数据改变为事务提交后的状态)。在Log中记下checkpoint点。这样保证整个数据库系统的一致性和完整性。
  
  二、Transaction logs 和checkpoint 进程
  checkpoint 命令的功能是强制所有“脏”页(自上次写入数据库设备后被更新过的页)写入数据库设备。自动的checkpoint 间隔是由SQL Server 根据系?统活动和系统表sysconfigures中的恢复间隔(recovery interval)值计算出的。通过指定系统恢复所需的时间总量,恢复间隔决定了checkpoint 的频率。

  
  如果数据库开放trunc log on chkpt选项,则SQL Server在数据库系统执行checkpoint时自动清除log。但用户自己写入执行的checkpoint命令并不清除log,即使trunc log on chkpt选项开放。只有在trunc log on chkpt选项开放时,SQL Server自动执行checkpoint动作,才能自动清除log 。这个自动的checkpoint动作在SQL Server中的进程叫做checkpoint进程。当trunc log on chkpt选项开放时,checkpoint进程每隔0秒左右清除log,而不考虑recovery interval设置时间的间隔。
  
  三、Transaction log 的大小
  没有一个十分严格的和确切的方法来确定一个数据库的log应该给多大空间。对一个新建的数据库来说,log大小为整个数据库大小的20%左右。因为log记录对数据库的修改,如果修改的动作频繁,则log的增长十分迅速。所以说log空间大小依赖于用户是如何使用数据库的。
  例如:
  1.update,insert和delete 的频率
  2.每个transaction 中数据的修改量
  3.SQL Server系统参数recovery interval 值
  4.log是否存到介质上用于数据库恢复
  还有其它因素影响log大小,我们应该根据操作估计log大小,并间隔一个周期就对log进行备份和清除。
  
  四、检测log 的大小
  若log 在自己的设备上,dbcc checktable (syslogs) 有如下信息:
  
  例:***NOTICE:space used on the log segment is 12.87Mbytes,64.35%
  ***NOTICE:space free on the log segment is 7.13Mbytes,35.65%
  
  根据log剩余空间比例来决定是否使用dump transaction 命令来备份和清除log。
  
  用快速方法来判断transaction log 满的程度。
  
  1>use database_name
  2>go
  1>select data_pgs (8,doa mpg)


   本篇文章共3页,此页为首页   下一页


  引用提示:
  内容页面:SQLServer事务日志的具体分析说明 --- 网络技术
  作者:ItWen收集整理
  来源:www.ITWEN.com 计算机基础教程网
  

  版权申明:
  本网站所有内容,未经注明的,版权一律属于计算机基础教程网(ITWEN.com)制作署所有。转载引用本网站的原创文章,请务必注明信息来源,标明“计算机基础教程网(ITWEN.com)”字样。
  计算机基础教程网(ITWEN.com)依法保护知识产权,如果我们的文章有涉及或侵犯您的有关权益,请即时与我们联系, 注明网址及文章,我们会即时处理或删除, 感谢您的合作!   


】 【返回站点首页】【打印本页】【关闭本页
     资料搜索
     热门文章
·Win95系统API函数大揭秘
·用.net实现按透明度生成水印文件
·使用xml来显示数学公式
·Dotnet中用接口描述is和as
·PPCoder1.2 Releas
·将一个图片以二进制值的形式存入Xm
·小议主子表INT自增主键插入记录的
·dbUnit对mssqlserve
·vb基础
·CorelDraw 中的线条艺术
·PhotoShop辅助线和标尺的技
·C#Windows程序的生与死
·PHPMYADMIN配置
·架构WebService交互界面,
·标准模板库1
     前面文章
·移动没有标题的窗体
·Oracle数据库中常用的SQL查
·基于嗅探原理的原始套接字木马
·使用ASP.NET程序来管理文件或
·几个很有用的javascript函
·TheStrutsUsersGui
·编写Enterprise bean
·花生壳我玩个人服务器3
·NULL究竟是个什么东东
·如何正确理解PHP的错误信息
·“渐变窗口”有绝招
·hanyu看过来,24小时交易的A
·六、动态、静态以太网交换技术
·Linx DHCP服务器的配置
·稳定并且快速着妙用Win98的克隆
·Win2000之Dfs工具一
·分析Oracle数据库日志文件1
·Delphi多层开发方案比较
·GuruoftheWeek条款05
·VB7新特性预览

文章: SQLServer事务日志的具体分析说明 已经被浏览了 次。
免责声明 | 关于我们 | 广告联系 | 友情链接 | 帮助设置 | 网站导航 | 最近更新 | 共同合作
计算机基础教程网(www.ITwen.com) 版权所有
copyright 2005-2006,All Rights Reserved
计算机基础教程网