實 現 目 標
利用SQL Server 2008 內部"SQL Server Agent 代理程式,"
我們可以讓DBA 輕易部署自動化排程(結合SQL 語法)工作
於本Lab我們將組態 SQL Server Agent 主要元件
DataMail , 操作員,警示,作業,排程...最後並驗收排程執行動作是否成功?
(1) 登入 SQL Server 2008 DB Server
(2.) [設置DataMail組態]: [物件總管]->[設定DataMail]
由於我們是第一次組態Database Mail 請選擇第一項
"執行下列工作以設定Database Mail"
組態Database Mail
在此我們需設定外寄SMTP
電子郵件地址 , 伺服器名稱,與通訊埠 25
基本驗證之帳戶與密碼等等...
組態完成->下一步
設置公用設定檔並將"預設設定檔" 選"是"
Database Mail SMTP相關參數設定(於在保留預設值)
Database Mail 組態設置完成
接下來測試DataMail 訊息發送
[物件總管] -> [管理] -> [Database Mail] ->[傳送測試電子郵件]
Database Mail 設定檔: 選擇 [MS DBA]
收件者: 任一測試Email Address
主旨: 填入發信主旨
本文: 訊息內容
設定完成請點"傳送測試電子郵件"即可
登入Hotmail 收 Database Mail 驗證測試信成功!!!!!
Database Mail 組態與運行測試完成後,接下來我們要將組態
SQL Server Agent 支援 Database Mail(用以發送警訊給DBA做災難告知處理)
[物件總管] ->SQL Server Agent (右鍵:屬性)
點選 左方"警示系統"
將 啟用郵件設定檔 #勾選
郵件系統: Database Mail
郵件設定檔: MS DBA # 確定 ->即可
(3) [定義操作員]
[物件總管] -> [SQL Server Agent] ->[操作員](新增操作員)
[一般] : 我們填入"操作員名稱"與"電子郵件名稱" #確定
(4) [新增 作業]
[物件總管] -> [SQL Server Agent] -> [作業] ->新增作業
[一般]: 填入作業"名稱" ,作業 "類別目錄" 以方便分類作業類型
[步驟] -> [新增]
在此為我們主要定義SQL Server Agent 執行工作內容
我們可使用 T-SQL 定義排程工作_下圖為備份 master db 為例
撰寫完成SQL 語法時,請"剖析"確認SQL 語法無誤
切換 [進階] : 在此
我們可以選擇 當作業完成後的動作
成功時動作 & 失敗時動作
當您的JOB 有數個批次步驟需執行, 當第一個任務執行OK後應設定如下
成功時動作: 移至下一步驟
.......N
成功時動作(The End) : 結束時回報成功作業
# 請務必在最後一步驟填入 結束時回報成功作業
[排程]: 設置重複執行該 Cron Job 排程時間
由於筆者寫這篇文章時為2010/10/31 1:50 P.M 時分
我們現在設置排程為 2010/10/31 2:00 P.M 驗證是否SQL Server Agent
自動執行該JOB?
當觸發事件時,SQL Server Agent 可發訊息告知 系統操作員處理事件
[通知]: 在此我們勾選"電子郵件" , 操作員帳戶: DBA
當作業成功時,將發訊息通知 DBA
目前KEYNES寫到這裡 距離 2:00 P.M SQL Server Agent 排程時間只剩60秒
耐心等待中....
現在 2:00 P.M 已到,我們到
[物件總管] -> [SQL Server Agent] ->[作業](右鍵: 檢視紀錄)查看Agent 是否已替我們
執行排程工作
由下圖可知,排程工作已在2:00 P.M 順利完成執行工作
記得我們在前幾步驟設定"作業"組態時,曾 設置
成功時動作 : 結束並回報成功作業
現在我們登入hotmail 收信 ,驗證 SQL Server Agent 是否會成功回報Message
到我們指定操作員信箱已告知作業成功?
由下圖可知,SQL Server Agent 已成功回報排程備份作業執行ok