iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >monitor temp db usage for MSSQL的示例代码
  • 641
分享到

monitor temp db usage for MSSQL的示例代码

2024-04-02 19:04:59 641人浏览 八月长安
摘要

这篇文章将为大家详细讲解有关monitor temp db usage for MSsql的示例代码,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 create a

这篇文章将为大家详细讲解有关monitor temp db usage for MSsql的示例代码,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

  1. create a SP to record the temp file usage, and record the active session with SQL with requested paged from temp db

  2. USE [DBCenter]

  3. Go


  4. CREATE PROCEDURE [dba].[sys_tmp_monitor_85]

  5. AS

  6. begin

  7. truncate table dbcenter..tmpdbmonitor_SQL

  8. insert into dbcenter..tmpdbmonitor_85

  9. select sum(convert(float,size) * (8192/1024)/1024/1024) TMPFILE_GB, sum(convert(float,maxsize) * (8192/1024)/1024/1024) MAX_TMPFILE_GB,(sum(size)*1.0/sum(maxsize))*100 USED_PER,GETDATE() [DATE_TIME]

  10.  from tempdb.dbo.sysfiles where name like 'tempdev%'


  11. insert into dbcenter..tmpdbmonitor_SQL

  12. select replace(a.hostname,' ','') as hostname ,''''+replace(program_name,' ','')+'''' as program_name

  13. , loginame,db_name(a.dbid) AS DBname, j.*,GETDATE() date_time

  14. from (

  15. SELECT t1.session_id, t1.internal_objects_alloc_page_count*8.0 internal_objects_alloc_KB,

  16. t1.user_objects_alloc_page_count*8.0 user_objects_alloc_KB,

  17. t1.internal_objects_dealloc_page_count*8.0 internal_objects_dealloc_KB,

  18. t1.user_objects_dealloc_page_count*8.0 user_objects_dealloc_KB,

  19. st.text

  20. from tempdb.sys.dm_db_session_space_usage as t1,

  21. tempdb.sys.dm_exec_requests as t4

  22. CROSS APPLY tempdb.sys.dm_exec_sql_text(t4.sql_handle) AS st

  23. where t1.session_id = t4.session_id

  24.   and t1.session_id >50

  25.   and (t1.internal_objects_alloc_page_count>0

  26.     or t1.user_objects_alloc_page_count >0

  27.     or t1.internal_objects_dealloc_page_count>0

  28.     or t1.user_objects_dealloc_page_count>0) ) as j

  29. left join

  30.     tempdb.sys.sysprocesses as a with(nolock) on a.spid=j.session_id

  31.     where isnull(a.loginame,'') <>''


  32. insert into dbcenter..tmpdbmonitor_SQL_his

  33. select replace(a.hostname,' ','') as hostname ,''''+replace(program_name,' ','')+'''' as program_name

  34. , loginame,db_name(a.dbid) AS DBname, j.*,GETDATE() date_time

  35. from (

  36. SELECT t1.session_id, t1.internal_objects_alloc_page_count*8.0 internal_objects_alloc_KB,

  37. t1.user_objects_alloc_page_count*8.0 user_objects_alloc_KB,

  38. t1.internal_objects_dealloc_page_count*8.0 internal_objects_dealloc_KB,

  39. t1.user_objects_dealloc_page_count*8.0 user_objects_dealloc_KB,

  40. st.text

  41. from tempdb.sys.dm_db_session_space_usage as t1,

  42. tempdb.sys.dm_exec_requests as t4

  43. CROSS APPLY tempdb.sys.dm_exec_sql_text(t4.sql_handle) AS st

  44. where t1.session_id = t4.session_id

  45.   and t1.session_id >50

  46.   and (t1.internal_objects_alloc_page_count>0

  47.     or t1.user_objects_alloc_page_count >0

  48.     or t1.internal_objects_dealloc_page_count>0

  49.     or t1.user_objects_dealloc_page_count>0) ) as j

  50. left join

  51.     tempdb.sys.sysprocesses as a with(nolock) on a.spid=j.session_id

  52.     where isnull(a.loginame,'') <>''


  53. end

2. create a job which will get the tmpdb usage info
   if usage percent >=85 sent out mai

  1. declare

  2. @used_per int,

  3. @sql varchar(8000),

  4. @sbj varchar(1000)


  5. begin

  6. select @used_per=(sum(size)*1.0/sum(maxsize))*100 from tempdb.dbo.sysfiles where name like 'tempdev%'

  7. print @used_per

  8. if @used_per>=85

  9. begin

  10.     exec [DBCenter].[dba].[sys_tmp_monitor_85]

  11.     set @sql='SELECT [hostname]

  12.           ,[program_name]

  13.           ,[loginame]

  14.           ,[DBname]

  15.           ,[session_id]

  16.           ,[text]

  17.           ,[date_time]

  18.       FROM [DBCenter].[dbo].[tmpdbmonitor_SQL]'

  19.           select @sbj=@@SERVERNAME

  20.         set @sbj=@sbj+'tmpdb usage over 85 %'

  21.      --print @sql

  22.     EXEC msdb.dbo.sp_send_dbmail

  23.         @profile_name = 'monitor',

  24.         @recipients = '1234567@qq.com',

  25.         @query = @sql ,

  26.         @subject = @sbj,

  27.         @attach_query_result_as_file = 1 ;

  28. end

  29. end

