Share via


Hareket günlük yedekleme (SQL Server) geri yükleme

Bu konuda bir hareket günlük yedekleme geri yükleme açıklanır SQL Server 2012kullanarak SQL Server Management Studioya Transact-SQL.

Bu Konuda

  • Başlamadan Önce

    Ön Koşullar

    Güvenlik

  • Geri bir işlem günlük yedekleme, kullanarak:

    SQL Server Management Studio

    Transact-SQL

Başlamadan Önce

Ön Koşullar

  • İçinde oluşturuldukları sırayla yedekleri geri yüklenmesi gerekir. Özel hareket günlük yedekleme geri yüklemeden önce kaydedilmemiş hareketleri, norecovery ile geri olmadan aşağıdaki önceki yedeklerini geri yüklemelisiniz:

    • Tam veritabanı yedeklemesi ve son fark yedekleme, varsa, önce belirli bir işlem günlüğü yedekleme alınır. En son tam veya fark veritabanı yedekleme oluşturulmadan önce veritabanının tam kurtarma modelini veya toplu kurtarma modelini kullanıyoruz gerekir.

    • Tüm işlem günlüğü yedekleri tam veritabanı yedeklemesi veya fark yedekleme (başka bir geri yüklerseniz) sonra ve önce belirli bir işlem günlüğü yedekleme alınır. Günlük yedeklemeler, onlar, günlük zincirindeki herhangi bir boşluk olmayan oluşturulduğu sırada uygulanmalıdır.

      Işlem günlüğü yedekleri kullanma hakkında daha fazla bilgi için bkz: Working with Transaction Log Backups (Full Recovery Model).

Güvenlik

İzinler

RESTORE izinleri, üyeleri hakkında sunucuda her zaman hemen bilgi bulunabilen rollere verilir. Sabit veritabanı rolü üyeliği yalnızca veritabanı erişilebilir ve hasarsız kontrol edilmesi, ki değildir, çünkü her zaman durumda geri yürütüldüğünde, üyelerinin db_owner sabit veritabanı rolü geri yükleme izinleri yok.

Başa Dön bağlantısıyla kullanılan ok simgesi[Top]

SQL Server Management Studio Kullanarak

Dikkat notuDikkat

Geri yükleme normal işlem günlüğü yedekleri seçmektir Restore Database iletişim kutusunda veri ve fark yedeklemelerini birlikte.

