Aracılığıyla paylaş


Nasıl Yapılır: Bir işlem günlük uygulama yedek (Transact-SQL)

Işlem günlüğü uygulamak yedek veritabanına aşağıdaki doğru olması gerekir:

  • Önce en son tam veya farklı veritabanı yedek olan oluşturulan veritabanı tam kurtarma modeli veya toplu günlük kurtarma modeli kullanmakta olduğunuz gerekir.

  • Geri yükleme sırası WITH NORECOVERY'YI önceki yedeklerini geri yüklerken belirtmiş olmanız gerekir.

  • Içinde günlük zinciri tüm boşlukları olmadan oluşturuldukları sırada günlüğü yedekleri de uygulanmalıdır.Son günlüğü haricinde yedek, WITH NORECOVERY'YI, aşağıdaki gibi kullanın:

    RESTORE LOG <database_name> FROM <backup_device> WITH NORECOVERY;
    
  • Son günlüğü yedeklemesini uygularken, aşağıdakilerden birini yapabilirsiniz:

    • Son yedek LOG bir parçası olarak veritabanını kurtarmak deyim:

      RESTORE LOG <database_name> FROM <backup_device> WITH RECOVERY;
      GO
      
    • Ayrı bir geri yükleme DATABASE deyimini kullanarak veritabanını kurtarmak için bekleme süresi:

      RESTORE LOG <database_name> FROM <backup_device> WITH NORECOVERY; 
      RESTORE DATABASE <database_name> WITH RECOVERY;
      GO
      

      Veritabanını kurtarmak üzere bekleyen tüm gerekli günlüğü yedeklerini geri olduğunu doğrulayın olanağı verir.Bu yaklaşım, genellikle bir saat noktasına geri yükleme yapılırken önerilir.

Important noteImportant Note:

Her zaman açıkça WITH NOkurtarma'YI veya WITH kurtarma her geri yükleme belirttiğiniz öneririz deyim belirsizlik elemek için.Komut dosyaları yazarken bu özellikle önemlidir.

Işlem günlüğü uygulamak yedek

  1. Işlem günlüğü uygulamak geri yükleme LOG deyimini yürütmek yedek, belirtme:

    • Işlem günlüğü uygulanacağı veritabanının adı.

    • yedek aygıtının yeri hareket günlük yedeği gelen geri yüklenir.

    • NORECOVERY'YI yan tümce.

    Bu tablo için bir temel sözdizimi aşağıdaki gibidir:

    geri yükleme GÜNLÜK veritabanı_adı < Backup_device > WITH NORECOVERY'YI.

    Where database_name is the name of database and <backup_device>is the name of the device that contains the log backup being restored.

  2. Her hareket günlüğü için yineleme adım 1 yedek uygulamanız gerekmez.

  3. Son yedek, geri yükleme sırasındaki geri yükledikten sonra kurtarmak için veritabanını kullanmak aşağıdaki deyim:

    GERİ YÜKLEME veritabanı_adı kurtarma

    Important noteImportant Note:

    Yansıtmayı bir veritabanı oluşturuyorsanız, Kurtarma adımı atlayın.yansıtma veritabanı RESTORING durumda kalması gerekir.

Example

Varsayılan olarak, AdventureWorks Veritabanı basit kurtarma modeli kullanır. Aşağıdaki örnekler aşağıdaki gibi tam kurtarma modeli, kullanmak istediğiniz veritabanını değiştirme gerektirir:

ALTER DATABASE AdventureWorks SET RECOVERY FULL

C.Tek bir işlem uygulama günlük yedeği

Aşağıdaki örnek, geri yükleme tarafından başlatılır AdventureWorks bulunduğu tam veritabanı yedeği kullanarak, veritabanı bir yedek aygıtı adlandırılmış AdventureWorks_1. Örnek, ardından bulunduğu ilk işlem günlüğü yedeklemesini uygular bir yedek aygıtı adlandırılmış AdventureWorks_log. Son olarak, örnek veritabanı kurtarır.

RESTORE DATABASE AdventureWorks
   FROM AdventureWorks_1
   WITH NORECOVERY
GO
RESTORE LOG AdventureWorks
   FROM AdventureWorks_log
   WITH FILE = 1,
   WITH NORECOVERY
GO
RESTORE DATABASE AdventureWorks
   WITH RECOVERY
GO

b.Birden çok işlem günlüğü yedekleri uygulama

Aşağıdaki örnek, geri yükleme tarafından başlatılır AdventureWorks bulunduğu tam veritabanı yedeği kullanarak, veritabanı bir yedek aygıtı adlandırılmış AdventureWorks_1. Örnek sonra tek tek adında bir yedek aygıtında bulunan ilk üç işlem günlüğü yedekleri uygular AdventureWorks_log. Son olarak, örnek veritabanı kurtarır.

RESTORE DATABASE AdventureWorks
   FROM AdventureWorks_1
   WITH NORECOVERY
GO
RESTORE LOG AdventureWorks
   FROM AdventureWorks_log
   WITH FILE = 1,
   NORECOVERY
GO
RESTORE LOG AdventureWorks
   FROM AdventureWorks_log
   WITH FILE = 2,
   WITH NORECOVERY
GO
RESTORE LOG AdventureWorks
   FROM AdventureWorks_log
   WITH FILE = 3,
   WITH NORECOVERY
GO
RESTORE DATABASE AdventureWorks
   WITH RECOVERY
GO