讓SQL Server數(shù)據(jù)庫自動執(zhí)行管理任務(wù)(一)_Mssql數(shù)據(jù)庫教程
推薦:解析Oracle數(shù)據(jù)庫編寫有效事務(wù)指導(dǎo)方針數(shù)據(jù)共享是數(shù)據(jù)庫最基本的特征之一。但是數(shù)據(jù)共享雖然為員工帶來了便利,但也產(chǎn)生了一些負(fù)面作用。例如因用戶并發(fā)存取而導(dǎo)致的對數(shù)據(jù)一致性的破壞、由于在修改數(shù)據(jù)過程中的意外事故導(dǎo)致數(shù)據(jù)完整性破壞、非法用戶未經(jīng)授權(quán)修改數(shù)據(jù)等等。所以,在數(shù)據(jù)庫設(shè)計(jì)過
如要讓數(shù)據(jù)庫進(jìn)行自動管理,則管理員需要預(yù)先定義一些可預(yù)測的管理任務(wù)以及這些任務(wù)發(fā)送的條件。當(dāng)滿足這些指定的條件,則數(shù)據(jù)庫會自動運(yùn)行管理員指定的操作。使用自動管理來處理日常事務(wù),則讓管理員可以抽出時間去關(guān)注其他的事情,如數(shù)據(jù)庫優(yōu)化等等更加具有價(jià)值的作業(yè)。
計(jì)劃就是自動化管理組件的一個成員。計(jì)劃指定了作業(yè)運(yùn)行的時間。多個作業(yè)可以根據(jù)一個計(jì)劃運(yùn)行;多個計(jì)劃也可以應(yīng)用到一個作業(yè)。但是這個時間跟我們普通上的幾點(diǎn)幾分又有差異。這個時間不僅指特定的日期或者時間,而且還可以表示特定的時間。如當(dāng)SQL Server代理啟動的時候或者服務(wù)器的CPU使用率處于定義的空閑狀態(tài)水平時。也就是說,這里指的時間計(jì)劃也可以實(shí)現(xiàn)一定的條件狀態(tài)控制。簡而言之,計(jì)劃作業(yè)就是定義使得作業(yè)在沒有哦能夠互交互情況下開始運(yùn)行的條件,包括具體的日期或者特定的在狀況。通過為作業(yè)創(chuàng)建新計(jì)劃或者將現(xiàn)有的計(jì)劃添加到作業(yè)可以將作業(yè)計(jì)劃設(shè)置為自動運(yùn)行。不過在設(shè)置自動執(zhí)行計(jì)劃的時候,需要注意一個問題。即一次只能夠運(yùn)行一個作業(yè)實(shí)例。如果在作業(yè)按計(jì)劃運(yùn)行時嘗試手工運(yùn)行該作業(yè),則SQL Server代理將拒絕這個請求。另外,即使計(jì)劃未啟用,作業(yè)仍可以為響應(yīng)警報(bào)而運(yùn)行,或者由用戶手動運(yùn)行。如果作業(yè)計(jì)劃未啟用,則任何使用該計(jì)劃的作業(yè)都不會啟用該計(jì)劃。
一、 計(jì)劃觸發(fā)的時間與事件。
上面筆者說過,計(jì)劃可以基于特定的時間與事件而觸發(fā)。那么這些具體的時間與事件是什么呢?筆者平時用到的最多的就是如下幾種情況。
一是特定的日期和時間運(yùn)行一次。這個計(jì)劃時間在數(shù)據(jù)庫備份的時候特別有用。大家都知道,數(shù)據(jù)庫備份會占用比較多的系統(tǒng)資源。如果在數(shù)據(jù)庫服務(wù)器使用高峰期(如白天上班時間)進(jìn)行備份的話,那么會對用戶的訪問造成比較大的影響。為此筆者就把數(shù)據(jù)庫備份的時間放在晚上12點(diǎn)之后。這個時段相對來說,很少有用戶會訪問數(shù)據(jù)庫。此時管理員就可以利用計(jì)劃功能,讓其在每天的12點(diǎn)之后進(jìn)行數(shù)據(jù)庫備份。這就是基于特定的日期和時間計(jì)劃的典型應(yīng)用。
二是安重復(fù)執(zhí)行的計(jì)劃運(yùn)行。這個跟上面講的特定日期和時間運(yùn)行一次比較類似。只是上面的情況只運(yùn)行一次。而這個按重復(fù)執(zhí)行計(jì)劃運(yùn)行則是指會重復(fù)運(yùn)行多次。如每天晚上12點(diǎn)都進(jìn)行數(shù)據(jù)庫備份等等。在實(shí)際工作中,特定日期和時間運(yùn)新一次往往只是針對一些特殊的情況。如今天剛對數(shù)據(jù)庫結(jié)構(gòu)進(jìn)行了比較大的更改,如添加了幾張表或者視圖,此時就需要對數(shù)據(jù)庫進(jìn)行一次完全備份。如故不急于進(jìn)行備份的話,則就可以建立一個在特定的日期和時間運(yùn)行的數(shù)據(jù)庫完全備份計(jì)劃,讓其在午后進(jìn)行數(shù)據(jù)庫備份。但是對于常規(guī)的數(shù)據(jù)庫備份,則需要采取這個按重復(fù)執(zhí)行計(jì)劃運(yùn)行。
三是當(dāng)計(jì)算機(jī)的CPU使用率處于定義的空閑狀態(tài)水平時。也就是說,數(shù)據(jù)庫服務(wù)器當(dāng)前的CPU使用率比較低,可以執(zhí)行其他一些比較復(fù)雜的管理任務(wù)。如有些數(shù)據(jù)庫系統(tǒng)在設(shè)計(jì)的時候,有一個庫存補(bǔ)貨點(diǎn)作業(yè)。當(dāng)庫存低于安全庫存的時候,系統(tǒng)就會自動生成一張物料請購單,來滿足安全庫存的需要。由于這張表設(shè)計(jì)到的物料比較多,會占用比較多的系統(tǒng)資源。故可以設(shè)置每天運(yùn)行一次,而運(yùn)行的時間就定在CPU使用率比較低的時候。如此就可以減少對其他作業(yè)造成的負(fù)面影響。
二、 CPU空閑計(jì)劃的典型應(yīng)用。
其他的幾種計(jì)劃類型,不少數(shù)據(jù)庫管理員已經(jīng)非常了解。筆者今天想談的是CPU空閑計(jì)劃的應(yīng)用。這個計(jì)劃如果應(yīng)用的好的話,可以大大提高數(shù)據(jù)庫的性能。如果要想利用好這個功能,則需要回答如下兩個問題。
一是什么作業(yè)需要使用CPU空閑計(jì)劃?這個問題比較難回答。從理論上來說,任何作業(yè)都可以采用CPU空閑計(jì)劃在自動執(zhí)行。只是他們帶來的效果不同。有的作業(yè)即使采用了CPU空閑計(jì)劃,也不能夠帶來很大的性能改善。簡單的來說,一些占用CPU資源比較大的作業(yè),采用CPU空間計(jì)劃規(guī)則來自動執(zhí)行,可以取得比較好的效果。如數(shù)據(jù)庫有時候需要重新生成索引,這項(xiàng)工作會占用比較多的CPU資源。而且隨著數(shù)據(jù)量的增多,這個CPU使用率也會越來越高。為此,如果可以把重新生成索引的作業(yè),放在CPU空閑時間來進(jìn)行的話,那么對于提高數(shù)據(jù)庫的性能效果是比較明顯的。總之當(dāng)某個作業(yè)比較復(fù)雜,可能需要占用到比較多的CPU或者內(nèi)存資源的話,則可以采用這個CPU空閑計(jì)劃。
分享:淺談SQL Server中鏈接服務(wù)器將替代遠(yuǎn)程服務(wù)器遠(yuǎn)程服務(wù)器配置可以使得數(shù)據(jù)庫管理員在服務(wù)器以外的主機(jī)上連接到一個SQL Server實(shí)例,以便管理員在沒有建立單據(jù)連接的情況下在其他的SQL Server實(shí)例上執(zhí)行存儲過程等相關(guān)操作。在遠(yuǎn)程服務(wù)器配置模式下,客戶端所連接發(fā)服務(wù)器接受客戶端的請求,并代表客戶端
- sql 語句練習(xí)與答案
- 深入C++ string.find()函數(shù)的用法總結(jié)
- SQL Server中刪除重復(fù)數(shù)據(jù)的幾個方法
- sql刪除重復(fù)數(shù)據(jù)的詳細(xì)方法
- SQL SERVER 2000安裝教程圖文詳解
- 使用sql server management studio 2008 無法查看數(shù)據(jù)庫,提示 無法為該請求檢索數(shù)據(jù) 錯誤916解決方法
- SQLServer日志清空語句(sql2000,sql2005,sql2008)
- Sql Server 2008完全卸載方法(其他版本類似)
- sql server 2008 不允許保存更改,您所做的更改要求刪除并重新創(chuàng)建以下表
- SQL Server 2008 清空刪除日志文件(瞬間日志變幾M)
- Win7系統(tǒng)安裝MySQL5.5.21圖解教程
- 將DataTable作為存儲過程參數(shù)的用法實(shí)例詳解
Mssql數(shù)據(jù)庫教程Rss訂閱編程教程搜索
Mssql數(shù)據(jù)庫教程推薦
- SQLite數(shù)據(jù)庫管理相關(guān)命令的使用介紹
- SQL Server 2005基于消息的應(yīng)用程序介紹
- 比較SQL Server數(shù)據(jù)庫導(dǎo)入導(dǎo)出數(shù)據(jù)方式
- 淺談SQL Server跟蹤數(shù)據(jù)實(shí)現(xiàn)索引優(yōu)化向?qū)?/a>
- 解析數(shù)據(jù)庫大戰(zhàn): MS SQL Server IBM DB2
- SQL SQL Server 2008中的新日期數(shù)據(jù)類型
- 解讀SQL中自己創(chuàng)建函數(shù) 分割字符串
- 跟蹤SQL 2008的變更數(shù)據(jù)可變部分
- SQL Server 索引基礎(chǔ)知識(1)--- 記錄數(shù)據(jù)的基本格式
- 關(guān)于Oracle數(shù)據(jù)庫與SQL Server數(shù)據(jù)庫鏡像的關(guān)系
猜你也喜歡看這些
- mysql 無法連接問題的定位和修復(fù)過程分享
- 淺談SQLite時間函數(shù)的使用說明與總結(jié)分析
- sql語句:拷貝表,復(fù)制表
- 解析mysql與Oracle update的區(qū)別
- 解決MYSQL出現(xiàn)Can''t create/write to file ''#sql_5c0_0.MYD''的問題
- CentOS6.3安裝MySQL5.6.10并修改MySQL的root用戶密碼
- 網(wǎng)站模板:利用Shell腳本實(shí)現(xiàn)遠(yuǎn)程MySQL自動查詢
- MySQL筆記之修改數(shù)據(jù)的解決方法
- MySQL筆記之?dāng)?shù)據(jù)備份與還原的使用詳解
- 用MyEclipse配置DataBase Explorer(圖示)
- 相關(guān)鏈接:
- 教程說明:
Mssql數(shù)據(jù)庫教程-讓SQL Server數(shù)據(jù)庫自動執(zhí)行管理任務(wù)(一)
。