亚洲欧美日韩综合系列在线_91精品人妻一区二区_欧美大肥婆一级特大AA片_九色91视频免费观看_亚洲综合国产精品_av中文字幕在线不卡_久久精品色综合网_看黄色视频的软件_无卡无码高清中文字幕码2024_亚洲欧美日韩天堂网

數(shù)據(jù)庫系統(tǒng)崩潰后的一般處理步驟

來源:轉(zhuǎn)載 發(fā)布時間:2019-01-14 15:22:00 閱讀量:995

情況描述:


SQL Server 2000崩潰,重新安裝數(shù)據(jù)庫。


有以下準(zhǔn)備:


1, 三個系統(tǒng)庫(master,msdb,model)的完全備份:


2  兩個用戶數(shù)據(jù)庫(user01,user02)的備份(周日的完全備份+除周日外每天的差異備份):


三個系統(tǒng)數(shù)據(jù)庫是早期備份的,之間沒有更新過帳號信息,沒有增減過作業(yè)等等。


兩個用戶數(shù)據(jù)庫在上周日晚做過完全備份(user01.bak和user02.bak)



 


準(zhǔn)備重新安裝數(shù)據(jù)庫,希望能一次性恢復(fù)到用戶數(shù)據(jù)庫最后一個備份前的狀態(tài)。



 



 


常規(guī)恢復(fù)過程大致如下




 


1. 備份可用的數(shù)據(jù), 包含所有系統(tǒng)數(shù)據(jù)庫和用戶數(shù)據(jù)庫的數(shù)據(jù)文件和日志文件(*.mdf/ldf/ndf)


2. 卸載原來的安裝


3. 系統(tǒng)表查找和刪除所有的MSSQLServer項(xiàng)


4. 磁盤上刪除安裝SQL SErver產(chǎn)生的所有文件



 


5. 重新安裝SQL Server,所需安裝的補(bǔ)丁的版本要求保持與備份系統(tǒng)數(shù)據(jù)庫時安裝的補(bǔ)丁版本一致



 


6. 單用戶模式下恢復(fù)master數(shù)據(jù)庫


7. 恢復(fù)其他系統(tǒng)數(shù)據(jù)庫


8. 恢復(fù)用戶數(shù)據(jù)庫



 



 


可以做的嘗試



如果時間比較充分,而且想盡量恢復(fù)數(shù)據(jù)到最近的時間點(diǎn), 可以在上述步驟中做下面的嘗試



 


1. 把6,7兩步改為:



a. 停止MSSQL服務(wù)


b. 用步驟1備份的系統(tǒng)數(shù)據(jù)庫的數(shù)據(jù)文件和日志文件替換安裝后生成的系統(tǒng)數(shù)據(jù)庫的對應(yīng)文件


c. 建立與SQL Server系統(tǒng)崩潰之前一樣的用戶數(shù)據(jù)庫的存放目錄, 并且把用戶數(shù)據(jù)庫文件按原來的位置存放


d. 啟動MSSQL服務(wù)


e. 如果MSSQL服務(wù)成功, 在企業(yè)管理看看用戶數(shù)據(jù)庫有沒有置疑, 如果沒有置疑, 則其他操作都不用做了, 數(shù)據(jù)已經(jīng)恢復(fù)



 


注意:


    在做上面的步驟b之前, 先備份準(zhǔn)備覆蓋的文件



 


2. 如果步驟1的嘗試不成功, 則再做下面的嘗試, 把步驟8修改為下面的:



a. 停止MSSQL服務(wù)


b. 用備份的文件還原被覆蓋的文件


c. 嘗試用附加的方式恢復(fù)用戶數(shù)據(jù)庫


d. 如果成功, 則修復(fù)各用戶數(shù)據(jù)庫中的孤立用戶



 



 


恢復(fù)過程會涉及到的一些具體處理




 


1. 恢復(fù)系統(tǒng)數(shù)據(jù)庫:



在SQL Server數(shù)據(jù)庫中,系統(tǒng)信息存儲在系統(tǒng)數(shù)據(jù)庫中,主要的系統(tǒng)數(shù)據(jù)庫包括:


master-從整體上控制用戶數(shù)據(jù)庫和SQL Server操作,在創(chuàng)建了任何用戶定義的對象后,都要備份它


model-為新數(shù)據(jù)庫提供模版和原型


msdb-包含了有關(guān)作業(yè)、報警及操作員等信息



 


如果包含系統(tǒng)數(shù)據(jù)庫的介質(zhì)變了,那么必須重建系統(tǒng)數(shù)據(jù)庫,如果你仍然可以啟動SQL Server服務(wù),則可以通過RESTORE語句從系統(tǒng)數(shù)據(jù)庫的備份中恢復(fù)數(shù)據(jù)庫。


如果master壞了,不能啟動系統(tǒng),可以按照下面步驟進(jìn)行恢復(fù)


1. 重建系統(tǒng)數(shù)據(jù)庫 運(yùn)行c:/mssql7/binn/rebuildm.exe,按照提示進(jìn)行即可,


過程中需要系統(tǒng)數(shù)據(jù)庫樣本的路徑,可在安裝光盤中找到;



 


2  重建系統(tǒng)數(shù)據(jù)庫后,啟動SQL Server服務(wù),用系統(tǒng)數(shù)據(jù)庫的備份恢復(fù)數(shù)據(jù)庫


