SQL Server 无文档的东西(1)

这篇不知算不算原创。当然,每一个字都是自已打的。

        最近研究SQL Server 2008 各方面的知识点。当用Google搜索日志的时候。无意中搜到一个无文档函数:fn_dblog (当然,还有dbcc log)

fn_dbLog的作用是查看日志信息,但列很多,又无官方文档说明。fn_dbLog可以提供两个参数。一个是startLSN ,第二个是endLSN。不提供用null。LSN的格式是'数字:数字:数字'(由于没有深入研究。这些数字代表什么没有了解).只知道最后两个数字。如果填16:1就一定不会错。使用方法很简单:

select * from sys.fn_dblog(null,null) 
  如果日志文件很大,估计读出来很长。最后是确定lsn。对应的查询条件是[Current Lsn]列,当然是用参数传进去。

  因为列数大多。只说一个几个主要的例.

        [Operation]:说明是什么操作,如果比较关注的时 LOP_INSERT_ROWS LOP_MODIFY_ROW LOP_DELETE_ROWS 对应的操作是插入、更新和删除。

  [offset in Row]:只对用update操作吧。更新行的偏移量。

  [Modify Size]:更新的长度。应是指byte

        [RowLog Contents 0] LOP_INSERT_ROWS-就是插入行的数据,LOP_DELETE_ROWS-删除行的数据, LOP_MODIFY_ROW  修改前的数据(部份,根据[offset in Row]和[Modify Size]确定更新那一部份)。

        [RowLog Contents 1] LOP_MODIFY_ROW  的时候是修改后的内容。

        

        第二个找到的是

DBCC IND 和 DBCC PAGE

        先说 DBCC IND 吧 有三个参数,第一个是数据库名,每二个是表名,每二个是索引号(序号,通常写-1取是聚集索引的)。返回的结果是表所在的文件组和文件序号等。

  主要看的是:[Page Type]=1的.

        DBCC PAGE 是查看页信息 ,四个参数分别是 数据库名、PageFID,PagePID,输出选项 再加WITH TABLERESULTS,则用表格输出。每二三个参数,参考DBCC IND的结果

        但如果要输出,还要加一个监听 DBCC TRACEOn(3604)在调用dbcc page 之前


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值