第三步,創建“數據庫維護計劃”。鼠標右鍵單擊“數據庫維護計劃”項目,選擇“新建維護計劃(P)”功能,將打開“數據庫維護計劃向導”窗體,依照此向導能夠創建一個新的“數據庫維護計劃”。
步驟1,單擊“下一步(N)”按鈕,打開“選擇數據庫”窗體。在此窗體中可以選定一個或多個的數據庫作為操作對象。為了敘述方便,在此只選擇了一個數據庫“regie”。
步驟2,單擊“下一步(N)”按鈕,打開“更新數據優化信息”窗體。
在此窗體中可以對數據庫中的數據和索引重新進行組織,以及能夠設定在滿足一定條件的情況下,維護計劃自動刪除數據庫中的未使用的空間,以便提高性能。
但要注意的是,在此窗體中,只要選定了“重新組織數據和索引頁[R]”復選框,“更新查詢優化器所使用的統計。示例[D]”復選框將失效(變成灰色,不能選擇)。而且“重新組織數據和索引頁[R]”復選框和“從數據庫文件中刪除未使用的空間[M]”復選框二者只要有一個被選中,其下的“調度[s]”功能才有效。單擊“更改[C]”按鈕可以對“調度”進行自定義。
各位讀者可以根據自身情況決定是否選用其中的功能。當然也可以通過單擊“幫助”按鈕來查看各功能的具體含義。
在此窗體中能夠便捷地設定每項作業的持續運行時間和運行的頻率。完成自己的設置后,一定要選定右上角的“啟用調度[B]”復選框,這樣一個作業調度才算真正完成了。
步驟3,單擊“下一步(N)”按鈕,打開“檢查數據庫完整性”窗體。
在此窗體中可以設定維護計劃在備份數據庫前自動檢查數據庫的完整性,以便檢測由于硬件或軟件錯誤而導致數據的不一致。在此窗體中只有先選定了“檢查數據庫完整性[H]”復選框,其下的“備份之前執行這些檢查[R]”和“調度[S]”功能才有效。單擊“更改[C]”按鈕可以對“調度”進行自定義。
各位讀者可以自主決定,較好的一種做法就是選中“檢查數據庫完整性[H]”復選框(推薦,因為有可能會修正一些錯誤)。
步驟4:在“檢查數據庫完整性”窗體中的“下一步(N)”按鈕,打開“指定數據庫備份計劃”窗體。如需對數據庫進行備份,則必須選定“作為維護計劃的一部分來備份數據庫[A]”復選框,而且必須指定存儲備份文件的位置:磁帶[P]或磁盤[K]。
如果選擇“磁盤[K]”作為數據庫備份的位置,設定“調度”后單擊“下一步(N)”按鈕則顯示“指定備份磁盤目錄”窗體。
可以具體指定存儲備份文件的目錄(可以使用默認的目錄,也可自定義)、備份文件擴展名,而且能夠指示備份計劃自動地刪除早于某個時間(圖4中設定的是“2天”,也就是說兩天前的所有備份文件將被自動地刪除,只留下最近兩天的備份)的備份文件。而“為每個數據庫創建子目錄[C]”功能只是在步驟1中選擇了多個數據庫時才有用,對于一個數據庫作用不大。設定后,單擊“下一步(N)”按鈕則顯示“指定事務日志備份計劃”窗體。
如果選擇“磁帶[P]”作為數據庫備份的位置,設定“調度”后單擊“下一步(N)”按鈕則直接顯示“指定事務日志備份計劃”窗體。
步驟5,指定“事務日志備份計劃”的過程與步驟4的過程完全相同,只是在設定“調度”上稍有差別(因為筆者的要求是數據庫每天備份一次,事務日志每1小時備份一次)。
步驟6,對事務日志的備份計劃全部設定后,單擊“下一步(N)”按鈕則顯示“要生成的報表”窗體。在此窗體中可以指定用于存放整個備份計劃執行過程中的日志的目錄。
步驟7,完成步驟6后,單擊“下一步(N)”按鈕則顯示“維護計劃歷史紀錄”窗體。在此窗體中可以指定如何存儲此維護計劃的歷史記錄(是存放在“本地服務器”上,還是在“遠程服務器”上),而且通過指定表中的行數可以限定歷史記錄的存儲大小。
步驟8,完成步驟7后,單擊“下一步(N)”按鈕則顯示“正在完成數據庫維護計劃向導”窗體。
在此窗體中可以自定義一個“計劃名[P]”(推薦,這樣便于管理和識別),當然也可使用默認的“計劃名[P]”。而且還可以通過對“計劃名[P]”下的文本框中的內容進行確認,如有誤,則可通過單擊窗體中的“上一步[B]”按鈕退回到相應的窗體進行修改。
步驟9,完成步驟8后,單擊“完成”按鈕,則顯示“維護計劃已創建成功。”的提示框,再單擊“確定”按鈕即成功地設定了一個新的數據庫維護計劃。
已經成功地創建了一個新的數據庫維護計劃——“regie備份”。
第四步,維護和管理“數據庫維護計劃”。第三步完成后,對各個“數據庫維護計劃”的日常維護和管理都非常方便,只需要雙擊“數據庫維護計劃”即可對第三步中所涉及的內容進行變更、修正。
鼠標右鍵單擊“regie備份”,單擊“屬性[R]”,或者直接雙擊“regie備份”,打開“數據庫維護計劃”窗體。在此窗體中集成了第三步中涉及的所有功能,每項功能都能任意修改,修改過程與第三步中的相應步驟一樣。
但需要說明的是,在設定圖4.1-9中的“報表”選項卡下的“文本報表”中的“刪除早于此時間的文本報表文件[F]”選項時,也就是第三步中的步驟6中的內容,無論將其設定成“分鐘”、“小時”、“天”,還是“月”,創建成功后都將被自動地更正為“周”,而且以后無論如何修改,保存后再去查看時它仍將顯示為“周”,但這并不意味著其他選項無效,其他選項仍然有效。
第五步,啟動SQL Server 2000代理以便執行“作業”。完成第三步后,還需啟動SQL Server 2000 Agent(代理),以便執行“數據庫維護計劃”作業。
與展開SQL Server 2000“數據庫維護計劃”的步驟一樣,在“管理”項目中,可以發現存在一個“SQL Server代理”。
單擊“SQL Server代理”下的“作業”子菜單,在“企業管理器”窗口右側將會顯示出已經存在的作業項目。每個作業項目均包括以下數據列:
(1)名稱。當然是指作業的名稱,可以自定義,中英文皆可。為了理解方便,建議用中英文結合。每當新建立一個“數據庫維護計劃”,將自動生成以下默認名稱的作業:
1)當新建的“數據庫維護計劃”中設定了“備份數據庫”功能時,將生成默認名為“DB維護計劃‘******’的DB備份作業”的作業。
2)當新建的“數據庫維護計劃”中設定了“備份事務日志”功能時將生成默認名為“DB維護計劃‘******’的事務日志備份作業(多服務器)”的作業。
以上1)和2)中的“******”處將顯示“數據庫維護計劃”中的“計劃名”(也就是第三步步驟8中設定的“計劃名”)。
(2)分類。指明該作業當前所屬的類別。默認值為“[未分類(本地)]”。
(3)啟用。指明該作業是否處于“啟用”狀態。
(4)可運行。指明該作業是否處于“可運行”狀態。
(5)已調度。指明該作業是否處于“已調度”狀態。
(6)狀態。指明該作業當前的運行狀態——不在運行、正在運行。
7)上次運行狀態(開始日期):顯示最近一次運行該作業后的狀態(“已成功”、“失敗”,還是“未知”),以及運行時的日期和時間。
(8)下次運行日期:指明下一次運行該作業的日期和時間。
鼠標右鍵單擊“regie完全備份”作業,單擊“屬性[R]”,或者直接雙擊“regie完全備份”作業,打開作業的“屬性”窗體。在此窗體中集成了該作業的詳細的配置項。每個配置項都能任意修改。“屬性”窗體中有四個選項卡:
1)常規。在此選項卡中可以重新設定作業名稱(“名稱[N]”文本框)、修改作業的分類(“分類[Y]”下拉框)、指定作業的所有者(“所有者[W]”下拉框)、簡單地對作業進行描述(“描述[R]”文本框),以及決定是否啟用此作業(“啟用[E]”復選框)。
2)步驟。在此選項卡中可以新建、插入新的步驟,刪除、編輯已有的步驟。
單擊“編輯[E]”按鈕,在“編輯作業步驟”窗體中的“常規”選項卡中的“命令[M]”文本框中可以查閱到該作業的執行語句。
3)調度。在此選項卡中可以新建調度、新建警報,刪除、編輯已有的調度。
4)通知。在此選項卡中可以設定作業完成時(即當作業成功時、作業失敗時)執行的操作,即發送電子郵件、傳呼操作員、發出網絡警報信息、寫入Windows應用程序事件日志、自動刪除等操作。
第六步,檢查結果。經過上述五個步驟后,一個完整的備份數據庫的計劃就建立起來了??梢酝ㄟ^“資源管理器”來檢查備份目錄下是否存在相應地備份文件。
經過長時間的使用,如果以“保留2天的數據庫完全備份和2天的每個一小時的事務日志備份”的備份策略來正確地建立了一個完整的數據庫維護計劃的話,無論何時查看相應備份目錄下的文件,都應該存在102個文件:
(1)2個數據庫的完整備份,即2個以“數據庫名_db_yyyy mmddhhss.bak”格式為文件名的文件;
(2)3個與數據庫完整備份相對應的操作過程的記錄報告文件,即以“數據庫名”+“備份4_yyyymmddhhss.txt”格式為文件名的文件;
(3)48個事務日志的差異備份,即2天各24個以“數據庫名_tlog_yyyymmddhhss.trn”格式為文件名的文件;
(4)49個與事務日志的差異備份對應的操作過程的記錄報告文件,即以“數據庫名”+“備份6_vyyymmddhhss.txt”格式為文件名的文件。
以上文件名中,“數據庫名”為第三步的步驟一中選定的數據庫的名稱;“yyyym mddhhss”是時間戳,其格式為:“YYYY”指“年”(4位數值),“mm”指“月”(2位數值,不足2位的補“0”),“dd”指“日”(2位數值,不足2位的補“O”),“hh”指“時”(2位數值,不足2位的補“0”),“ss”指“分”(2位數值,不足2位的補“0”)。
3.結束語
對于一個企業而言,日常運作中發生的各種業務所產生的所有數據,經過計算機不斷地日積月累,逐漸成為公司的一種財富和資本。利用計算機,可以便捷地統計分析部分或全部的數據,通過各種形式的反饋(如圖表、表格等),給公司的決策層用于參考,便于為公司的今后決策提供指導和幫助。正基于此,這些數據的價值隨著時間的延續正呈現出幾何速度的增長。因此筆者認為,對于數據的備份工作是網管員日常工作中最重要的工作之一。
通過這次“數據庫維護計劃”的創建,筆者略有感受:
(1)經過這么長時間的運用,“數據庫維護計劃”仍然存在不足之處,雖說“數據庫維護計劃”功能很強大,但是它最終的結果是生成一項作業,由“SQL Server 2000 Agent”服務定期執行它來完成對數據庫的備份工作。這就要求“SQL Server 2000 Agent”服務能夠正常地“運行”。從多次安裝來看,在Windows 2000系統中“SQL Server 2000 Agent”服務能夠正常運行,而且能隨Windows 2000的啟動自動運行。但是在Window 98系統(包括第二版)中,卻不能正常運行。所以說,在Windows 98系統中即使依照上述步驟成功地創建了“數據庫維護計劃”,也會因為“SQL Server 2000 Agent”服務無法啟動而變得沒有任何作用。
(2)之所以選擇“完全備份”,主要在于,在進行完全備份時,SQL Server將.mdf與其對應的.1df文件進行對比,刪除一些舊的、不必要的日志,然后將.mdf和.1df文件進行合并、壓縮后一起存儲。其優點是能最大可能地、完整地保存數據庫;缺點是存儲量隨著數據庫的增大而增大,存儲時間也將隨著數據庫的增大而延長。
(3)在建立“數據庫維護計劃”過程,各位讀者應該盡可能地去使用各種選項、功能,以便加深對“數據庫維護計劃”的理解和掌握。
(4)雖然Intemet上有許多第三方備份軟件和工具,但是大多數是共享版。由于擔心知識產權問題、病毒問題和其他問題,所以筆者沒有試用這些第三方軟件。這樣的話,它們的性能就不清楚了。也許這些軟件的功能非常強大,能夠滿足更多的、更高的要求。在這里僅就Windows 2000和SQL Server 2000自帶的“備份”工具和軟件進行一個比較。