就行了通?;謴?fù)順序?yàn)閙aster->msdb->model


在恢復(fù)master的備份時要注意:必須在單用戶(single user)模式下進(jìn)行


進(jìn)入單用戶模式的方法:


a. 在命令行模式下輸入:sqlservr -c -f -m或者輸入sqlservr -m


其中:-c 可以縮短啟動時間,SQL Server 不作為Windows NT的服務(wù)啟動


-f 用最小配置啟動SQL Server


-m 單用戶模式啟動SQL Server



 


b. 可以在控制面板-服務(wù)-MSSQLServer的啟動參數(shù)中輸入-c -f -m或者輸入-m,點(diǎn)擊開始


 


3. 進(jìn)行master數(shù)據(jù)庫的恢復(fù)


a. 直接進(jìn)入查詢分析器,有個提示不要理會它


輸入恢復(fù)語句進(jìn)行數(shù)據(jù)庫恢復(fù):


RESTORE DATABASE master from disk='c:/具體的備份文件名'



 


b. 或者用這個,在命令提示符下輸入,注意大小寫


使用"windows身份驗(yàn)證"的,輸入:isql /E


使用"sql server和windows身份驗(yàn)證"的,輸入:isql /U"用戶名" /P"密碼"


然后在出現(xiàn)的提示符下輸入(注意1>,2>是提示符):


1>RESTORE DATABASE master from disk='c:/具體的備份文件名'


2>GO



 


2. 還原數(shù)據(jù)庫的具體步驟:



1. 恢復(fù)最近一次的完整備份


企業(yè)管理器--右鍵"數(shù)據(jù)庫"--所有任務(wù)--還原數(shù)據(jù)庫


--"還原為數(shù)據(jù)庫庫"中輸入還原后的數(shù)據(jù)庫名,設(shè)為:test


--還原選擇"從設(shè)備"--選擇設(shè)備--添加--添加你的備份文件


--確定,回到數(shù)據(jù)庫還原的界面


--"還原備份集",選擇"數(shù)據(jù)庫--完全"


--選項(xiàng)--將"移至物理文件名"中的物理文件名修改為你的數(shù)據(jù)文件要存放的文件名


--如果要還原的數(shù)據(jù)庫已經(jīng)存在,選擇"在現(xiàn)有數(shù)據(jù)庫上強(qiáng)制還原"


--"恢復(fù)完成狀態(tài)",選擇"使數(shù)據(jù)庫不再運(yùn)行,但能還原其它事務(wù)日志"


--確定



 


--或用SQL語句:


RESTORE DATABASE 數(shù)據(jù)庫名


FROM DISK = 'c:/你的完全備份文件名'


WITH NORECOVERY



 



 


2. 恢復(fù)完全備份后, 最近一次的差異備份(如果有的話)


企業(yè)管理器--右鍵"數(shù)據(jù)庫"--所有任務(wù)--還原數(shù)據(jù)庫


--"還原為數(shù)據(jù)庫庫"中選擇數(shù)據(jù)庫名:test


--還原選擇"從設(shè)備"--選擇設(shè)備--添加--添加你的備份文件


--確定,回到數(shù)據(jù)庫還原的界面


--"還原備份集",選擇"數(shù)據(jù)庫--差異"


--"恢復(fù)完成狀態(tài)",選擇"使數(shù)據(jù)庫不再運(yùn)行,但能還原其它事務(wù)日志"


--確定



 


--或用SQL語句:


--或用SQL語句:


RESTORE DATABASE 數(shù)據(jù)庫名


FROM DISK = 'c:/你的差異備份文件名'


WITH NORECOVERY



 



 


3. 按時間先后, 恢復(fù)差異備份后(如果沒有差異備份,則是完全備份)的所有日志備份


企業(yè)管理器--右鍵"數(shù)據(jù)庫"--所有任務(wù)--還原數(shù)據(jù)庫


--"還原為數(shù)據(jù)庫庫"中選擇數(shù)據(jù)庫名:test


--還原選擇"從設(shè)備"--選擇設(shè)備--添加--添加你的備份文件


--確定,回到數(shù)據(jù)庫還原的界面


--"還原備份集",選擇"事務(wù)日志"


--"恢復(fù)完成狀態(tài)"


   如果是恢復(fù)最后一個日志文件,選擇"使數(shù)據(jù)庫可以繼續(xù)運(yùn)行,但無法還原其它事務(wù)日志"


   否則選擇"使數(shù)據(jù)庫不再運(yùn)行,但能還原其它事務(wù)日志"


--確定



 


--或用SQL語句:


RESTORE DATABASE 數(shù)據(jù)庫名


FROM DISK = 'c:/你的日志文件名'


WITH RECOVERY



 


3. 解決孤立用戶:



1. 查看某個數(shù)據(jù)庫的孤立用戶:


USE 庫名


EXEC sp_change_users_login 'Report'



 


2. 自動修復(fù)某個孤立用戶:


USE 庫名


EXEC sp_change_users_login 'Auto_Fix', '孤立用戶名', NULL, '密碼' 


  --密碼指用戶對應(yīng)的登錄不存在時, 系統(tǒng)自動建立登錄, 為登錄分配的密碼



標(biāo)簽: 數(shù)據(jù)庫
分享:
評論:
你還沒有登錄,請先