- 相關(guān)推薦
維護SQL Server 2005數據庫的方法
先裝上一個(gè)Microsoft SQL Server 2005 Service Pack 2 (SP 2),接著(zhù),我給大家展示數據庫維護計劃,可以用來(lái)管理工作臺中不同的結點(diǎn)。
這下面有一個(gè)維護計劃節點(diǎn)。目前為止,我這里還沒(méi)有建立一個(gè)任何的管理計劃。我們知道,數據庫的備份是一個(gè)很重要的事情,這是每位DBA每天要做的工作。這好比你自己家中的數據一樣,你的身份證也需要做一份拷貝,萬(wàn)一有一天丟了還可以拿出來(lái)用。我們數據庫也是同樣的道理。以前我見(jiàn)過(guò)很多的DBA他們非常的聰明,也非常的敬業(yè),但是忘了給數據庫做備份。做備份其實(shí)是簡(jiǎn)單的一件事。備份上,你可以設定你需要備份什么樣的數據庫?你使用什么樣的日程?比如說(shuō)是每天、每小時(shí)還是一星期一次的?你是做數據庫全部的備份還是做交易日程的備份?我給大家演示一下。
在畫(huà)面上我要建立一個(gè)新的維護計劃,我點(diǎn)擊鼠標右鍵建立新的維護計劃,自己起一個(gè)名字,比如我叫做PLAN1。這時(shí)候你會(huì )發(fā)現這需要有一個(gè)描述,描述給你自己看。你需要知道這里可以做什么用。在這個(gè)計劃下面還有一些計劃,要列出你需要做什么事情。我下面繼續給大家演示。子計劃像一個(gè)日歷,在這里你需要定義你使用什么樣的日程。
你用鼠標單擊就可以把這個(gè)計劃定上來(lái)了,下面你可以看到是自動(dòng)的,或者是使CPU變得顯眼些運行,或者在重復的一個(gè)時(shí)間只定義一次。比如我們選擇重復的時(shí)間,在這里你可以說(shuō)明是每天跑一次,還是每一星期或者是一個(gè)月跑一次。我選擇了每天跑一次,你還可以具體定義為幾天跑一次?如果是選擇每星期的話(huà),你還可以選擇是這個(gè)星期中的任何一天。在每一次運行時(shí),比如說(shuō)每天運行一次,你可以選擇一個(gè)時(shí)間,比如說(shuō)每一小時(shí)、每?jì)蓚(gè)小時(shí)等等。如果你需要一小時(shí)一次或者是一分鐘一次,你還可以講明是什么時(shí)候開(kāi)始的?比如你只希望在夜晚,比如說(shuō)晚上12點(diǎn),這都是可以自己調整的。
這個(gè)計劃是從什么時(shí)候開(kāi)始做,比如說(shuō)今天開(kāi)始做,是否有終止日期?如果有,你可以說(shuō)明終止日期,如果沒(méi)有就可以表示出沒(méi)有。這樣就可以把時(shí)間表定義完了。我們定義時(shí)間表之后,要考慮維護計劃到底做什么?這里面有不同的事情可以做。第一,你可以在上面備份數據庫。你可以檢查數據庫的一致性,也可以運行一個(gè)代理SQL Server的任務(wù)。你可以使用一個(gè)語(yǔ)句,做一些歷史清除,或者是維護歷史清除工作,還可以履行告知操作員的工作。比如說(shuō)你可以定義一些事件,當這些事件發(fā)生時(shí),可以自動(dòng)告知操作員。通過(guò)重建、索引,也可以對索引進(jìn)行重組。
如果數據庫比較空,你可以對它進(jìn)行壓縮。因為統計數字涉及到我這一個(gè)表中對于不同直列的統計表,我查詢(xún)的優(yōu)化器是要利用這些數字決定什么樣的查詢(xún)計劃是一個(gè)好的計劃。所以,我們在數據庫中要求數字是準確的,F在我們做一個(gè)簡(jiǎn)單的事情——備份。這時(shí)候怎么辦呢?你可以把Drawer拉過(guò)來(lái)放進(jìn)去。在這里,我可以在數據庫做一個(gè)備份的計劃,里面還有一些細節的問(wèn)題。
你需要來(lái)進(jìn)行定義,F在我是把這塊進(jìn)行了定義,你定義是由本地服務(wù)器連接,你是做差異認證還是做Fillback,這時(shí)候你可以從Master、model、msdb、Northwind、Pubs中選擇,這時(shí)候我可以簡(jiǎn)單選擇兩個(gè);蛘吣氵x擇上面的System Databases等等,你可以有四種不同的選擇。我這里面選擇兩個(gè)Databases就可以了。這里面有一些功能,比如你要把每個(gè)Databases要有一個(gè)Backup files。在這里你還需要檢查數據庫的完整性,這些都屬于可選項目。你選擇之后,可以看到剛才的紅叉沒(méi)有了,表示現在我已經(jīng)把這個(gè)定義完成了。
現在我的時(shí)間表定義的是每天運行一次,每晚12點(diǎn)。所以到今天晚上12點(diǎn),如果我的機器是開(kāi)著(zhù)的,就可以對每個(gè)數據庫實(shí)現一個(gè)backup。我覺(jué)得SQL Server 2005比起2000版本進(jìn)步了很多。
總結:我們做這個(gè)演示的目的是想告訴你,定義一個(gè)數據庫的維護計劃是非常簡(jiǎn)單的一件事。你并不需要有特別高深的技術(shù),只是很普通的人都可以做到這件事,你只要選擇好這個(gè)東西,它就會(huì )為你做。這種簡(jiǎn)單易操作性是SQL Server重要的一個(gè)特性。我們一直認為我們SQL Server使用起來(lái)很簡(jiǎn)單,我們一直為這件事情覺(jué)得很驕傲。