Hareket günlük yedekleme geri yükleme

  1. Uygun örneğini bağlandıktan sonra Microsoft   SQL Server Veritabanı Altyapısı, buna Object Explorer, sunucu ağacı sunucu adını tıklatın.

  2. Genişletme veritabanlarıve, veritabanına bağlı bir kullanıcı veritabanını seçin veya genişletmek Sistem veritabanları ve sistem veritabanı seçin.

  3. Veritabanını sağ tıklatıp görevleri, Gelin gerive ardından İşlem günlüğü, hangi açar Restore Transaction Log iletişim kutusu.

    [!NOT]

    Eğer İşlem günlüğü soluk, ilk tam veya fark yedekleme geri yüklemeniz gerekebilir. Kullanım veritabanı yedekleme iletişim kutusu.

  4. Tarih Genel sayfa, de veritabanı liste kutusunda, veritabanı adını seçin. Yalnızca geri yükleme durumu veritabanları listelenir.

  5. Kaynak ve yedek konumunu belirtmek için ayarlar geri yüklemek için aşağıdaki seçeneklerden birini tıklatın:

    • Veritabanı önceki yedeklerden

      Aşağı açılan listesinden geri veritabanını seçin. Liste yalnızca göre yedeklendi veritabanlarını içeren msdb yedekleme geçmiş.

    • Dosyadan veya teypten

      Gözat'ı (...) açmak için düğmeyi yedekleme aygıtları seçin iletişim kutusu. İçinde Yedekleme ortam türü kutusunda, listelenen aygıt türlerinden birini seçin. Bir veya daha fazla aygıt için seçmek için Yedekleme ortam kutusunda, tıklayın Ekle.

      Aygıt ekledikten sonra istediğiniz Yedekleme ortam liste kutusunda, tıklayın Tamam dönmek Genel sayfa.

  6. İçinde işlem günlüğü yedeklerini geri yüklemek için seçin kılavuz, yedekleri geri yüklemek için seçin. Bu kılavuz, seçili veritabanı için işlem günlüğü yedekleri listeler. Günlük yedekleme mevcuttur sadece kendi İlk lsn büyük Son lsn veritabanı. Günlük yedeklemeler listelenen günlük sıra numaraları (lsn) sırasına içerirler ve bu sırada geri yüklenmesi gerekir.

    Aşağıdaki tablo kılavuz sütun başlıkları listeler ve bunların değerleri açıklar.

    Üstbilgisini

    Değer

    Geri yükleme

    Seçilen onay kutuları, geri yüklenecek yedek ayarlar gösterir.

    Ad

    Yedekleme kümesi adı.

    Bileşen

    Yedeklenen bileşen: veritabanı, dosyasını, veya <boş> (için işlem günlüklerini).

    Veritabanı

    Yedekleme işlemi katılan veritabanının adı.

    Başlangıç tarihi

    Tarih ve Saat yedekleme işlemi başladı, istemcinin bölgesel ayarını sunulan.

    Bitiş tarihi

    Tarih ve Saat yedekleme işlemini bitirdiğinde, istemcinin bölgesel ayarını sunulan.

    İlk lsn

    Günlük sırası, yedekleme kümesi ilk hareket sayısı. Boş dosya yedekleme.

    Son lsn

    Günlük sırası, yedekleme kümesi son işlem sayısı. Boş dosya yedekleme.

    Denetim noktası lsn

    Günlük sıra numarası en son denetim noktası yedek oluşturulduğu zaman.

    Tam lsn

    En son tam veritabanı yedeklemesi günlük sıra numarası.

    Sunucu

    Yedekleme işlemi gerçekleştirilen veritabanı altyapısı örneğinin adı.

    Kullanıcı adı

    Yedekleme işlemi gerçekleştiren kullanıcının adı.

    Boyutu

    Yedekleme boyutu bayt olarak ayarlayın.

    Konum

    Birimin yedekleme konumunu ayarlayın.

    Süre sonu

    Tarih ve Saat yedekleme kümesi sona erecek.

  7. Aşağıdakilerden birini seçin:

    • Zaman dilimi

      Ya da varsayılan değer koru (en son olası) açar Gözat düğmesini tıklatarak belirli bir Tarih ve saat seçin veya zaman geri nokta iletişim kutusu.

    • Işaretli hareket

      Veritabanını önceden işaretli hareket için geri yükleyin. Bu seçenek seçildiğinde başlattı İşaretli hareket seçin iletişim kutusunda, işaretli hareketlerin seçili işlem günlüğü yedekleri mevcut listeleyen bir kılavuz görüntüler.

      Varsayılan olarak, geri kadar ancak hariç, işaretli hareket olduğunu. Işaretli hareket de geri yüklemek için seçin içer işaretli hareket.

      Aşağıdaki tablo kılavuz sütun başlıkları listeler ve bunların değerleri açıklar.

      Üstbilgisini

      Değer

      <boş>

      Işareti seçmek için bir onay kutusu görüntüler.

      Hareket işareti

      Işaretli hareket hareket kaydedilmiş olduğunda kullanıcı tarafından belirtilen adı.

      Tarihi

      Tarih ve saat hareket tamamlanmış oldu. Hareket tarih ve saati are göstermek içinde kayıtlı olan msdbgmarkhistory tablo, istemci bilgisayarın Tarih ve Saat. 

      Açıklama

      Işaretli hareket hareket (varsa) kaydedilmiş olduğunda kullanıcı tarafından belirtilen açıklaması.

      LSN

      Işaretli hareket günlük sıra numarası.

      Veritabanı

      Işaretli hareket kaydedilmiş olduğu veritabanının adı.

      Kullanıcı adı

      Işaretli hareket kaydedilmiş veritabanı kullanıcının adı.

  8. Gelişmiş seçenekleri seçin veya görüntülemek için tıklayın seçenekleri de bir sayfa seçin bölmesi.

  9. İçinde geri yükleme seçenekleri bölümündeki Seçenekler şunlardır:

    • (KEEP_REPLICATION ile) çoğaltma ayarları korumak

      Veritabanı oluşturulduğu sunucusu dışındaki bir sunucuya yayımlanmış bir veritabanını geri yüklerken çoğaltma ayarlarını korur.

      Bu seçenek yalnızca kullanılabilir veritabanı geri kaydedilmemiş hareketleri çalışırken... tarafından kullanılmaya hazır bırakın bir yedekleme geri yükleme için eşdeğeri olan (daha sonra anlatılacaktır), seçenek RECOVERYseçeneği.

      Bu seçenek işaretlendiğinde kullanmaya eşdeğer KEEP_REPLICATIONiçinde seçenek bir Transact-SQL RESTOREdeyimi.

    • Her yedekleme geri yüklemeden önce sor

      Her yedekleme kümesi (sonra) ilk geri yüklemeden önce bu seçenek getirir geri yükleme ile devam asks sen geri yükleme sırası devam etmek isteyip istemediğinizi belirtmek için iletişim kutusu. Bu iletişim kutusunu bir sonraki ortam kümesi adı (varsa) görüntüler, yedekleme kümesi adı ve yedek kümesi açıklaması.

      Farklı ortam kümesi için teypler takas Bu seçenek özellikle yararlıdır. Örneğin, sunucuyu tek bir teyp aygıtı olduğunda kullanabilirsiniz. Tıklamadan önce devam etmeye hazır olana kadar bekleyin Tamam.

      Tıklayarak No veritabanı geri yükleme durumunda bırakır. Son geri yükledikten sonra tamamlanmış şekilde geri yükleme sırası devam edebilirsiniz. Sonraki yedekleme veri veya fark yedekleme kullanın Restore Database tekrar görev. Sonraki yedekleme günlük yedekleme kullanın Restore Transaction Log görevi.

    • Geri yüklenen veritabanı (ile RESTRICTED_USER) erişimi sınırlama

      Geri yüklenen veritabanı kullanılabilir sadece üyelerine yapar db_owner, dbcreator, veya sysadmin.

      Bu seçenek işaretlendiğinde kullanmaya eşanlamlı RESTRICTED_USERiçinde seçenek bir Transact-SQL RESTOREdeyimi.

  10. İçin Kurtarma durumu seçenekler geri yükleme işleminden sonra veritabanının durumunu belirtin.

    • Veritabanı geri kaydedilmemiş hareketleri çalışırken kullanılmaya hazır bırakın. Ek işlem günlükleri geri yüklenemez. (KURTARMA İLE GERİ YÜKLEME)

      Veritabanı kurtarır. Bu seçenek eşdeğerdir RECOVERYiçinde seçenek bir Transact-SQL RESTOREdeyimi.

      Yalnızca, geri yüklemek istediğiniz günlük dosyası varsa bu seçeneği seçin.

    • Veritabanında çalışır durumda bırakmak ve kaydedilmemiş hareketleri geri değil. Ek işlem günlükleri geri yüklenebilir. (NORECOVERY İLE GERİ YÜKLEME)

      Veritabanı unrecovered, içinde yaprak RESTORINGdevlet. Bu seçeneği kullanarak için eşdeğerdir NORECOVERYiçinde seçenek bir Transact-SQL RESTOREdeyimi.

      Bu seçeneği seçtiğinizde çoğaltma ayarları korumak seçeneği kullanılamaz.

      Önemli notÖnemli

      Her zaman bir ayna veya ikincil veritabanı için bu seçeneği seçin.

    • Veritabanı salt okunur modunda bırakın. Geri kaydedilmemiş hareketleri, ancak kurtarma etkileri geri alınabilir şekilde geri alma eylemleri bir dosyaya kaydedin. (BEKLEME İLE GERİ YÜKLEME)

      Veritabanı, bir bekleme durumunda bırakır. Bu seçeneği kullanarak için eşdeğerdir STANDBYiçinde seçenek bir Transact-SQL RESTOREdeyimi.

      Bu seçeneği seçerek bekleme dosyası belirtmeniz gerekir.

  11. Isteğe bağlı olarak, bir bekleme dosyası adı belirtin bekleme dosyası metin kutusu. Veritabanı salt okunur modda bırakın bu seçenek gereklidir. Bekleme dosyaya gözatmak ya da onun yol adı metin kutusuna yazın.

