Tam veritabanı geri yükleme (tam kurtarma modeli) gerçekleştirme
Bir tam veritabanı geri yükleme yüklemesi yüklemesi hedefi tam veritabanı geri yükleme yüklemesi yüklemesi yüklemektir.Tam veritabanı geri yükleme süresi için çevrimdışı durumdadır.Herhangi bir parçasını veritabanı çevrimiçi duruma önce tüm verileri kurtarıldı veritabanı aynı noktada saat bölümlerdir ve hiç kaydedilmemiş hareketleri var tutarlı bir noktasına.
Tam kurtarma modeli altında veritabanı içinde belirli bir noktaya geri yüklenebilir saat.Zaman noktasında en son kullanılabilir yedek, belirli bir tarih ve saat veya işaretli hareket olabilir.
Güvenlik Notu |
---|
Eklemek veya bilinmeyen veya güvenilmeyen kaynaklardan gelen veritabanlarını geri yükleme öneririz.Bu veritabanları olabilir kötü niyetli kod içerebilecek yürütmek istenmeyen Transact-SQL kod ya da neden hata değiştirerek şemayı veya fiziksel veritabanı yapısı.Güvenilmeyen veya bilinmeyen bir veritabanından kullanın önce kaynak, çalışma dbcc checkdb bir benzerini sunucusundaki veritabanında ve ayrıca saklı yordamlar veya başka bir kullanıcı tarafından tanımlanan kod, veritabanı gibi bir kodu inceleyin. |
Tam veritabanı geri yükleme
Tipik olarak, hata noktası için bir veritabanı kurtarma, aşağıdaki temel adımları içerir:
(Tail günlüğü da bilinir) etkin işlem günlüğü yedekleyin.Bu oluşturur bir sonradan alınan günlük yedeği.Aktif işlem günlüğünü kullanılamıyorsa, o günlük bölümünde tüm hareketleri kaybolur.
Önemli Altında toplu günlük kurtarma modeli, access veritabanındaki tüm veri dosyaları için toplu oturum işlemleri içeren herhangi bir günlüğü yedekleme gerektirir.Veri dosyalarını erişilemiyorsa, işlem günlüğü yedeklenemez.durum, Bu yana en son günlük yedeği yapılan tüm değişiklikleri el ile yineleme sahip.
Daha fazla bilgi için bkz: Tail günlüğü yedekleri.
En son tam veritabanı yedek veritabanı kurtarma olmadan geri yükleme (restore database database_name from backup_device WITH norecovery).
Fark varsa, en son bir veritabanı kurtarma olmadan geri yükleme (restore database database_name from differential_backup_device WITH norecovery).
İlk hareketi ile başlayan günlük yedeği hemen geri yedeklemeden sonra oluşturulmuş, günlükleri sıra norecovery ile geri yükleme.
Veritabanını kurtarmak (restore database database_name WITH recovery).Alternatif olarak, bu adımı son günlük yedeği geri yükleme ile birleştirilebilir.
tam veritabanı geri yükleme yüklemesi yüklemesi saat veya işaretli hareket günlük yedeği içinde bir noktaya genellikle kurtarılamaz.Ancak, Toplu Kaydedilmiş kurtarma modeli altında günlük yedeği toplu kaydedilmiş değişiklikler içeriyorsa, işaret-içinde-saat kurtarma mümkün değildir.Daha fazla bilgi için bkz: Bir veritabanını bir yedek içinde bir noktaya geri.
Bu işlem aşağıda gösterilmiştir.(1) Bir hata oluştuktan sonra bir sonradan alınan günlük yedeği (2) oluşturulur.Daha sonra veritabanını başarısızlık noktasına kadar geri yüklenir.Bu veritabanı yedek, bir sonraki farklıları yedek ve sonra fark yedek dahil olmak üzere gerçekleştirilen her günlük yedeği geri yükleme gerektirir sonradan alınan günlük yedeği.
Tamamen bir veritabanını geri yüklerken, bir tek geri yükleme sırası kullanılmalıdır.Kritik seçenekler, aşağıdaki örnekte gösterildiği bir geri yükleme yükleme sırası , veritabanı geri yükleme başarısızlık noktasına kadar tam veritabanı geri yükleme yüklemesi yüklemesi senaryosu.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özdizimi ve bu amaç için ilgili ayrıntılar atlanır.
Veritabanı geri ve İleri alındı.Fark veritabanı İleri alma azaltmak için kullanılan saat.Bu geri yükleme sırası İş kaybını ortadan kaldırmak için tasarlanmıştır; Son yedek, geri bir sonradan alınan günlük yedeği.
Basic geri geri yükleme sırası sözdizimi aşağıdaki gibidir:
restore database veritabanı from full database backup WITH norecovery;
restore database veritabanı from full_differential_backup WITH norecovery;
restore log veritabanı from log_backup WITH norecovery;
Her ek günlük yedeği için bu geri yükleme günlük adımı yineleyin.
restore database veritabanı ile kurtarma;
Örnek
Aşağıdaki örnek için AdventureWorks2008R2 örnek veritabanı olan küme kurduğunuz yedeklenmiş veritabanı idi önce tam kurtarma modeli kullanmak üzereBu örnek oluşturur bir sonradan alınan günlük yedeği , AdventureWorks2008R2 veritabanı.Daha sonra örnek bir önceki tam Veritabanı yedeksi ve günlük yedeği geri yükler ve örnek geri yükler sonradan alınan günlük yedeği.Örnek veritabanı ayrı, son adımda kurtarır.
Not
Bu örnek, bir veritabanı yedek ve "Kullanarak veritabanı yedekleri altında tam kurtarma modeli" oluşturulan günlük yedeği kullanır Bölüm'de Tam veritabanı yedekleri.
Örnek ile başlayan bir alter database kurtarma modeli ayarlar için deyim FULL.
USE master;
--Create tail-log backup.
BACKUP LOG AdventureWorks2008R2
TO DISK = 'Z:\SQLServerBackups\AdventureWorks2008R2FullRM.bak'
WITH NORECOVERY;
GO
--Restore the full database backup (from backup set 1).
RESTORE DATABASE AdventureWorks2008R2
FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2008R2FullRM.bak'
WITH FILE=1,
NORECOVERY;
--Restore the regular log backup (from backup set 2).
RESTORE LOG AdventureWorks2008R2
FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2008R2FullRM.bak'
WITH FILE=2,
NORECOVERY;
--Restore the tail-log backup (from backup set 3).
RESTORE LOG AdventureWorks2008R2
FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2008R2FullRM.bak'
WITH FILE=3,
NORECOVERY;
GO
--recover the database:
RESTORE DATABASE AdventureWorks2008R2 WITH RECOVERY;
GO
Bir hata noktası için kurtarma
Tam veritabanı geri yükleme yüklemek içinyedek
Nasıl yapılır: Bir veritabanı yedekleme (Transact-SQL) geri yükleme
Nasıl yapılır: Veritabanı Yedeklemesini Geri Yükleme (SQL Server Management Studio)
Önemli |
---|
Bir veritabanı yedeklemesini başka bir sunucuya geri yükleme ne zaman örnek, bkz: Veritabanlarını yedekleme ve geri yükleme ile kopyalama ve Bir veritabanı başka bir sunucu örneği üzerinde kullanılabilir yapma olduğunda meta veri yönetme. |
Fark bir veritabanını geri yükleme yüklemek içinyedek
Nasıl yapılır: Fark veritabanı yedekleme (Transact-SQL) geri yükleme
Nasıl yapılır: Fark veritabanı yedekleme (SQL Server Management Studio'yu) geri yükleme
Bir hareketi geri yükleme yüklemek içingünlük yedeği
geri yükleme yükledikten sonra veri yedeği veya gerekir geri yükleme yedekler, tüm sonraki hareket günlük yedek ve sonra veritabanını kurtarmak.
Nasıl yapılır: Hareket günlük yedekleme (Transact-SQL) Uygula
Nasıl yapılır: Hareket günlük yedekleme (SQL Server Management Studio'yu) geri yükleme
sql Server Yönetim Nesneleri (smo) kullanarak yedek geri yükleme yüklemek için
Bir-zaman içinde için kurtarma
Tam kurtarma modeli altında veritabanı belirli bir noktaya saat içinde günlük yedeği geri yüklenebilir.Zaman noktasında, belirli bir tarih ve saat, işaretli hareket veya günlük sıra numarası (SSN) olabilir.Daha fazla bilgi için bkz: Bir veritabanını bir yedek içinde bir noktaya geri.
sql Server'ın önceki sürümlerinden yedeklemeler için destek
De SQL Server 2008, bir veritabanını geri yükleme yüklemek yedek kullanılarak oluşturulmuş SQL Server 2000, SQL Server 2005, veya SQL Server 2008.Ancak, yedekleri ana, modeli ve msdb kullanılarak oluşturulan SQL Server 2000 veya SQL Server 2005 olamaz geri yüklenemedi tarafından SQL Server 2008.Ayrıca, SQL Server 2008 yedeklemeler edemiyor geri herhangi bir önceki sürüm tarafından SQL Server.
SQL Server 2008 bir önceki sürümlerinden daha farklı bir varsayılan yol kullanılır.Bu nedenle, varsayılan konumu ya da içinde oluşturulmuş bir veritabanını geri yükleme yüklemek için SQL Server 2000 veya SQL Server 2005 'yı, move seçeneği. kullanmanız gerekirYeni varsayılan yol hakkında daha fazla bilgi için bkz: Varsayılan ve sql Server adlandırılmış örnekleri için dosya konumları.
Not
Kullanılarak oluşturulmuş bir veritabanı yükseltme hakkında bilgi için SQL Server sürüm 7.0 veya daha önceki için SQL Server 2005için bkz: SQL Server 7.0 veya önceki veritabanları kopyalama.
Ayrıca bkz.