2017計(jì)算機(jī)等考三級(jí)數(shù)據(jù)庫基礎(chǔ):一次TempDB損毀的處理過程

字號(hào):


    故障環(huán)境:WinNT4.0Cluster+SQL Server7.0
    故障描述: 8:30左右發(fā)現(xiàn)資料庫當(dāng)機(jī),cluster作移轉(zhuǎn)後sql server無法起來,查看windows日志,有錯(cuò)誤紀(jì)錄如下
    事件類型: 錯(cuò)誤
    事件來源: ClusSvc
    事件類別目錄: (2052)
    事件識(shí)別碼: 1066
    日期: 2005-1-21
    時(shí)間: 8:23:20
    使用者: N/A
    電腦: TEST
    描述:
    Cluster disk resource Disk G:: is corrupt. Running ChkDsk /F to repair problems.
    請(qǐng)?jiān)?http://go.microsoft.com/fwlink/events.asp 查看說明及支援中心,以取得其他資訊。
    根據(jù)該錯(cuò)誤紀(jì)錄,需要對(duì)TEST\G做check disk.再對(duì)資料庫做完整backup後,停止cluster服務(wù),重起server後,chkdsk g: /f 執(zhí)行成功.再次啟動(dòng)sql server,依舊無法開啟,windows event log出下以下錯(cuò)誤
    事件類型: 資訊
    事件來源: MSSQLServer$TEST
    事件類別目錄: Server
    事件識(shí)別碼: 17055
    日期: 2005-1-21
    時(shí)間: 8:23:54
    使用者: N/A
    電腦: TEST
    描述:
    17052 :Database 'tempdb' cannot be opened. It has been marked SUSPECT by recovery. See the SQL Server errorlog for more information.
    請(qǐng)?jiān)?http://go.microsoft.com/fwlink/events.asp 查看說明及支援中心,以取得其他資訊。
    資料:
    0000: 9c 42 00 00 0a 00 00 00 ?B......
    ...
    0030: 00 00 ..
    在Microsoft網(wǎng)站查找17055,10752的錯(cuò)誤代碼沒有結(jié)果. 通過查找關(guān)鍵字 “Database 'tempdb' cannot be opened”,找到重建TempDB的一篇文章http://support.microsoft.com/default.aspx?scid=kb;en-us;288809
    處理方法: 根據(jù)微軟文檔,操作步驟如下
    1.設(shè)置SQL Server Virtul Server Name
    C:\> set _CLUSTER_NETWORK_NAME=YourSQLVirtualName
    2.命令行啟動(dòng)SQL Server單用戶模式(命令行窗口不能關(guān)閉)
    C:\> sqlservr -c -f -T3608 -T4022
    3.開啟查詢分析器,以SA登入,執(zhí)行系統(tǒng)存儲(chǔ)過程重設(shè)TempDB狀態(tài)
    exec master..sp_resetstatus Tempdb
    4.按CTRL+C關(guān)閉第2步的命令行窗口
    5.重新正常啟動(dòng)SQL Server,此時(shí)會(huì)自動(dòng)重建TempDB
    6.還原第1步的環(huán)境參數(shù)設(shè)置
    C:\> set _CLUSTER_NETWORK_NAME=
    至此,資料庫恢復(fù)正常.