千家信息网

如何实现SQL SERVER 2005邮件功能

发表于:2024-11-25 作者:千家信息网编辑
千家信息网最后更新 2024年11月25日,这期内容当中小编将会给大家带来有关如何实现SQL SERVER 2005邮件功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。作为一个管理员,如果每天的日常监控的结
千家信息网最后更新 2024年11月25日如何实现SQL SERVER 2005邮件功能

这期内容当中小编将会给大家带来有关如何实现SQL SERVER 2005邮件功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

作为一个管理员,如果每天的日常监控的结果可以使用一种方式能提醒到你的话,这样可以避免总是远程连接上SQL SERVER每隔一段时间就去运行个操作,然后再看结果。SQL SERVER 2005中自带的邮件功能可以实现这个需求哦。

这时数据库的邮件就配置好了。下面我们使用T-SQL语句来实现邮件的发送,此时用到一个存储过程msdb.dbo.sp_send_dbmail。该存储过程的具体用法见MSDN。
使用如下语句来查看缓存中平均操作时间前50的操作。
Exec msdb.dbo.sp_send_dbmail
@profile_name='SQLSERVEREMAIL1', --使用的数据库邮件配置文件
@recipients='huangzhf@fabao.cn', --收件人地址,多个收件人可用分号分隔
@subject='每小时缓存中执行时间最长的50个语句', --邮件主题
@query='SELECT TOP 50
total_worker_time/execution_count/1000 AS [Avg CPU Time(ms)],deqs.execution_count,
(SELECT SUBSTRING(text,statement_start_offset/2+1,(CASE WHEN statement_end_offset = -1 then LEN(CONVERT(nvarchar(max), text)) * 2 ELSE statement_end_offset end -statement_start_offset)/2+1) FROM sys.dm_exec_sql_text(sql_handle)) AS query_text
FROM sys.dm_exec_query_stats deqs
ORDER BY [Avg CPU Time(ms)] DESC', --具体的查询T-SQL
@attach_query_result_as_file = 1, --查询结果以附件形式发送
@query_no_truncate = 1 --不截断长字段值
将上面的T-SQL做成计划任务,并设置成每小时执行一次。
这样每小时邮箱里面就能收到需要的信息了。

上述就是小编为大家分享的如何实现SQL SERVER 2005邮件功能了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

0