Başa Dön bağlantısıyla kullanılan ok simgesi[Top]

Transact-SQL'i Kullanma

Önemli notÖnemli

Her zaman açıkça WITH norecovery veya WITH recovery belirsizlik ortadan kaldırmak için her restore deyiminde belirttiğiniz öneririz. Bu, özellikle komut dosyaları yazarken önemlidir.

Hareket günlük yedekleme geri yükleme

  1. Hareket günlük yedekleme uygulamak için restore GNLK deyimini yürütmek belirtme:

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

    • Hareket günlük yedekleme dan geri burada gelen yedekleme aygıtı.

    • norecovery yan tümcesi.

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

    restore log database_namefrom <backup_device > WITH norecovery.

    Burada database_nameveritabanı adıdır ve <backup_device>günlük yedekleme geri yüklenen aygıtın adıdır.

  2. Adım 1 için her işlem günlük yedekleme uygulamak zorunda yineleyin.

  3. Son yedekleme, geri yükleme sırası geri yükledikten sonra kurtarmak için veritabanı kullanın aşağıdaki ifadelerden birini:

    • Son restore GNLK deyimi bir parçası olarak veritabanını kurtarmak:

      RESTORE LOG <database_name> FROM <backup_device> WITH RECOVERY;
      GO
      
    • Ayrı bir restore database deyimini kullanarak veritabanını kurtarmak için bekleyin:

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

      Veritabanını kurtarmak için bekleyen tüm gerekli günlüğü yedekleri geri yüklediğiniz doğrulamak için fırsat verir. Zaman noktası geri yükleme yaparken bu yaklaşım genellikle tavsiye edilir.

    Önemli notÖnemli

    Yansıtma veritabanı oluşturuyorsanız, kurtarma adımı atlayın. Yansıtma veritabanı geri yükleme durumunda kalması gerekir.

