Suvendu's profileSuvendu's spacePhotosBlogListsMore Tools Help

Blog


    June 07

    FreeSpace Alert in SQL Server 2000/2005

    Create a vbs file in C; Drive named as disk.vbs
    content are given below


    Set DiskSet = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery("select FreeSpace,Size,Name from Win32_LogicalDisk where DriveType=3")
    for each Disk in DiskSet
    If (Disk.FreeSpace/Disk.Size) < 0.30 Then 
    WScript.Echo "Drive " + Disk.Name + " is low on space."
    End If
    Next
    

    Then Create a Job which will run on your requirement to check sapce and in Step 1 put the below code.

    create table ##diskspace (details varchar(1000))
    insert into ##diskspace
    exec xp_cmdshell 'cscript c:\disk.vbs'
    
    if (select count(*) from ##diskspace where cmd like '%low on space%') > 0
    begin
    declare @sql varchar(200)
    SELECT @sql ='select * from ##diskspace where  cmd like ''%low on space%'''
    PRINT @SQL
    exec master.dbo.xp_sendmail @recipients='Your ID', 
       @query = @sql,
       @subject = 'Disk Space Full'
    end
    drop table ##DiskSpace