SQL Server代理(1/12):配置和概況

SQL Server代理是全部實時數據庫的核心。代理有不少不明顯的用法,所以系統的知識,對於開發人員仍是DBA都是有用的。這系列文章會通俗介紹它的不少用法。sql


SQL Server代理是SQL Server做業調度和報警服務,使用得當的話,會大大簡化數據庫管理員(DBA)的工做。數據庫

SQL Server代理的核心是運行批處理做業(batch jobs),「批」是簡單的「一系列操做」,一般用T-SQL腳本定義。這些能夠做爲做業(job)運行,在特定計劃(schedule)上,你會選擇安排在少數用戶訪問數據庫的時候;換句話說,它們以批處理做業使用SQL Server代理進行計劃。這些批處理做業能夠是任何東西,從零碎的T-SQL任務,到複雜的,在多個SQL Server實例和多個計算機間運行的多個系統做業。SQL Server也容許你通知用戶,例如經過郵件,當特定批處理做業完成時,或當錯誤發生時(通知引擎會在第3篇文章談到)。
安全

極可能,做爲DBA的你,但願能當即在新部署的SQL Server上使用SQL Server代理來計劃做業。例如,你的第一個任務會是備份系統數據,使用電子郵件警報來告訴你備份做業成功仍是失敗。接下來的任務會包括你的用戶數據庫的配置和計劃備份,索引維護操做(重建或重組)等等。若是你管理至關簡單的SQL Server系統,那麼你會啓用維護計劃來計劃做業安排,例如,使用SSMS數據庫維護計劃嚮導。服務器

這篇文章是探索SQL Server代理功能的第1篇,討論下如何充分利用SQL Server代理。它包括介紹主要的組件和SQL Server代理的功能,展現如何讓這個服務運行起來,並演示下如何從SSMS建立和執行簡單的批處理做業。接下來的文章會深刻每一個組件,包括如何使用SQL Server代理結合使用SMO,PowerShell和T-SQL。
工具

這系列文章會集中於SQL Server 2005, SQL Server 2008和SQL Server 2008 R2;可是,在這個系列裏的大部分信息一樣適用於SQL Server 2000。sqlserver

讓SQL Server代理運行起來

在SQL Server初始配置期間,SQL Server代理默認是不啓用,所以使用SQL Server代理的第一個步驟,是讓SQL Server代理運行起來。學習

設置代理和SQL Server自動啓動

爲了設置SQL Server代理自動啓動,點擊【開始】【Microsoft SQL Server 2008 R2】【配置工具】,打開【SQL Server 配置管理器】。你須要是本地Windows管理員帳戶來運行這個工具。spa

一旦啓動後,這個工具會自動鏈接你的本地電腦。在樹型裏點擊【SQL Server 服務】,在右側的面板裏,你會看到安裝的SQL Server服務列表。其中應該是「SQL Server 代理(實例名稱)」,實例名稱要麼是你安裝的SQL Server實例名稱,或者是「MSSQLSERVER」,若是你配置了默認實例。若是【自動模式】已經設置爲【自動】,太好了,在安裝期間這已經正確配置。若是沒有,雙擊【SQL Server代理】,在出現的屬性對話框裏點擊【服務】標籤,點擊【啓動模式】,下拉里選擇【自動】,而後點擊【應用】(如插圖1.1所示)。如今當服務器重啓的時候,SQL Server代理會自動啓動,SQL Server也是運行的。若是SQL Server代理沒有運行,如今就啓動這個服務。操作系統

插圖 1.1——爲SQL Server代理配置SQL Server配置管理器3d

服務帳號選擇

基於你要在SQL Server代理上計劃要作的,你須要保證你已經配置了合適的服務帳號。若是你循序漸進來的話,你應該在SQL Server代理屬性的【服務】標籤頁。點回【登陸】標籤頁。對於SQL Server代理的基本操做,你可使用內置帳號,例如Network Service(在SQL Server安裝期間,這個服務帳號會被默認選擇,無論選了什麼服務)。插圖2就是選擇對話框。直接從內置帳戶裏選擇【Network Service】。若是你想讓SQL Server代理鏈接到遠程電腦(複製文件,例如管理多個系統)那麼你會切換使用域用戶帳號(在插圖1.2裏,本帳戶已被下拉框覆蓋);頗有可能有一個特定的帳號來指定。這是你要文你的域管理員。你會須要從域管理員角度來索取一個原始帳號。無論怎樣,選擇正確的服務帳號後,一旦你作出任何修改,你會須要選擇【從新啓動】來讓新的改動生效。一旦你完成這個,點擊【肯定】來完成SQL Server代理服務的配置。你能夠在微軟在線幫助瞭解更多服務帳號選擇的信息:服務器配置 - 服務賬戶

插圖1.2:爲SQL Server代理選擇服務帳號

建立你的第一個做業

選擇SQL Server代理已經運行,你能夠建立你的第一個做業。經過示範,咱們會配置一個做業來進行一些DBA的職責,備份你的系統數據庫,沒必要手動記得備份這些數據庫,你能夠建立會爲你完成的自動化做業。

做業

