資料庫傾印及還原可能會填滿向上 MSDB 資料庫

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

152354
本文已封存。本文係以「現狀」提供且不會再更新。
徵狀
SQL 執行工作失敗,並傳回下列錯誤訊息:
錯誤: 1105 嚴重性: 17,狀態 2
無法配置空間給物件 '%* s '在資料庫' %* s' 因為
' %* s ' 區段已滿。如果您已用完空間中 Syslogs,傾印在
交易記錄檔。否則,使用 ALTER 資料庫或 sp_extendsegment 到
增加區段的大小。
可能會失敗,[SQL 執行檔為基礎的工作包括:
  1. 已排程的傾印及還原。
  2. 工作設定為複寫。
  3. 警示。
  4. 已排程的 Web 工作。
發生的原因
MSDB 資料庫已滿。
其他可行方案
SQL Server 6.5 內以下表格已經加入至 MSDB 資料庫,協助您維護備份資訊:

sysbackupdetail: 指定用來備份 (傾印) 的裝置摘要。
sysbackuphistory: 指定的每個備份作業 (傾印) 的摘要。
sysrestoredetail: 指定用來還原裝置 (載入) 的摘要。
sysrestorehistory: 指定的每個還原作業 (載入) 的摘要。

SQL Server 會自動維護一個完成線上備份與還原歷程 MSDB 資料庫中。這項資訊包括誰執行的備份時所完成,和哪些裝置或檔案儲存在。

系統管理員有監視這些資料表若要刪除舊的項目,請確定 MSDB 資料庫並不填滿這些資料表中。

下列的預存程序來從這些系統資料表 MSDB 資料庫中刪除項目。
use mastergosp_configure 'allow', 1goreconfigure with overridegodrop proc sp_cleanbackupRestore_log   go   create proc sp_cleanbackupRestore_log   @DeleteBeforeDate datetime   as   begin      Delete from msdb.dbo.sysbackupdetail where backup_id         in (Select backup_id from msdb.dbo.sysbackuphistory where backup_start <=   @DeleteBeforeDate)      Delete from msdb.dbo.sysbackuphistory where backup_start  <=   @DeleteBeforeDate      Delete from msdb.dbo.sysrestoredetail where restore_id         in (Select restore_id from msdb.dbo.sysrestorehistory where backup_start <=   @DeleteBeforeDate)      Delete from msdb.dbo.sysrestorehistory where backup_start <=   @DeleteBeforeDate   endgosp_configure 'allow', 0goreconfigure with override				
然後您必須執行新建立的預存程序。例如如果您想要刪除中的所有項目資料表列出在預存程序中發生之前 1997 1 月 2,便會執行下列:
exec sp_cleanbackupRestore_log  '1/2/97'				
如果想將自動化程式碼可以使用類似下列:
declare @DeleteBeforeDate datetime-- Modify the second parameter as necessary.-- It is currently set to delete anything older than 60 days.select  @DeleteBeforeDate = DATEADD(day, -60, getdate())select  @DeleteBeforeDate   exec sp_cleanbackupRestore_log  @DeleteBeforeDate				
注意: 如果您收到一個 1105年如物件 'syslogs' 請參閱 「 Microsoft 知識庫 」 中下列文: 110139 - INF: Causes of SQL Transaction Log Filling Up

警告:本文已自動翻譯

內容

文章識別碼:152354 - 最後檢閱時間:09/30/2013 22:20:09 - 修訂: 4.0

  • Microsoft SQL Server 6.5 Standard Edition
  • kbnosurvey kbarchive kbmt kbprb KB152354 KbMtzh
意見反應