最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

第三章使用系统函数、存储过程和DBCCSQLPERF命令来监控SQLS

来源:动视网 责编:小采 时间:2020-11-09 08:01:37
文档

第三章使用系统函数、存储过程和DBCCSQLPERF命令来监控SQLS

第三章使用系统函数、存储过程和DBCCSQLPERF命令来监控SQLS:本文为这个系列最后一篇。将是如何使用 DBCC 命令来监控 SQLServer 日志空间的使用情况。 前言: 每个数据库都必须有事务日志。事务日志记录每个 DML 操作,并应用于 SQLServer 的数据库中,如果恢复模式为 FULL 并经常有 DML 操作,日志将增长得非常快
推荐度:
导读第三章使用系统函数、存储过程和DBCCSQLPERF命令来监控SQLS:本文为这个系列最后一篇。将是如何使用 DBCC 命令来监控 SQLServer 日志空间的使用情况。 前言: 每个数据库都必须有事务日志。事务日志记录每个 DML 操作,并应用于 SQLServer 的数据库中,如果恢复模式为 FULL 并经常有 DML 操作,日志将增长得非常快


本文为这个系列最后一篇。将是如何使用 DBCC 命令来监控 SQLServer 日志空间的使用情况。 前言: 每个数据库都必须有事务日志。事务日志记录每个 DML 操作,并应用于 SQLServer 的数据库中,如果恢复模式为 FULL 并经常有 DML 操作,日志将增长得非常快。几

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

前言:

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

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

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

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

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

步骤:

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

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

USE tempdb
GO
IF OBJECT_ID('dbo.#tbl_DBLogSpaceUsage') IS NOT NULL 
 BEGIN
 DROP TABLE dbo.#tbl_DBLogSpaceUsage
 END

CREATE 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_DBLogSpaceUsage
GO
--查询特定数据库的结果:
SELECT DatabaseName ,
 LogSize AS LogSizeInMB ,
 LogSpaceUsed LogspaceUsed_In_Percent ,
 [Status]
FROM dbo.#tbl_DBLogSpaceUsage
WHERE Databasename = 'AdventureWorks'
GO


分析:

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

扩展信息:

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

文档

第三章使用系统函数、存储过程和DBCCSQLPERF命令来监控SQLS

第三章使用系统函数、存储过程和DBCCSQLPERF命令来监控SQLS:本文为这个系列最后一篇。将是如何使用 DBCC 命令来监控 SQLServer 日志空间的使用情况。 前言: 每个数据库都必须有事务日志。事务日志记录每个 DML 操作,并应用于 SQLServer 的数据库中,如果恢复模式为 FULL 并经常有 DML 操作,日志将增长得非常快
推荐度:
标签: 使用 过程 系统
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top