Aracılığıyla paylaş


Bir veritabanını bir özel kurtarma noktası için kurtarma için en iyi yöntemler

Bu konu yalnızca ilgilidir SQL Server veritabanları kullanan tam veya toplu oturum kurtarma modelleri.Bir veritabanını bir özel kurtarma noktası geri yükleme bazı en iyi uygulamaları sunar (bir saat'ın üzerine, bir İşaretli hareket, ya da bir Günlük sıra numarası (SSN)).

Bul bilinmeyen noktası için bekleme süresi kullanın.

Bazen, saat içinde belirli bir noktaya bir veritabanını geri yükleme yüklemek istediğiniz, ancak kurtarma hedefiniz (diğer bir deyişle, sizin en iyi kurtarma noktası) tam olarak ne saat içinde en iyi karşılayıp biliyor.To find this recovery point, you can use RESTORE … WITH STANDBY **=**standby_file_name along with a STOPAT clause whose target time precedes the recovery point for which you are looking.BEKLEME geri yükleme işlemi, etkinleştirme, sizin için en iyi kurtarma noktası aramak için veritabanı incelemek salt okunur erişim için veritabanı kurtarır.

BEKLEME bir dizi kullanarak geri yükleme işlemleri için artımlı olarak ileri sarmak birincil veri dosyası (ve isteğe bağlı olarak, diğer veri dosyalarını) en iyi kurtarma noktayı bulana kadar.Sizin en iyi kurtarma noktası tanımladıktan sonra size veritabanı İleri yeniden, ile en iyi kurtarma noktayı belirtmek için stopat belirterek AT hedef olarak işaret saat.saat içinde bu hedef noktaya ulaşmasını üzerinde ile kurtarma seçeneğini kullanarak kısmi veritabanını geri yükleme yükleyin.

Kalan dosyaları varsa, sonra geri ve veritabanı ile tutarlı olacak şekilde kurtarıldı.Son tam günlük geri yükleme geri yükledikten sonra ilk geri günlük yedeği sonra hedef kurtarma noktası alınır.

BEKLEME seçeneği hakkında daha fazla bilgi için bkz: Bağımsız değişkenlerini (Transact-sql) geri yükleme.

Noktası zamanında geri yükleme sırası başlarında belirtin

Bir veya daha fazlasını geri yükleme aşamalarını üzerinden veri taşımak bir veya daha fazla geri yükleme işlemlerini geri yükleme sırası oluşur.Sıra olasılığını amacı hakkında sizin sağladığınız bilgi olan baştan başlamak gerektirebilir hataları yaşamaya.Noktası zamanında geri yükleme, SQL Server Veritabanı Altyapısı 'ın (ve sırasında) başlangıçta belirtilen bilgileri kullanan saat içinde alınmı amacı geri. tanımlamak için bir geri yükleme sırasıSıra çok uzun beklemek sırası başarısız olur.Bu geri yükleme noktanız gitmek değil emin olmak için yeterince erken geri yükleme sırası Durdur adresindeki bilgi sağlamanız gerekir-de-saat amaç.

Bu amaç her geri yükleme oturum kurtarma belirli bir noktada durdurmak istiyorsanız, iletişim deyim (kullanarak stopat, STOPBEFOREMARK'ı veya NOKTASINA), kurtarma seçeneği ile birlikte.Ne saat kurtarma ve stopat seçenek kullanılır birlikte, hareket günlük yedeği (örneğin, belirtilen işlem günlüğü tarafından kapsadığı saat ötesinde ise) istenen süreyi içeren, bir uyarı üretilir ve veritabanı kurtarılmamış kalır.Kurtarma noktası ulaşıldığında, veritabanı kurtarıldı ve başka günlük yedeği geri yükleme girişimi başarısız olur.günlük yedeği geri yüklerken kurtarma ve stopat seçeneklerini birlikte kullanarak, hiçbir günlük geri yükleme her zamankinden stop at saat geçer sağlar.

Önemli notÖnemli

Herhangi bir kısmi geri yükleme sırası tutuyorsa FILESTREAM dosya grubu, point-de-saat geri yükleme desteklenmiyor.Devam etmek için geri yükleme sırası zorlayabilirsiniz.Ancak sizin geri atlanmış FILESTREAM filegroups deyim hiçbir zaman geri yüklenebilir.Bir noktayı zorlamak için-de-saat geri yüklemek, sonraki restore log deyimlerinde belirtmeniz gerekir stopat, NOKTASINA veya STOPBEFOREMARK'ı seçeneği ile birlikte CONTINUE_AFTER_ERROR seçeneğini belirtin.CONTINUE_AFTER_ERROR belirtirseniz, kısmi geri yükleme sırası başarılı ve FILESTREAM dosya grubu kurtarılamaz duruma gelir.

Örnek: Noktası zamanında geri yükleme

Aşağıdaki örnekte, belirli bir durdurmak için niyetlerini bildirmek geri yükleme sırası başlar ilk günlük yedeği uygularken saat.Bu örnekte, stop at saat ilk günlük yedek fark yedekden sonra oluşur.

RESTORE DATABASE database_name FROM full_backup 
    WITH NORECOVERY;
RESTORE DATABASE database_name FROM full_differential_backup 
    WITH NORECOVERY;
RESTORE LOG database_name FROM log_backup 
    WITH STOPAT = time, RECOVERY;
RESTORE LOG database_name FROM log_backup 
    WITH STOPAT = time, RECOVERY;

Olup belirtilen günlük geri yükleme başarılı bağlıdır saat günlük yedeği tarafından yakalanan aralığı aşağıdaki açıklandığı gibi tablo.

İlişki, saat günlük yedeği tarafından yakalanan aralığı:

Efekti

saat önce aralığıdır.

Geri yükleme başarısız olur ve no ileri sarmak oluşur.

saat sırasında aralığıdır.

Son geri yükleme başarılı ve veritabanı kurtarıldı.

saat sonra aralığıdır.

Top ileriye başarılı olur, ancak veritabanı, çünkü kurtarılır değil saat henüz ulaştı.

Durdurma noktadan sonraki her geri yükleme ifade üzerinde bildirmek

stopat, STOPBEFOREMARK'ı veya NOKTASINA seçeneği belirtir deyim için belirli bir durdurma noktasıdır.Tam geri yükleme deyim bu seçeneği kullanmazsanız, yedek geri yüklenir.

Bir-saat içinde olarak geri yükleme sırası ilerledikçe, değiştirebileceğiniz kurtarma noktası için yeni bir değer belirterek saat, veritabanı henüz yeni gitti olmayan varsayarak saat.

Not

STOPBEFOREMARK'ı ve NOKTASINA iki parametre seçeneğiniz mark_name ve lsn_number.The mark_name parameter, which identifies a transaction mark in a log backup, is supported only in RESTORE LOG statements.The lsn_number parameter, which specifies a log sequence number, is supported in both RESTORE DATABASE statements and RESTORE LOG statements.

Değişiklik Geçmişi

Güncelleştirilmiş içerik

"Bul bilinmeyen noktası için bekleme süresi kullan" düzeltildi yalnızca o ile bekleme açıklığa kavuşturmak için bölüm efektleri geri alma kurtarma işlemi sağlar.