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