主頁(yè) > 知識(shí)庫(kù) > mssql數(shù)據(jù)庫(kù)系統(tǒng)崩潰后的一般處理步驟與方法

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

熱門(mén)標(biāo)簽:沈陽(yáng)外呼系統(tǒng)有效果嗎 溫州語(yǔ)音外呼系統(tǒng)排名 AI智能云呼電話機(jī)器人怎么注冊(cè) 怎么在高德地圖標(biāo)注多個(gè)點(diǎn) 福州外呼系統(tǒng)招商 百度地圖標(biāo)注信息怎么修改 電話機(jī)器人接口是什么樣的 商家地圖標(biāo)注圖片 四川穩(wěn)定外呼系統(tǒng)公司
mssql數(shù)據(jù)庫(kù)系統(tǒng)崩潰后的一般處理步驟 
情況描述:
SQL Server 2000崩潰,重新安裝數(shù)據(jù)庫(kù)。
有以下準(zhǔn)備:
1, 三個(gè)系統(tǒng)庫(kù)(master,msdb,model)的完全備份:
2  兩個(gè)用戶數(shù)據(jù)庫(kù)(user01,user02)的備份(周日的完全備份+除周日外每天的差異備份):
三個(gè)系統(tǒng)數(shù)據(jù)庫(kù)是早期備份的,之間沒(méi)有更新過(guò)帳號(hào)信息,沒(méi)有增減過(guò)作業(yè)等等。
兩個(gè)用戶數(shù)據(jù)庫(kù)在上周日晚做過(guò)完全備份(user01.bak和user02.bak)
準(zhǔn)備重新安裝數(shù)據(jù)庫(kù),希望能一次性恢復(fù)到用戶數(shù)據(jù)庫(kù)最后一個(gè)備份前的狀態(tài)。
常規(guī)恢復(fù)過(guò)程大致如下
1. 備份可用的數(shù)據(jù), 包含所有系統(tǒng)數(shù)據(jù)庫(kù)和用戶數(shù)據(jù)庫(kù)的數(shù)據(jù)文件和日志文件(*.mdf/ldf/ndf)
2. 卸載原來(lái)的安裝
3. 系統(tǒng)表查找和刪除所有的MSSQLServer項(xiàng)
4. 磁盤(pán)上刪除安裝SQL SErver產(chǎn)生的所有文件
5. 重新安裝SQL Server,所需安裝的補(bǔ)丁的版本要求保持與備份系統(tǒng)數(shù)據(jù)庫(kù)時(shí)安裝的補(bǔ)丁版本一致
6. 單用戶模式下恢復(fù)master數(shù)據(jù)庫(kù)
7. 恢復(fù)其他系統(tǒng)數(shù)據(jù)庫(kù)
8. 恢復(fù)用戶數(shù)據(jù)庫(kù)
可以做的嘗試
如果時(shí)間比較充分,而且想盡量恢復(fù)數(shù)據(jù)到最近的時(shí)間點(diǎn), 可以在上述步驟中做下面的嘗試
1. 把6,7兩步改為:
a. 停止MSSQL服務(wù)
b. 用步驟1備份的系統(tǒng)數(shù)據(jù)庫(kù)的數(shù)據(jù)文件和日志文件替換安裝后生成的系統(tǒng)數(shù)據(jù)庫(kù)的對(duì)應(yīng)文件
c. 建立與SQL Server系統(tǒng)崩潰之前一樣的用戶數(shù)據(jù)庫(kù)的存放目錄, 并且把用戶數(shù)據(jù)庫(kù)文件按原來(lái)的位置存放
d. 啟動(dòng)MSSQL服務(wù)
e. 如果MSSQL服務(wù)成功, 在企業(yè)管理看看用戶數(shù)據(jù)庫(kù)有沒(méi)有置疑, 如果沒(méi)有置疑, 則其他操作都不用做了, 數(shù)據(jù)已經(jīng)恢復(fù)
注意:
    在做上面的步驟b之前, 先備份準(zhǔn)備覆蓋的文件
