① 資料庫維護的工作的主要內容是什麼
資料庫日常維護工作是系統管理員的重要職責。其內容主要包括以下幾個部分:
一、備份系統數據
SYBASE 系統的備份與恢復機制保證了在系統失敗時重新獲取數據的可能性。SQL Server 提供了兩種不同類型的恢復機制:一類是系統自動完成的恢復,這種措施在每次系統啟動時都自動進行,保證了在系統癱瘓前完成的事務都寫到資料庫設備上,而未完成的事務都被回退;另一類是人工完成的恢復,這是通過 DUMP 和 LOAD 命令來執行人工備份和恢復工作。因此定期備份事務日誌和資料庫是一項十分重要的日常維護工作。
1、備份資料庫
每一個資料庫都應在創建之後卸出,從而提供一個裝入基點。在此之後按排定的時間周期表卸出。比如每周五卸出資料庫。對一般資料庫系統卸出資料庫周期建議為每周一次。
除了按計劃周期卸出資料庫之外,還需在每次運行沒有日誌的操作後卸出資料庫。例如:
·每次強制地運行了 DUMP TRAN WITH NO_LOG (因為資料庫的磁碟空溢出);
·每次用 sp_dboption 允許 select into/bulk 做快速拷貝,或用 SELECT INTO 命令創建一個永久性的表,或使用了 WRITETEXT 命令。
卸出資料庫的命令為:
DUMP DATABASE database_name
TO mp_device
database_name 是要卸出的資料庫名稱,mp_device 是卸出設備的名稱。用系統過程 sp_helpdevice 可以獲得設備的信息。
下面一條命令用來卸出資料庫 my_db :
DUMP DATABASE my_db
TO db_bk_dev
2、備份事務日誌
如果事務日誌與資料庫放在同一個設備上,則事務日誌不應與資料庫分開備份。master 資料庫和小於 4M 的用戶資料庫就是這種情況。一般資料庫系統的資料庫和日誌分別放在不同的設備上,因此,可以用 DUMP TRAN 命令單獨備份日誌。
備份事務日誌的周期直接影響數據的恢復程度,因此建議每天備份。
備份事務日誌的命令格式為:
DUMP TRANsaction database_name
[TO mp_device]
[WITH TRUNCATE_ONLYWITH NO_LOGWITH NO_TRUNCATE]
其中 database_name 是要備份事務的資料庫名稱,mp_device 是備份設備名稱,僅當包含了 WITH TRUNCATE_ONLY 或 WITH NO_LOG 子句時,才可以備份到設備。
注意:如果總是用 DUMP DATEBASE (備份資料庫及其日誌),而不用 DUMP TRAN ,事務日誌將不會刷新,而變得非常龐大。
對於 master 資料庫和小型資料庫每次運行 DUMP DATEBASE 之後應當運行 DUMP TRANsaction 命令刷新日誌 。
下面一條命令備份資料庫 db160 的事務日誌到備份設備上:
DUMP TRANsaction db160
TO db_log_bk_dev
WITH TRUNCATE_ONLY
3、備份資料庫及其日誌間的相互作用
在至少卸出一次資料庫前,卸出事務日誌是毫無意義的。下圖顯示了備份資料庫及其日誌間的關系
如果在星期二下午5:01出現非硬體故障,需要做的所有工作是裝入磁帶5(參見下一節:數據恢復),由於磁帶5是下午5:00剛備份的,因此只有備份和裝入之間的一分鍾內的數據損失。
但是,如果在星期二下午4:49失效會怎麼樣呢?在這種情況下,要裝入磁帶1(在星期五下午5:00的卸出)。然後,依次裝入磁帶2,3以及4。這樣,系統將恢復到星期二上午10:00點的狀態,星期二的大部分工作丟失了。此例顯示了經常卸出事務的重要性。
二、萬一系統失敗時恢復資料庫系統
如果用戶資料庫存儲的設備失效,從而資料庫被破壞或不可存取,通過裝入最新的資料庫備份以及後來的事務日誌備份可以恢復資料庫。假設當前的事務日誌存在於一個並沒有毀壞的設備上,帶著 WITH NO_TRUNCATE 選項的 DUMP TRANsaction 命令卸出它。
要恢復資料庫按如下步驟去做:
1、如果日誌存在於一個分離的設備上,用帶著 NO_TRUNCATE 選項的 DUMP TRANsaction 命令卸出被毀壞的或者不可存取的用戶資料庫事務日誌。
2、用下面的查詢檢查設備分配已毀壞資料庫的設備使用情況。必須為同一目的賦同樣的空間塊。
下面的查詢顯示了分配給資料庫 mydb 設備使用和尺寸情況:
SELECT segmap,size FROMsysusages
WHERE dbid =
( SELECT dbid FROM sysdatabases WHERE name = 「mydb」)
3、檢查查詢的輸出。在 segmap 列的 『3』代表數據分配,『4』代表日誌分配。size 列代表 2K 數據塊的數目。注意此信息的次序、使用和尺寸部分。例如,輸出為:
segmapSize
--------------------
310240//實際尺寸為:20M
35120//實際尺寸為:10M
45120//實際尺寸為:10M
31024//實際尺寸為:2M
42048//實際尺寸為:4M
4、用 DROP DATABASE 命令刪除毀壞設備上的資料庫。如果系統報錯,用DBCC DBREPAIR 命令的 DROPDB 選項。
5、刪除資料庫後,用 sp_dropdevice 刪除毀壞了的設備。
6、用 DISK INIT 初始化新的資料庫設備。
7、重建資料庫。用 CREATE DATABASE 命令從老的 sysusages 表拷貝所有的行,並包含第一邏輯設備。
對上例,命令為:
CREATE DATABASE mydb
ON datadev1=20,datadev2=10
LOG ON logdev1=10
8、用 ALTER DATABASE 命令重建其餘入口。在此例中,在datadev1上分配更多的空間,命令為:
ALTER DATABASE mydb ON datadev1=2
9、用 LOAD DATABASE 重新裝入資料庫,然後用 LOAD TRAN 裝入前面卸出的日誌。
LOAD DATABASE 命令語法是:
LOAD DATABASE database_name
FROM mp_device
LOAD TRANsaction 命令的語法是:
LOAD TRANsaction database_name
FROM mp_device
卸出資料庫和事務日誌的預設許可權歸資料庫所有者,且可以傳遞給其他用戶;裝載資料庫和事務的許可權也歸資料庫所有者,但不能傳遞。
二、產生用戶信息表,並為信息表授權;
系統維護人員的另一個日常事務是為用戶創建新的信息表,並為之授權。創建表以及為表授權的方法已經在講過,在此只將有關命令語法寫出來。
·創建表的命令為:
CREATE TABLE table_name
( column_1 datatype [NULL NOT NULL IDENTITY],
column_2 ……
)
go
ALTER TABLE table_name
ADD PRIMARY KEY (column_list)
go
·刪除表的命令格式為:
DROP TABLE table_name
go
·為表授權的命令格式為:
GRANT {ALLpermission_list}
ON table_name TO user_name
go
·收回許可權的命令格式為
REVOKE {ALLpermission_list}
ON table_name FROM user_name
go
三、監視系統運行狀況,及時處理系統錯誤;
系統管理員的另一項日常工作是監視系統運行情況。主要有以下幾個方面:
1、監視當前用戶以及進程的信息
使用系統過程:sp_who
說明:該命令顯示當前系統所有注冊用戶及進程信息,如下表是某系統的信息。
---------------------------------------------------------------
2SleepingNULL0MasterNETWORK HANDLE
3SleepingNULL0MasterDEADLOCK TUNE
4SleepingNULL0MasterMIRROR HANDLER
SLEEP
從左向右依次顯示:進程號、當前狀態、注冊用戶名、主機名、佔用塊數、資料庫名以及當前命令。
如果監視時發現進程總數接近最大連接數(用系統過程:sp_configure 「user conn」 查看)時,應下掉不活動或無關進程,以保證系統正常運做;另外亦可監視非法用戶或用戶使用不屬於自己使用范圍的資料庫等情況。
2、監視目標佔用空間情況
使用系統過程:sp_spaceused
說明:該過程顯示行數、數據頁數以及當前資料庫中由某個目標或所有目標所佔用的空間。如下表是某資料庫日誌表的信息:
NameRow_totalreserveddataIndex_sizeunused
------------------------------------------------------------
SyslogsNot avail32KB32KB0KBNot avail
日常要監視的主要目標有:用戶資料庫、資料庫日誌表(syslogs)以及計費原始數據表等。如果發現佔用空間過大,對日誌表要進行轉儲;對其他目標則應擴充空間或清楚垃圾數據。
3、監視 SQL Server 統計數字
使用系統過程:sp_monitor
說明:sp_monitor 顯示SQL Server 的歷史統計數字,下表是某系統的統計數字:
Last_runCurrent_runSeconds
---------------------------------------------------------------
May 13 2000 1:27PMMay 13 2000 3:01PM5678
CPU_busyIO_busyIdle
---------------------------------------------------------------
16(6)-0%0(0)-0%5727(5672)-99%
Packets_receivedPackets_sentPacket_errors
---------------------------------------------------------------
21(17)100(97)0(0)
Total_readTotal_writeTotal_errorsConnections
--------------------------------------------------------
785(366)311(113)0(0)3(2)
上表依次給出該系統本次運行統計的上一次時間、本次時間、間隔秒數、CPU佔用、IO佔用、收發包情況、系統讀入寫出情況等信息
四、保證系統數據安全,周期更改用戶口令;
為保證系統數據的安全,系統管理員必須依據系統的實際情況,執行一系列的安全保障措施。其中,周期性的更改用戶口令是比較常用且十分有效的措施。
更改用戶口令是通過調用系統過程sp_password 來實現的。Sp_password 的語法為:
sp_password caller_password,new_password [,loginame]
其中caller_password 是登錄口令(老口令),new_password是新口令,loginame是登錄名稱。
② 資料庫維護和管理是哪些內容
一般來說 維護的工作就是日常的監控和備份恢復工作。也有安裝,配置,啟動,關閉,優化的工作。可以查看你用的資料庫的管理員手冊,一般都有這樣的日常admin工作的清單。資料庫維護是指當一個資料庫被創建以後的工作都叫做資料庫維護。包括備份系統數據、恢復資料庫系統、產生用戶信息表,並為信息表授權、監視系統運行狀況,及時處理系統錯誤、保證系統數據安全,周期更改用戶口令。
③ 說說數據中心日常維護工作的那些事兒
數據中心要保持穩定的運行,需要大量的專業技術人員。一般承擔重要業務的數據中心都是有人24小時值守,無人值守的數據中心一般只能承擔不重要業務,完全無人管理維護的數據中心幾乎沒有。所以數據中心日常維護工作煩瑣,但又很重要。隨著人們的工作生活對數據的完全依賴,承載數據計算、運行的數據中心正發揮著越來越重要的作用,這更突顯出維護工作的重要。
當一個數據中心建成投產後,維護工作就開始了,一直到數據中心的生命周期結束。一般我們可以將數據中心的維護工作分為四大類:一是日常檢查類;二是應用變更、部署類;三是軟、硬體升級類;四是突發故障處理類,下面就來詳細說一說這些維護工作,讓大家對維護工作有個了解。
日常檢查
“千里之堤,潰於蟻穴”。任何的故障在出現之前都可能會有所表現,小的隱患不消除,可能導致重大的故障出現,所以數據中心日常的例行檢查工作枯燥,但也很重要,可以及時發現一些運行中的隱患。根據數據中心承載業務重要性的不同,要對數據中心裡的所有運行的設備進行例行檢查。一些數據中心設備廠商提供了檢查軟體,比如網管軟體,安全防護軟體等。可以利用這些軟體對數據中心網路進行檢查,看日誌是否有異常告警,網路是否出現過短時中斷,埠是否出現UP/DOWN等。通過網路探測軟體看網路質量如何。檢查伺服器應用服務是否正常,CPU內存等利用率是否正常。對應用業務進行檢查,比如如果有搜索業務,就可以通過伺服器進行單詞搜索,看搜索的結果和延遲是否在正常的范圍之內。這些檢查每日都要重復檢查,一旦有異常及時處理與消除,必要時將重要業務切換到備用環境中,然後排除後再切回。
對數據中心的機房環境也要進行檢查,環境的溫度、濕度、灰塵是否合乎要求。空調、供電系統進行運行良好,設備運行是否過熱,地板、天窗、消防、監控都是檢查的部分。不合理的地方要及時進行整改,而不應該偷懶。經常到一些數據中心,就會發現值班維護人員很多都抱著電腦在瀏覽網頁,打游戲。對於日常檢查應付一下,甚至根本不去檢查,只要沒有出現故障,就打游戲消耗時間,這樣數據中心出現故障是遲早的事。一旦出現故障就毛手毛腳,甚至哪個業務走的哪個設備,哪個埠哪個網線都不清楚,本來一個小故障可能因為不熟悉導致大故障,因此日常檢查絕不能應付,雖然需要不斷重復,但卻很重要,在持續的檢查過程中,將會對數據中心的理解越來越深,這樣每次檢查都會有新的發現,在檢查中進行學習。
應用變更
數據中心承載的業務不會是一成不變的,隨著業務的多樣化,經常要對業務進行調整,包括伺服器和網路的設置。因此要對伺服器和網路設備操作很熟悉,主要需要掌握Linux伺服器命令和網路協議。要根據應用的需要,做出變更。這時就對維護人員提出了更高的要求,不僅是對數據中心原有業務要非常熟悉,還要對新上的應用業務有正確的理解,這樣才能在不影響原有業務的基礎上做調整。這樣的應用變更每個月可能都要做幾次,是數據中心維護人員的必修課,突顯了一個技術人員的基本技能水平。這時要對設備操作命令比較熟悉,懂得如何實現業務,要經常和設備廠商的技術人員打交道,通過交流盡快掌握設備操作方法。同時,由於設備廠商對應用業務缺乏了解,這就需要維護人員在應用業務和設備具體實現之間做好協調,處理。以最快的時間和最小的代價完成應用業務部署。
軟硬體升級
數據中心的設備一般運行周期是五年,不斷地有設備需要逐漸淘汰進行更換,也有一些設備因為存在軟體缺陷需要升級,因此軟硬體升級也是維護工作的一部分,尤其是軟硬體出現故障時,就必須要進行更換。有時為了不影響業務,往往還需要設備廠商提供軟體補丁來解決問題。數據中心的設備成百上千,出現軟硬體故障很正常,所以要不斷地進行軟硬體升級,這類工作往往都要在業務量最少的'凌晨之後進行,維護人員通宵熬夜是常有的事,維護人員要有一個良好的身體素質,否則會吃不消。軟硬體升級時需要做好回退機制,以防升級出現問題時無法回退,業務長時間無法恢復。當接手數據中心維護工作就會發現,怎麼會有那麼多的升級,幾乎每個月都要有升級操作,熬夜升級工作成了維護人員的家常便飯。
突發故障
沒有任何一個數據中心是不出故障的,在數據中心運行的過程中都會出現這樣那樣的問題。這時就顯示出維護人員的高技能水平,根據統計百分之八十的故障都是人為故障,所以維護人員的水平高低往往決定了一個數據中心運行的穩定程度。另外對於突發故障,高水平的維護人員可以靜下心來冷靜分析故障的觸發原因,迅速找到解決的方法,如果在短時間內找不到解決方法,也可以通過切換到備用設備上先恢復業務,再進行分析。這時擁有高水平的維護人員對於一個數據中心至關重要,在關鍵時刻就能派上用場。
雖然這些工作看起來有些平常,但千萬別小看它們。數據中心維護工作實際上非常重要,關乎著整個數據中心業務的正常運行。目前市場上這類專業人才非常搶手,尤其對於具有較深故障排查水平的人才比較缺乏。只有重視數據中心的維護工作,才能給數據中心一個平安。
④ 資料庫維護具體是指做什麼
不可能所有資料庫都是一樣的啦
一般來說 維護的工作就是日常的監控和備份恢復工作
其實也有安裝,配置,啟動,關閉,優化的工作
查查你用的資料庫的管理員手冊,一般都有這樣的日常admin
工作的清單
不管如何,不會有這樣的專門的網站的。只有不同資料庫的
DBA TASK