Veritabanı dökümünü alır ve geri yükleme MSDB veritabanını doldurma

Makale çevirileri Makale çevirileri
Makale numarası: 152354 - Bu makalenin geçerli olduğu ürünleri görün.
Bu makale arşivlenmiştir. "Olduğu gibi" sunulmaktadır ve bundan sonra güncelleştirilmeyecektir.
Hepsini aç | Hepsini kapa

Belirtiler

SQL tabanlı yönetim görevleri başarısız ve aşağıdaki hata iletisini döndürdü:
Hata: 1105, önem derecesi: 17, 2 durumu
Alan nesnesi ayrılamıyor ' %. * s 'veritabanındaki' %. * s ' için
' %. * s ' segment dolu. Syslogs alanı dışına çalıştırılmışsa, döküm
işlem günlüğü. Aksi halde, ALTER DATABASE veya sp_extendsegment için kullanın.
segment boyutunu artırın.
Başarısız olabilir SQL yönetici tabanlı görevler aşağıdakileri içerir:
  1. Zamanlanmış dökümleri ve geri yükler.
  2. Görevleri, çoğaltma için ayarlandı.
  3. Uyarılar.
  4. Web zamanlanmış görevler.

Neden

MSDB veritabanını dolu.

Pratik Çözüm

SQL Server 6.5, MSDB veritabanını yedekleme bilgilerini tutma yardımcı olması için aşağıdaki tablolar eklenmiştir:

sysbackupdetail: yedekleme (dump)</a0> için kullanılan aygıtların özetini belirtir.
sysbackuphistory: her yedekleme işlemi (dump) özetini belirtir.
sysrestoredetail: geri yüklemek için kullanılan (load) aygıtların özetini belirtir.
sysrestorehistory: (load) her geri yükleme işleminin özetini belirtir.

SQL Server, bir tam çevrimiçi yedekleme ve geri yükleme geçmişinde MSDB veritabanını otomatik olarak saklar. Bu bilgiler, kimin ne zaman yeniden yapılmadı, hangi aygıtları ve dosyalar üzerinde depolandığı yedekleme, gerçekleştirilen içerir.

MSDB veritabanını doldurma değil, emin olmak için bu tablolardaki eski girdileri silmek için bu tabloları izlemek sistem yöneticisi vardır.

Saklı yordamını MSDB veritabanını şu sistem tablolarında girişleri silmek için kullanılır.
use master
go
sp_configure 'allow', 1
go
reconfigure with override
go
drop 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
   end
go
sp_configure 'allow', 0
go
reconfigure with override
				
Sonra yeni oluşturulan depolanmış yordamı çalıştırması gerekecek. Örneğin, tüm girdileri silmek istediğiniz tabloları saklı yordamda oluşan 2 Ocak 1997 önce listelenen, aşağıdaki çalışır:
exec sp_cleanbackupRestore_log  '1/2/97'
				
kodu otomatikleştirmek istiyorsanız, aşağıdakine benzer kullanabilirsiniz:
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

				
Not: syslogs' nesne', lütfen Microsoft Knowledge Base'de aşağıdaki makaleye bakın için bir 1105 alırsanız,: 110139 - INF: Causes of SQL Transaction Log Filling Up.

Özellikler

Makale numarası: 152354 - Last Review: 30 Ocak 2014 Perşembe - Gözden geçirme: 4.0
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft SQL Server 6.5 Standard Edition
Anahtar Kelimeler: 
kbnosurvey kbarchive kbmt kbprb KB152354 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:152354

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com