2. 如果步驟1的嘗試不成功, 則再做下面的嘗試, 把步驟8修改為下面的:
a. 停止MSSQL服務(wù)
b. 用備份的文件還原被覆蓋的文件
c. 嘗試用附加的方式恢復(fù)用戶數(shù)據(jù)庫(kù)
d. 如果成功, 則修復(fù)各用戶數(shù)據(jù)庫(kù)中的孤立用戶
恢復(fù)過(guò)程會(huì)涉及到的一些具體處理
1. 恢復(fù)系統(tǒng)數(shù)據(jù)庫(kù):
在SQL Server數(shù)據(jù)庫(kù)中,系統(tǒng)信息存儲(chǔ)在系統(tǒng)數(shù)據(jù)庫(kù)中,主要的系統(tǒng)數(shù)據(jù)庫(kù)包括: 
master-從整體上控制用戶數(shù)據(jù)庫(kù)和SQL Server操作,在創(chuàng)建了任何用戶定義的對(duì)象后,都要備份它
model-為新數(shù)據(jù)庫(kù)提供模版和原型 
msdb-包含了有關(guān)作業(yè)、報(bào)警及操作員等信息
如果包含系統(tǒng)數(shù)據(jù)庫(kù)的介質(zhì)變了,那么必須重建系統(tǒng)數(shù)據(jù)庫(kù),如果你仍然可以啟動(dòng)SQL Server服務(wù),則可以通過(guò)RESTORE語(yǔ)句從系統(tǒng)數(shù)據(jù)庫(kù)的備份中恢復(fù)數(shù)據(jù)庫(kù)。 
如果master壞了,不能啟動(dòng)系統(tǒng),可以按照下面步驟進(jìn)行恢復(fù) 
1. 重建系統(tǒng)數(shù)據(jù)庫(kù) 運(yùn)行c:\mssql7\binn\rebuildm.exe,按照提示進(jìn)行即可,
過(guò)程中需要系統(tǒng)數(shù)據(jù)庫(kù)樣本的路徑,可在安裝光盤(pán)中找到; 
2  重建系統(tǒng)數(shù)據(jù)庫(kù)后,啟動(dòng)SQL Server服務(wù),用系統(tǒng)數(shù)據(jù)庫(kù)的備份恢復(fù)數(shù)據(jù)庫(kù)
就行了通常恢復(fù)順序?yàn)閙aster->msdb->model 
在恢復(fù)master的備份時(shí)要注意:必須在單用戶(single user)模式下進(jìn)行
進(jìn)入單用戶模式的方法: 
a. 在命令行模式下輸入:sqlservr -c -f -m或者輸入sqlservr -m 
其中:-c 可以縮短啟動(dòng)時(shí)間,SQL Server 不作為Windows NT的服務(wù)啟動(dòng) 
-f 用最小配置啟動(dòng)SQL Server 
-m 單用戶模式啟動(dòng)SQL Server 
b. 可以在控制面板-服務(wù)-MSSQLServer的啟動(dòng)參數(shù)中輸入-c -f -m或者輸入-m,點(diǎn)擊開(kāi)始 
3. 進(jìn)行master數(shù)據(jù)庫(kù)的恢復(fù)
a. 直接進(jìn)入查詢分析器,有個(gè)提示不要理會(huì)它
輸入恢復(fù)語(yǔ)句進(jìn)行數(shù)據(jù)庫(kù)恢復(fù):
RESTORE DATABASE master from disk='c:\具體的備份文件名'
b. 或者用這個(gè),在命令提示符下輸入,注意大小寫(xiě)
使用"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ù)庫(kù)的具體步驟:
1. 恢復(fù)最近一次的完整備份
企業(yè)管理器--右鍵"數(shù)據(jù)庫(kù)"--所有任務(wù)--還原數(shù)據(jù)庫(kù)
--"還原為數(shù)據(jù)庫(kù)庫(kù)"中輸入還原后的數(shù)據(jù)庫(kù)名,設(shè)為:test
--還原選擇"從設(shè)備"--選擇設(shè)備--添加--添加你的備份文件
--確定,回到數(shù)據(jù)庫(kù)還原的界面
--"還原備份集",選擇"數(shù)據(jù)庫(kù)--完全"
--選項(xiàng)--將"移至物理文件名"中的物理文件名修改為你的數(shù)據(jù)文件要存放的文件名
--如果要還原的數(shù)據(jù)庫(kù)已經(jīng)存在,選擇"在現(xiàn)有數(shù)據(jù)庫(kù)上強(qiáng)制還原"
--"恢復(fù)完成狀態(tài)",選擇"使數(shù)據(jù)庫(kù)不再運(yùn)行,但能還原其它事務(wù)日志"
--確定
--或用SQL語(yǔ)句:
RESTORE DATABASE 數(shù)據(jù)庫(kù)名
FROM DISK = 'c:\你的完全備份文件名' 
WITH NORECOVERY
2. 恢復(fù)完全備份后, 最近一次的差異備份(如果有的話)
企業(yè)管理器--右鍵"數(shù)據(jù)庫(kù)"--所有任務(wù)--還原數(shù)據(jù)庫(kù)
--"還原為數(shù)據(jù)庫(kù)庫(kù)"中選擇數(shù)據(jù)庫(kù)名:test
--還原選擇"從設(shè)備"--選擇設(shè)備--添加--添加你的備份文件
--確定,回到數(shù)據(jù)庫(kù)還原的界面
--"還原備份集",選擇"數(shù)據(jù)庫(kù)--差異"
--"恢復(fù)完成狀態(tài)",選擇"使數(shù)據(jù)庫(kù)不再運(yùn)行,但能還原其它事務(wù)日志"
--確定
--或用SQL語(yǔ)句:
--或用SQL語(yǔ)句:
RESTORE DATABASE 數(shù)據(jù)庫(kù)名
FROM DISK = 'c:\你的差異備份文件名' 
WITH NORECOVERY
3. 按時(shí)間先后, 恢復(fù)差異備份后(如果沒(méi)有差異備份,則是完全備份)的所有日志備份
企業(yè)管理器--右鍵"數(shù)據(jù)庫(kù)"--所有任務(wù)--還原數(shù)據(jù)庫(kù)
--"還原為數(shù)據(jù)庫(kù)庫(kù)"中選擇數(shù)據(jù)庫(kù)名:test
--還原選擇"從設(shè)備"--選擇設(shè)備--添加--添加你的備份文件
--確定,回到數(shù)據(jù)庫(kù)還原的界面
--"還原備份集",選擇"事務(wù)日志"
--"恢復(fù)完成狀態(tài)"
   如果是恢復(fù)最后一個(gè)日志文件,選擇"使數(shù)據(jù)庫(kù)可以繼續(xù)運(yùn)行,但無(wú)法還原其它事務(wù)日志"
   否則選擇"使數(shù)據(jù)庫(kù)不再運(yùn)行,但能還原其它事務(wù)日志"
