当前位置: 代码迷 >> 综合 >> SQL Server 配置 Job 监控 tempdb 变化
  详细解决方案

SQL Server 配置 Job 监控 tempdb 变化

热度:31   发布时间:2024-01-03 14:38:31.0

第一步:创建表格用于记录数据

use master
CREATE TABLE [dbo].[Rec_DBFile_Used]([DBName] [nchar](30) NULL,[FileName] [nchar](30) NULL,[DataFileID] [nchar](10) NULL,[Size_M] [numeric](18, 0) NULL,[SpaceUsed] [numeric](18, 0) NULL,[SpaceFree] [numeric](18, 0) NULL,[SpaceUserate] [numeric](18, 0) NULL,[MaxSize] [numeric](18, 0) NULL,[Growth] [numeric](18, 0) NULL,[is_percent_growth] [nchar](10) NULL,[physical_name] [nchar](100) NULL,[Rec_date] [datetime] NULL
) ON [PRIMARY]

第二步:创建 Job 定时写入记录
Job 详细配置请参考《SQL Server 邮箱告警配置》这里不做赘述。
将Job Step 中的代码替换如下即可:

use tempdb
go
insert into  [master].[dbo].[Rec_DBFile_Used] 
select 'tempdb',name,data_space_id,size/128 ,fileproperty(name,'spaceused')/128 ,size/128 - fileproperty(name,'spaceused')/128 ,fileproperty(name,'spaceused')*100.0/size ,max_size/128 ,growth , is_percent_growth ,physical_name  ,getdate() from sys.database_files;

Job 成功执行后,可通过查询 [dbo].[Rec_DBFile_Used] 表观察 tempdb 的变化情况:

select * from [dbo].[Rec_DBFile_Used]
  相关解决方案