Örnekler (Transact-SQL)

Varsayılan olarak, AdventureWorks2012 veritabanı Basit kurtarma modelini kullanır. Aşağıdaki örnekler, tam kurtarma modelini aşağıdaki gibi kullanmak için veritabanı değiştirme gerektirir:

ALTER DATABASE AdventureWorks2012 SET RECOVERY FULL;

A.Tek hareket günlük yedekleme uygulamak

Aşağıdaki örnek geri yükleyerek başlar AdventureWorks2012 adlı bir yedekleme aygıtı da bulunduğu tam veritabanı yedeği kullanarak veritabanını AdventureWorks2012_1. Örnek sonra adlı bir yedekleme aygıtında bulunan ilk hareket günlük yedekleme uygular AdventureWorks2012_log. Son olarak, örnek veritabanını kurtarır.

RESTORE DATABASE AdventureWorks2012
   FROM AdventureWorks2012_1
   WITH NORECOVERY;
GO
RESTORE LOG AdventureWorks2012
   FROM AdventureWorks2012_log
   WITH FILE = 1,
   WITH NORECOVERY;
GO
RESTORE DATABASE AdventureWorks2012
   WITH RECOVERY;
GO

B.Birden çok işlem günlüğü yedekleri uygulanıyor

Aşağıdaki örnek geri yükleyerek başlar AdventureWorks2012 adlı bir yedekleme aygıtı da bulunduğu tam veritabanı yedeği kullanarak veritabanını AdventureWorks2012_1. Örnek sonra uygulanır, birer birer adlı bir yedekleme aygıtında bulunan ilk üç işlem günlüğü yedekleri AdventureWorks2012_log. Son olarak, örnek veritabanını kurtarır.

RESTORE DATABASE AdventureWorks2012
   FROM AdventureWorks2012_1
   WITH NORECOVERY;
GO
RESTORE LOG AdventureWorks2012
   FROM AdventureWorks2012_log
   WITH FILE = 1,
   NORECOVERY;
GO
RESTORE LOG AdventureWorks2012
   FROM AdventureWorks2012_log
   WITH FILE = 2,
   WITH NORECOVERY;
GO
RESTORE LOG AdventureWorks2012
   FROM AdventureWorks2012_log
   WITH FILE = 3,
   WITH NORECOVERY;
GO
RESTORE DATABASE AdventureWorks2012
   WITH RECOVERY;
GO

Başa Dön bağlantısıyla kullanılan ok simgesi[Top]

Ayrıca bkz.

Görevler

Bir veritabanı yedekleme (SQL Server Management Studio'yu) geri yükleme

Restore a Database to a Point in Time (SQL Server Management Studio)

Işaretli hareket için (SQL Server Management Studio'yu) bir veritabanı geri yükleme

Nokta hatası altında tam kurtarma modeli (Transact-sql) bir veritabanı geri yükleme

Başvuru

RESTORE (Transact-SQL)

Kavramlar

Bir işlem günlük (SQL Server) yedekleyin

Hareket günlük yedekleme (SQL Server) geri yükleme

Bir SQL Server veritabanına bir noktaya zaman (tam kurtarma modeli) geri

Diğer Kaynaklar

Working with Transaction Log Backups