以文本方式查看主題 - 昂捷論壇 (http://www.26035.net/bbs/index.asp) -- □-技術(shù)研討會 (http://www.26035.net/bbs/list.asp?boardid=36) ---- 解決數(shù)據(jù)庫維護計劃失敗的問題 (http://www.26035.net/bbs/dispbbs.asp?boardid=36&id=290) |
|||||||||||||||||||||||||
-- 作者:大腦袋 -- 發(fā)布時間:2005/11/14 10:58:41 -- 解決數(shù)據(jù)庫維護計劃失敗的問題
本文的發(fā)布號曾為 CHS288577
概要如果數(shù)據(jù)庫維護計劃中的任何任務(wù)失敗或遇到錯誤信息,則維護計劃作業(yè)本身可能顯示為失敗。作業(yè)歷史記錄詳細(xì)信息顯示以下錯誤信息:
sqlmaint.exe failed.[SQLSTATE 42000] (Error 22029).The step failed. 但是,這不一定指示整個維護計劃都失敗。維護計劃作業(yè)顯示失敗狀態(tài),以便引發(fā)一個標(biāo)志,指示讓用戶注意的維護計劃中的某一任務(wù)。此類型的行為很常見,因為可能會遇到需要用戶干預(yù)來解決的錯誤。只要某一維護計劃作業(yè)失敗,您就必須檢查計劃歷史記錄以查看錯誤情況,然后采取適當(dāng)?shù)拇胧﹣斫鉀Q該問題。 更多信息為了找出與導(dǎo)致作業(yè)失敗的原因有關(guān)的特定任務(wù)和錯誤信息,您需要檢查數(shù)據(jù)庫維護計劃歷史記錄。在數(shù)據(jù)庫維護計劃歷史記錄中,您可以獲取與該維護計劃正執(zhí)行的每一任務(wù)有關(guān)的詳細(xì)信息。使用以下步驟在 SQL Server 企業(yè)管理器中找到這些信息:
您還可以將詳細(xì)的維護計劃信息寫入一個文件。若要將詳細(xì)的維護計劃信息寫入一個文件,請使用以下步驟:
|
|||||||||||||||||||||||||
-- 作者:大腦袋 -- 發(fā)布時間:2005/11/22 9:27:18 -- 今天發(fā)現(xiàn)維護計劃失敗,是因為 ------------------------------------------------------------------------------ 正在為表“tbs_d_supp”重建索引 [Microsoft SQL-DMO (ODBC SQLState: HY000)] 錯誤 3624: [Microsoft][ODBC SQL Server Driver][SQL Server] [Microsoft][ODBC SQL Server Driver][SQL Server]Location: recbase.cpp:1374 Expression: m_nVars > 0 SPID: 56 Process ID: 1748 ** 執(zhí)行時間: 0 小時,33 分鐘,21 秒 ** 結(jié)束維護計劃“數(shù)據(jù)庫維護計劃1”(在 2005-11-22 8:09:07 上) SQLMAINT.EXE 進程退出代碼: 1 (失敗) ------------------------------------------------------------------------------- 而這個錯誤是因為tbs_d_supp這個表的一致性錯誤引起的 ---------------------------- dbcc checktable(\'tbs_d_supp\') ---------------------------- 服務(wù)器: 消息 8928,級別 16,狀態(tài) 1,行 1 對象 ID 426848983,索引 ID 0: 未能處理頁 (1:618084)。詳細(xì)信息請參閱其它錯誤。 服務(wù)器: 消息 8944,級別 16,狀態(tài) 1,行 1 表錯誤: 對象 ID 426848983,索引 ID 0,頁 (1:618084),行 83。測試(nVarCols && (hdr->r_tagA & VARIABLE_COLUMNS))失敗。值為 0 和 32。 \'tbs_d_supp\' 的 DBCC 結(jié)果。 對象 \'tbs_d_supp\' 有 503837 行,這些行位于 5617 頁中。 CHECKTABLE 發(fā)現(xiàn)了 0 個分配錯誤和 2 個一致性錯誤(在表 \'tbs_d_supp\' 中,該表的對象 ID 為 426848983)。 repair_allow_data_loss 是最低的修復(fù)級別(對于由 DBCC CHECKTABLE (enjoy_store.dbo.tbs_d_supp ) 發(fā)現(xiàn)的錯誤而言)。 --------------------------------------------------------------------------------------- |
|||||||||||||||||||||||||
-- 作者:大腦袋 -- 發(fā)布時間:2005/11/22 9:31:12 -- 另外如果維護計劃選擇了"檢查數(shù)據(jù)庫完整性-->嘗試修復(fù)所有小問題" 則執(zhí)行是需要在單用戶模式下,如果有人連接著數(shù)據(jù)庫,有可能使維護計劃失敗。 ------------------------------------------------------------------------------ Microsoft (R) SQLMaint 實用工具(Unicode),版本 登錄到 SQL Server“GHSS_DSRV01”以“NT AUTHORITY\\SYSTEM”(受信任)身份 開始維護計劃“數(shù)據(jù)庫維護計劃1”(在 2005-11-22 7:36:18 上) [Microsoft SQL-DMO (ODBC SQLState: 42000)] 錯誤 5070: [Microsoft][ODBC SQL Server Driver][SQL Server]如果其他用戶正使用數(shù)據(jù)庫 \'enjoy_store\',則數(shù)據(jù)庫狀態(tài)不能更改 [Microsoft][ODBC SQL Server Driver][SQL Server]ALTER DATABASE 語句失敗。 [Microsoft][ODBC SQL Server Driver][SQL Server]sp_dboption 命令失敗。 [1] 數(shù)據(jù)庫 enjoy_store: 檢查數(shù)據(jù)和索引鏈接... [Microsoft SQL-DMO (ODBC SQLState: 42000)] 錯誤 7919: [Microsoft][ODBC SQL Server Driver][SQL Server]未處理修復(fù)語句。數(shù)據(jù)庫需要處于單用戶模式下。 發(fā)現(xiàn)下列錯誤: [Microsoft][ODBC SQL Server Driver][SQL Server]未處理修復(fù)語句。數(shù)據(jù)庫需要處于單用戶模式下。 ** 執(zhí)行時間: 0 小時,0 分鐘,1 秒 ** 結(jié)束維護計劃“數(shù)據(jù)庫維護計劃1”(在 2005-11-22 8:09:12 上) SQLMAINT.EXE 進程退出代碼: 1 (失敗) |