--確定
--或用SQL語(yǔ)句:
RESTORE DATABASE 數(shù)據(jù)庫(kù)名
FROM DISK = 'c:\你的日志文件名' 
WITH RECOVERY
3. 解決孤立用戶:
1. 查看某個(gè)數(shù)據(jù)庫(kù)的孤立用戶:
USE 庫(kù)名
EXEC sp_change_users_login 'Report'
2. 自動(dòng)修復(fù)某個(gè)孤立用戶:
USE 庫(kù)名
EXEC sp_change_users_login 'Auto_Fix', '孤立用戶名', NULL, '密碼'  
  --密碼指用戶對(duì)應(yīng)的登錄不存在時(shí), 系統(tǒng)自動(dòng)建立登錄, 為登錄分配的密碼

標(biāo)簽:無(wú)錫 邯鄲 西寧 營(yíng)口 寶雞 汕尾 來(lái)賓 七臺(tái)河

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《mssql數(shù)據(jù)庫(kù)系統(tǒng)崩潰后的一般處理步驟與方法》,本文關(guān)鍵詞  mssql,數(shù)據(jù)庫(kù),系統(tǒng),崩潰,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《mssql數(shù)據(jù)庫(kù)系統(tǒng)崩潰后的一般處理步驟與方法》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于mssql數(shù)據(jù)庫(kù)系統(tǒng)崩潰后的一般處理步驟與方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章