博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第三章——使用系统函数、存储过程和DBCC SQLPERF命令来监控SQLServer(3)
阅读量:7049 次
发布时间:2019-06-28

本文共 1456 字,大约阅读时间需要 4 分钟。

原文:

本文为这个系列最后一篇。将是如何使用DBCC命令来监控SQLServer日志空间的使用情况。

 

前言:

 

       每个数据库都必须有事务日志。事务日志记录每个DML操作,并应用于SQLServer的数据库中,如果恢复模式为FULL并经常有DML操作,日志将增长得非常快。几时恢复模式为simple,当数据库处于事务复制或者合并复制时,日志通常会增长。如果日志不是经常备份且日志文件的增长没有受到限制的话,将有可能耗光你所有的硬盘空间然后造成数据库宕机。作为DBA,应该经常监控日志的使用情况以避免问题的发生。

 

       作为DBA,其中一个重要的责任就是监控日志文件的大小,以确保空间不会被耗光导致数据库服务器宕机。

 

         SQLServer提供了不同的DBCC命令供DBA使用,其中DBCC SQLPERF是其中一个用于监控日志大小的常用命令,在本文中,将演示使用这个命令。除了获取日志的信息,还可以用于重置等待和闩锁状态。

 

DBCC SQLPERF用于监控日志使用情况时,只需要传入一个参数LOGSPACE。但是它也接受其他命令。

DBCC SQLPERF(‘logspace’)命令返回三个列:DatabaseNameLogSize(MB)LogSpaceUsed(%)

 

步骤:

 

1、  打开SSMS然后新开一个查询窗口。

 

2、  在查询窗口中输入以下代码:

 

USE tempdbGOIF OBJECT_ID('dbo.#tbl_DBLogSpaceUsage') IS NOT NULL     BEGIN        DROP TABLE dbo.#tbl_DBLogSpaceUsage    ENDCREATE TABLE dbo.#tbl_DBLogSpaceUsage    (      DatabaseName NVARCHAR(128) ,      LogSize NVARCHAR(25) ,      LogSpaceUsed NVARCHAR(25) ,      [Status] TINYINT    )INSERT  INTO dbo.#tbl_DBLogSpaceUsage        EXEC ( 'DBCC SQLPERF(LOGSPACE)'            )--查询全部结果:SELECT  DatabaseName ,        LogSize ,        LogSpaceUsed ,        [Status]FROM    dbo.#tbl_DBLogSpaceUsageGO--查询特定数据库的结果:SELECT  DatabaseName ,        LogSize AS LogSizeInMB ,        LogSpaceUsed LogspaceUsed_In_Percent ,        [Status]FROM    dbo.#tbl_DBLogSpaceUsageWHERE   Databasename = 'AdventureWorks'GO

 

分析:

 

       本例中创建了一个临时表,然后调用DBCC SQLPERF来把数据插入表中。由于DBCC命令需要用EXEC来执行,所以使用动态SQL来实现。根据返回的结果可以预测是否有必要马上执行日志备份操作(完整备份不截断日志,也就不会释放日志空间)。 

 

扩展信息:

       可以改进这个语句来获取汇总值,在一段时间之后,表就存放了日志使用信息的历史记录。可以用于分析日志的增长情况。

转载地址:http://jzuol.baihongyu.com/

你可能感兴趣的文章
Linux学习- 1 初始Linux 20180407
查看>>
故障盘查
查看>>
微服务分布式企业框架 Springmvc+mybatis+shiro+Dubbo+ZooKeeper
查看>>
在RHEL搭建ftp服务
查看>>
Docker常用命令总结(附例子)
查看>>
大数据如何解决大问题
查看>>
PTGUI全景合成软件使用教程之HDR合成
查看>>
简单谈谈如何利用h5实现音频的播放
查看>>
shell编程 ---test
查看>>
Andriod 对话框 .
查看>>
程序员:面试挂了,面试官说我没有互联网气质,网友:那是啥气质
查看>>
有史以来,程序员被黑的最最最惨的一次!
查看>>
微信第三方平台全网发布检测
查看>>
企业WiFi解决方案 安全上网很重要
查看>>
lvs和nginx的区别
查看>>
java.lang.Comparable
查看>>
LINQ to Objects(1)
查看>>
RHCSA认证培训+考试七天实录(三)
查看>>
Golang的百科全书--the way to go
查看>>
JSP踩过的坑
查看>>