关于“monitor temp db usage for MSSQL的示例代码”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

您可能感兴趣的文档:

--结束END--

本文标题: monitor temp db usage for MSSQL的示例代码

本文链接: https://www.lsjlt.com/news/71594.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • monitor temp db usage for MSSQL的示例代码
    这篇文章将为大家详细讲解有关monitor temp db usage for MSSQL的示例代码,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 create a ...
    99+
    2024-04-02
  • 数据库中tmstamp monitor的示例代码
    这篇文章主要介绍了数据库中tmstamp monitor的示例代码,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。USE [DBCe...
    99+
    2024-04-02
  • 数据库中enable cdc capture on mssql db的示例分析
    这篇文章给大家分享的是有关数据库中enable cdc capture on mssql db的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 ...
    99+
    2024-04-02
  • java_util_test的示例代码
    这篇文章主要为大家展示了“java_util_test的示例代码”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“java_util_test的示例代码”这篇文章吧。package com...
    99+
    2023-06-03
  • Compile invalids的示例代码
    小编给大家分享一下Compile invalids的示例代码,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!cat compile_invalids. . ~/.prof...
    99+
    2024-04-02
  • Typewriter Simulation的示例代码
    这篇文章给大家分享的是有关Typewriter Simulation的示例代码的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 Typewriter Simulation 下面...
    99+
    2024-04-02
  • exe2bat的脚本代码示例
    这篇文章将为大家详细讲解有关exe2bat的脚本代码示例,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。exe2bat的脚本 代码如下:fp=wscript.arguments(0) fn=rig...
    99+
    2023-06-08
  • flink batch dataset的示例代码
    这篇文章给大家分享的是有关flink batch dataset的示例代码的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。package hgs.flink_lessonimport org.a...
    99+
    2023-06-02
  • mybatis plus自动生成代码的示例代码
    写一个简单的mybatis plus插件自动生成代码的例子 pom.xml 添加配置 <!-- mybatis plus 插件--> <dependency>...
    99+
    2024-04-02
  • js生成二维码的示例代码
    前段时间项目中需要开发扫描二维码查看信息的功能,在网上查了一些资料,把用过的方法进行总结需要导入一个qrcode的js 插件。 插件链接: qrcode.js下载地址,点击即可下载 ...
    99+
    2024-04-02
  • spark 与flume 1.6.0的示例代码
    小编给大家分享一下spark 与flume 1.6.0的示例代码,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!package hgs.spark.streamingimport org.apache.s...
    99+
    2023-06-02
  • flink connector之FlinkKafkaProducer的示例代码
    这篇文章给大家分享的是有关flink connector之FlinkKafkaProducer的示例代码的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。示例代码如下package flink.stream...
    99+
    2023-06-02
  • Css中代码的示例分析
    小编给大家分享一下Css中代码的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!text-rendering: optim...
    99+
    2024-04-02
  • SpringBoot整合SpringDataRedis的示例代码
      本文介绍下SpringBoot如何整合SpringDataRedis框架的,SpringDataRedis具体的内容在前面已经介绍过了,可自行参考。 1....
    99+
    2024-04-02
  • goland实现websocketserver的示例代码
    采用go 实现的websocket,已经调试通过在此记录。 测试工具网址:https://www.idcd.com/tool/socket 话不多说上全部代码: package ...
    99+
    2024-04-02
  • springboot 使用 minio的示例代码
    什么是MinIo MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视...
    99+
    2024-04-02
  • golang操作rocketmq的示例代码
    RocketMQ 是什么 Github 上关于 RocketMQ 的介绍:RcoketMQ 是一款低延迟、高可靠、可伸缩、易于使用的消息中间件。具有以下特性: 支持发布/订阅(Pub...
    99+
    2024-04-02
  • SpringBoot整合logback的示例代码
    Logback简介 1、logback和log4j是同一个作者,logback可以看作是log4j的升级版 2、logback分为三个模块, logback-core, logbac...
    99+
    2024-04-02
  • SpringBoot整合ShardingSphere的示例代码
    目录一、相关依赖二、Nacos数据源配置三、项目配置四、验证概要: ShardingSphere是一套开源的分布式数据库中间件解决方案组成的生态圈,它由Sharding-JDBC、S...
    99+
    2024-04-02
  • Springboot整合kafka的示例代码
    目录1.整合kafka2.消息发送2.1发送类型2.2序列化2.3分区策略3.消息消费3.1消息组别3.2位移提交1. 整合kafka 1、引入依赖 <dependency&...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作