SqlServer傳送郵件

2021-07-11 03:14:38 字數 1998 閱讀 2316

每天上班。開啟電腦,總是先看看資料庫的運**況,看看日誌。於是就想利用是sqlserver自身的郵件系統,每天給自己定時發郵件,提高一點效率。

sqlserver圖形化介面比較強大,配置傳送郵件也比較簡單(我是2012版):

一、啟用database mail xps功能

a、檢視狀態

select name,value, description,is_dynamic,is_advanced

from sys.configurations

where name like '%mail%'

(value值為1,表示服務啟動了。)

b、啟動服務 

sp_configure 'show advanced options',1

goreconfigurego

sp_configure 'database mail xps',1

goreconfigure

go

二、配置資料庫郵件檔案

a、新建資料庫檔案

b、預設下一步到,配置資料庫檔案

c、預設下一步,注意選擇「公共」

d、預設下一步,完成配置

二、傳送郵件

指令碼方式:

declare @conetent varchar(8000);                 --存放郵件正文

--設定傳送的正文

select  @conetent = 'hellow world !!!' ;

--傳送郵件

exec msdb.dbo.sp_send_dbmail

@profile_name = 'wxzhou', --配置檔案名稱

@recipients = '[email protected]', --收件email位址

@subject = '第一次發sqlserver資料庫郵件', --郵件主題

@body = @conetent --郵件正文內容

除了指令碼的形式,還有乙個簡單的測試方法:

檢視傳送成功的郵件:

三、日誌檢視與常見問題

a、日誌檢視:

b、常見問題

1、傳送郵件後,會有一段時間的延遲,可能需要等幾分鐘,郵件才能傳送成功。

2、sqlserver伺服器需要連線外網(郵件伺服器在外網時),你可以用web訪問以下郵箱的伺服器,看看能不能通。

3、有些郵件伺服器會關閉stmp訪問,這時候需要開啟才能傳送郵件:

4、防火牆的開啟可能或影響到郵件的傳送。

5、在網上看到有些防毒軟體也會影響到郵件的傳送。

總結一下,不過是兩種問題

網路問題:可以通過其他的方式發郵件,傳送成功,就說明是sqlserver伺服器問題,在繼續排查。



sql server 傳送郵件

sql server 並沒有內建郵件伺服器 mail server 它跟我們傳送郵件一樣,需要使用者名稱和密碼通過 smtp message transfer protocol 去連線郵件伺服器。我們想讓 sql server 來傳送郵件,首先要告訴它使用者名稱,密碼,伺服器位址,網路傳送協議,郵件...

sql server傳送郵件

declare mailprofilename nvarchar max declare mailto nvarchar max declare mailcc nvarchar max declare mailsubject nvarchar max declare mailbody nvarcha...

利用SQL Server傳送郵件

配置sql server 允許發郵件這裡有兩種方式一中是通過介面操作,一中是全 操作。兩種方式的結果是一樣的,使用者可以先通過 操作,在通過介面操作去檢視 1 操作 1.配置資料 exec sp configure show advanced options 1 reconfigure with o...