一、啟用數據庫郵件
手動啟用數據庫郵件功能,需執行以下腳本:
exec sp_configure 'show advanced options', 1; GO RECONFIGURE WITH OVERRIDE ; GO exec sp_configure 'Database Mail XPs', 1; GO RECONFIGURE WITH OVERRIDE ; GO
二、配置數據庫郵件
--創建郵件帳戶信息 exec msdb.dbo.sysmail_add_account_sp @account_name ='acctinfo', -- 郵件帳戶名稱 @email_address ='myname@163.com', -- 發件人郵件地址 @display_name ='SQL SERVER xxx', -- 發件人姓名 @MAILSERVER_NAME = 'smtp.163.com', -- 郵箱服務器地址 @PORT =25, -- 郵箱服務器端口 @USERNAME = 'myname@163.com', -- 郵箱用戶名 @PASSWORD = '郵箱密碼' -- 郵箱密碼 GO --數據庫配置文件 exec msdb.dbo.sysmail_add_profile_sp @profile_name = 'mailset', -- 配置名稱 @description = '數據庫郵件配置文件' -- 配置描述 go --用戶和郵件配置文件相關聯 exec msdb.dbo.sysmail_add_profileaccount_sp @profile_name = 'mailset', -- 配置名稱 @account_name = 'acctinfo', -- 郵件帳戶名稱 @sequence_number = 1 -- account在 profile 中順序(默認是1) go
三、發送數據郵件示例
EXEC msdb.dbo.sp_send_dbmail @profile_name = 'mail', @recipients = '9294@qq.com;3910@qq.com', ----接收郵件地址列表,可以多個,中間以分號分隔 @subject = '價格數據異常的記錄', ----郵件主題 @query='select * from test_sale where sale_price=0 and sale_date=convert(char(10),dateadd(dd,-1,getdate()),121)', @body = '價格數據異常,查詢結果如下:'
四、可以根據實際業務需要,制定SQL作業計划,定時監控各數據表,出現異常數據時,及時郵件通知負責人。