一次TempDB损毁的处理过程

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

故障環境:WinNT4.0Cluster+SQL Server7.0

故障描述: 8:30左右發現資料庫當機,cluster作移轉後sql server無法起來,查看windows日志,有錯誤紀錄如下

事件類型: 錯誤

事件來源: ClusSvc

事件類別目錄: (2052)

事件識別碼: 1066

日期: 2005-1-21

時間: 8:23:20

使用者: N/A

電腦: TEST

描述:

Cluster disk resource Disk G:: is corrupt. Running ChkDsk /F to repair problems.

請在 http://go.microsoft.com/fwlink/events.asp 查看說明及支援中心,以取得其他資訊。

根據該錯誤紀錄,需要對TEST\G做check disk.再對資料庫做完整backup後,停止cluster服務,重起server後,chkdsk g: /f 執行成功.再次啟動sql server,依舊無法開啟,windows event log出下以下錯誤

事件類型: 資訊

事件來源: MSSQLServer$TEST

事件類別目錄: Server

事件識別碼: 17055

日期: 2005-1-21

時間: 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.

請在 http://go.microsoft.com/fwlink/events.asp 查看說明及支援中心,以取得其他資訊。

資料:

0000: 9c 42 00 00 0a 00 00 00 ?B......

...

0030: 00 00 ..

在Microsoft網站查找17055,10752的錯誤代碼沒有結果. 通過查找關鍵字 “Database 'tempdb' cannot be opened”,找到重建TempDB的一篇文章http://support.microsoft.com/default.aspx?scid=kb;en-us;288809

處理方法: 根據微軟文檔,操作步驟如下

1.設置SQL Server Virtul Server Name

C:\> set _CLUSTER_NETWORK_NAME=YourSQLVirtualName

2.命令行啟動SQL Server單用戶模式(命令行窗口不能關閉)

C:\> sqlservr -c -f -T3608 -T4022

3.開啟查詢分析器,以SA登入,執行系統存儲過程重設TempDB狀態

exec master..sp_resetstatus Tempdb

4.按CTRL+C關閉第2步的命令行窗口

5.重新正常啟動SQL Server,此時會自動重建TempDB

6.還原第1步的環境參數設置

C:\> set _CLUSTER_NETWORK_NAME=

至此,資料庫恢復正常.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航