做業是單個邏輯任務的核心容器,例如備份數據庫。這個任務會包含一個或多個做業步驟。這個做業會包括提醒(例如,若是做業失敗提醒DBA),計劃(何時你想運行這個做業),甚至在多個系統裏運行。對於咱們的第一個備份做業,無論怎樣,咱們會保持它簡單。

爲了建立做業,打開SSMS鏈接到你的SQL Server實例。展開SQL Server代理節點,右擊做業,選擇【新建做業】,如插圖1.3所示。

插圖1.3——運行【新建做業】對話框

一個做業有多個組件,如你在插圖1.4所示。

插圖1.4——【新建做業】對話框

咱們命名做業名爲「備份Mater數據庫」。這個名稱會在SSMS圖形用戶界面裏的做業或PowerShell裏引用。做業【類別】會是組織你做業的有效方式,但對於你的第一個做業設置類別並不重要。你會在接下來的文章學習指定【類別】。在【說明】文本框裏,寫些能夠幫助你記住爲何你建立這個做業和它應該作什麼。記住其餘人之後也會管理這個系統。由於他們沒有建立這個做業,他們不會知道這個應該實現啥,這個做業是否重要。

作完這些,你已經基本完成建立做業的「外殼」,對於你在新建做業對話框裏看到的全部組件,它只是「外殼的容器」。做業的最重要部分是其餘標籤裏的組件。

做業步驟

SQL Server代理裏的做業至少要有一個做業步驟組成。當大多數人想SQL Server代理進行一些工做時,他們真正的意思是做業步驟。做業步驟是你定義的想要進行的行動類型,包括一下能運行的做業子系統:

  • ActiveX
  • 操做系統(CMD的運行)
  • PowerShell
  • 各類複製任務
  • SQL Server分析服務(SSAS)命令(例如XML/A)
  • SQL Server分析服務(SSAS)查詢(MDX)
  • SQL Server集成服務(SSIS)包(SQL Server 2000li de DTS包)
  • T-SQL腳本

對於大多數SQL Server的DBA來講,你的主要工做是使用做業步驟的最後一類,T-SQL。做業能夠做爲做業全部者運行,也可使用另外一個安全上下文,取決於做業全部者的權限和代理配置。做業步驟和子系統會在下篇文章詳細介紹。

如你在SSMS圖形用戶界面裏所見,控制做業步驟的標籤頁爲「步驟」。如今點擊它,咱們來建立一個做業步驟,點擊對話框底部的【新建】按鈕,【新建做業步驟】對話框會被打開(如插圖1.5)。

插圖1.5——新建做業步驟

給做業步驟去個有用的名稱——在咱們的狀況裏,做業名稱和步驟名稱能夠是一致的——「備份Master數據庫」。做業步驟會是T-SQL,由於咱們使用簡單的BACKUP命令作數據庫備份。如今你能夠忽略【運行身份】,默認狀況咱們做爲做業擁有者來運行做業步驟。對於咱們的操做,數據庫默認設置正確,是在master裏運行的。

對於【命令】自己,你能夠打開一個文件,或者複製粘貼一些合法在查詢窗口的T-SQL。簡單起見,咱們進行一個簡單的備份命令。若是你不是在C安裝的SQL Server,你須要修改文件位置到指定位置。我這裏默認安裝在C盤,在生產數據庫裏系統數據庫和用戶數據庫不會放在同個硬盤。

1 BACKUP DATABASE master
2     TO DISK='C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Backup\master.bak'
3     WITH INIT

完成後的樣子如插圖1.6所示,點擊【肯定】建立做業步驟。

插圖1.6——完成的做業步驟

做業計劃

做業計劃控制着何時做業會自動啓動。做業計劃有四個類型:

  • SQL Server代理啓動的自動啓動
  • CPU空閒時啓動
  • 循環執行
  • 執行一次

大部分的做業調度會循環執行(例如,在每週日下午7點運行一次個人備份)。計劃在SQL Server代理裏是獨立的對象,一個計劃能夠關聯到多個做業步驟。

對於咱們的做業,咱們但願數據庫每週備份。所以,點擊計劃標籤頁,點擊【新建】來建立做業計劃,如插圖1.7所示。命名計劃有意義的名稱(由於它們會在做業間共享)。我命名它爲「每週系統備份」。幸運的是,這個頁面的默認設置就能夠了!咱們一個星期運行一次,在週日,0點運行。點擊【肯定】,再次點擊【肯定】完成做業的建立。

插圖1.7——新建做業計劃

運行剛建立的做業

如今偶們已經建立好咱們的做業,咱們運行來驗證下是否正確。即便咱們計劃這個做業每週運行,咱們仍是按須要人爲運行它。在SSMS裏,在【做業】文件夾下,如今你會看到你的做業。右擊做業,選擇【做業開始步驟】,如插圖1.8所示。做業會運行,如今你的master數據庫已經備份。

插圖1.8——在SSMS裏啓動做業

下篇預告

在接下來的文章裏咱們逐步深刻探索SQL Server代理的每一個領域,伴隨特定場景的例子,做業和警告可大大加強你的SQL Server數據庫的功能,讓你的生活更加輕鬆。下篇文章會聚焦建立和配置做業步驟,理解不一樣的做業子系統和做業步驟安全。

感謝關注!

原文連接:http://www.sqlservercentral.com/articles/Stairway+Series/72267/

相關文章
相關標籤/搜索