• sql查询磁盘空间并发预警邮件


    检测磁盘空间,如果低于设置的预警值则发出一封预警邮件,这样的事情可以用SQL server的作业可以做,关键SQL语句如下例子所示:

    DECLARE @TableText NVARCHAR(MAX)='' ; --邮件正文
    declare @c int=15000 --C盘最低报警15G

    if exists (select * from tempdb.dbo.sysobjects where id = object_id(N'tempdb..#aa') and type='U')
    drop table #aa
    create table #aa
    (
    pan varchar(50),kj varchar(50)
    )

    --master.dbo.xp_fixeddrives是检测硬盘空间的系统存储过程,执行结果的磁盘可用空间单位是MB
    insert into #aa Exec master.dbo.xp_fixeddrives

    if ((select kj from #aa where pan='C')<@c)
    begin
    set @TableText+='C盘空间不足,剩余空间:'+(select kj from #aa where pan='C')+'M 预警空间:'+Convert(varchar,@c)+'M';
    end
    drop table #aa;

    if(LEN(@TableText)>0)
    begin
    EXEC msdb.dbo.sp_send_dbmail  --msdb.dbo.sp_send_dbmail 是发邮件的系统存储过程。当然,在用之前,还需要在数据库中设置邮件服务:数据库右击->管理->数据库邮件->右击,配置数据库邮件
    @profile_name = 'alertmail',
    @recipients = '123@test.com;456@test.com', --收件人,可以是多个,也可以是单个。当多个的时候用分号隔开
    @body = @TableText,
    @subject = '服务器磁盘空间预警'
    end

  • 相关阅读:
    排序算法---堆排序

    排序算法---希尔排序
    简单排序算法
    Jave 垃圾回收查看工具--jstat
    Linux 查看进程IO状态
    vittualenv 和mkvirtualenv
    服务器被当作了肉机去挖矿的解决办法
    pycharm的函数注释 和 父子组件传递
    git初始化操作
  • 原文地址:https://www.cnblogs.com/huyueping/p/9817818.html
Copyright © 2020-2023  润新知