Share via


Nasıl yapılır: Kur, korumak ve çevrimiçi bir sıcak bekleme sunucusu (Transact-SQL)

Ayarlama bir hazır bekleyen sunucu genellikle tam yedekleme ve Dönemsel işlem günlüğü yedekleri birincil sunucuda oluşturma ve sonra bu yedekler sırayla uygulayarak kapsar hazır bekleyen sunucu.hazır bekleyen sunucu geri yüklemeler arasında bir salt okunur durumda kalır.hazır bekleyen sunucu bekleyen işlem günlüğü yedekleri var yapılması gerektiğinde dan aktif işlem günlüğünü yedekleme dahil birincil sunucu, bekleme sunucuya uygulanır ve veritabanı kurtarıldı.

Yedeklemeler oluşturmak içinbirincil sunucu

  1. Tam yedek oluşturmak için yedek database deyim yürütme.

  2. YEDEKLEME günlüğü yürütme deyim bir hareket günlük yedeği oluşturmak için.

  3. saat içinde oluşturmak istediğiniz her hareket günlüğü için adım 2'yi yineleyin.

Ayarlamak ve sürdürmek içinhazır bekleyen sunucu

  1. geri yükleme database yürütmek deyim birincil sunucuda adım 1'de oluşturulan tam yedeklemeyi geri yükleme norecovery yan tümce tümce tümcesi kullanarak.

  2. restore log yürütme deyim birincil sunucu üzerinde oluşturulan adım 2'de her işlem günlüğünü uygulamak için bekleme yan tümce tümce tümcesini kullanarak.Önce bu sayfaları etkileyen kaydedilmemiş hareketleri geri veri sayfalarının içeriğini içeren geri alma dosyası adını belirtin.

    Not

    Çeşitli günlüklerdeki uyguladığınızda, daha hızlı performans için WITH norecovery kullanılmalıdır.Bugün, bir hazır bekleyen dosya patron çevrimdışına alınırsa, kullanabileceğiniz yalnızca salt okunur, yük devretme kopya olarak gereklidir.

  3. Oluşturduğunuz her hareket günlüğü için bu adımı yineleyin birincil sunucu.

Getirmek için hazır bekleyen sunucu (başarısız çevrimiçi birincil sunucu)

  1. Mümkünse, yedeklemek şu anda etkin işlem günlüğü (günlük tail).Oluşturmak için bir sonradan alınan günlük yedeği veritabanını normal olarak başlatamadığınızda, no_truncate ile kullanarak birincil veritabanı yedek günlüğü deyimini yürütmek.Bu uygulanan son işlem günlüğü yedeklemesinden, hazır bekleyen sunucu , hazır bekleyen sunucu çevrimiçi duruma getirilir.Daha fazla bilgi için bkz: Nasıl yapılır: Hareket günlük yedekleme (Transact-SQL) oluştur.

  2. restore log yürütme deyim adım 1'de oluşturduğunuz etkin işlem günlüğü yedeklemesini dahil olmak üzere tüm işlem günlüğü yedekleri uygulamak için bekleme yan tümce tümce tümcesini kullanarak, değil henüz uygulanıp uygulanmadığı için bekleme sunucusu.

    Not

    Çeşitli günlüklerdeki uyguladığınızda, daha hızlı performans için WITH norecovery kullanılmalıdır.Bir örnek için bekleme ile kullanıldığı durumlar ve WITH norecovery kullanmak için aşağıya bakın.

  3. restore database WITH RECOVERY'yi yürütme deyim veritabanını kurtarmak ve bekleme sunucusu getirmek için.

Örnek

Bu örnek kurar MyAdvWorks veritabanı üzerinde bir hazır bekleyen sunucu.Veritabanı geri yükleme işlemleri arasındaki salt okunur modda kullanılabilir.

-- Restore the initial full backup on the standby server.
USE master
GO
RESTORE DATABASE MyAdvWorks
   FROM MyAdvWorks_1 
   WITH STANDBY = 'c:\undo.ldf'
GO
-- Apply the first transaction log backup.
RESTORE LOG MyAdvWorks
   FROM MyAdvWorks_log1
   WITH STANDBY = 'c:\undo.ldf'
GO
-- Apply the next transaction log backup.
RESTORE LOG MyAdvWorks
   FROM MyAdvWorks_log2
   WITH STANDBY = 'c:\undo.ldf'
GO
-- Repeat for each transaction log backup created on the 
-- primary server.
--
-- Time elapses.. .. ..
--
-- The primary server has failed. Back up the 
-- tail of the transaction log on the primary server.
BACKUP LOG MyAdvWorks
   TO MyAdvWorks_log3
   WITH NO_TRUNCATE
GO
-- Apply the final (active) transaction log backup
-- to the standby server. All preceding transaction
-- log backups must have been already applied.
RESTORE LOG MyAdvWorks
   FROM MyAdvWorks_log3
   WITH NORECOVERY 
GO
-- Recover the database on the standby server, 
-- making it available for normal operations.
RESTORE DATABASE MyAdvWorks
   WITH RECOVERY
GO