Veritabanı yansıtma ve çoğaltma (SQL Server)

Veritabanı yansıtma çoğaltma ile birlikte yayın veritabanının kullanılabilirliğini artırmak için kullanılabilir. Veritabanı yansıtma bir veritabanı genellikle farklı bilgisayarlarda bulunan iki kopya içerir. Herhangi bir zamanda yalnızca bir veritabanı kopyası şu anda istemcilere kullanılabilir. Bu kopya, asıl veritabanı bilinir. Asıl veritabanında istemcileri tarafından yapılan güncelleştirmeler, veritabanı yansıtma veritabanı bilinen diğer kopyası üzerinde uygulanır. Yansıtma her ekleme, güncelleştirme ya da silme işlemi oturum yansıtma veritabanı asıl veritabanı üzerinde yapılan işlem günlüğünün uygulama içerir.

Yansıtma çoğaltma yerine tam abonelik veritabanları için sınırlı desteği ile yayını veritabanları için desteklenir. Dağıtım veritabanı için veritabanı yansıtma desteklenmiyor. Herhangi bir çoğaltma yeniden gerek olmadan, dağıtım veritabanı veya abone veritabanı kurtarma hakkında daha fazla bilgi için bkz: Yedekleme ve geri yükleme veritabanları yinelenmiş. Abone veritabanı yansıtma hakkında daha fazla bilgi için bkz.

[!NOT]

Yerine çalışma, anapara için ayna olur. Bu konuda, "asıl" ve "ayna" her zaman özgün ana para ve yansıtma için başvurun.

Gereksinimleri ve çoğaltma veritabanı yansıtma ile kullanma hakkında önemli noktalar

Çoğaltma veritabanı yansıtma ile kullanırken aşağıdaki gereksinimleri ve değerlendirmeleri unutmayın:

  • Ana para ve yansıtma distribütör paylaştırmanız gerekir. Bu yayımcı planlanmamış yük devretme varsa büyük hataya dayanıklılık sağlayan Uzak bir dağıtımcı olmasını öneririz.

  • Publisher ve dağıtımcı olmalıdır Microsoft  SQL Server 2005ya da sonraki bir sürümünü. Abonelerine herhangi bir sürümü, ancak birleştirme çoğaltma çekme abonelikleri önceki bir sürümünden olabilir SQL Server 2005Yük devretme; desteklemez Bu durumda abone adresindeki çalışacağı ve aracı önceki sürümlerinde yansıtma farkında değildir. Anapara geri yansıtma veritabanı başarısız olursa böyle aboneleri çoğaltma devam ettirir.

  • Çoğaltma veya kuyruğa alınmış güncelleştirme aboneleri için salt okunur aboneleri ile işlem çoğaltma ve birleştirme çoğaltması yayın veritabanı yansıtma destekler. Hemen güncelleştirme aboneleri, Oracle yayımcılar, yayıncılar bir eşler arası topoloji ve yeniden yayınlama desteklenmiyor.

  • Meta veriler ve veritabanı dışında varolan nesneler ayna oturumları, işleri, bağlantılı sunucuları ve benzerleri dahil olmak üzere, kopyalanmaz. Meta veri ve nesneleri ayna gerekliyse, bunları el ile kopyalamanız gerekir. Daha fazla bilgi için, bkz. (Veritabanı yansıtma) geçiş rolünü sonra oturumları ve işleri yönetme.

Çoğaltma veritabanı yansıtma ile yapılandırma

Çoğaltma ve veritabanı yansıtma yapılandırma beş adımdan oluşur. Her adımı daha ayrıntılı olarak aşağıdaki bölümde açıklanmaktadır.

  1. Yayımcı yapılandırın.

  2. Veritabanı yansıtma yapılandırın.

  3. Ayna patron olarak aynı dağıtımcı kullanmak için yapılandırın.

  4. Yerine çalışma için çoğaltma aracıları yapılandırın.

  5. Ana para ve yansıtma çoğaltma izleyicisi ekleyin.

1 Ve 2 numaralı adımları da ters sırayla gerçekleştirilir.

Yayını veritabanı için veritabanı yansıtma yapılandırmak için

  1. Yayımcı yapılandırın:

    1. Uzak bir dağıtımcı kullanmanızı öneririz. Dağıtım yapılandırma hakkında daha fazla bilgi için bkz: Dağıtım yapılandırma.

    2. You can/veritabanı anlık görüntü ve işlem yayınlar için etkinleştirmek veya birleştirme yayınları. Birden fazla yayın türünü içeren yansıtılmış veritabanları için veritabanı kullanarak aynı düğüm, her iki tür için etkinleştirmelisiniz sp_replicationdboption. Örneğin, aşağıdaki saklı yordam çağrıları, anapara yürütmesine:

      exec sp_replicationdboption @dbname='<PublicationDatabase>', @optname='publish', @value=true
      exec sp_replicationdboption @dbname='<PublicationDatabase>', @optname='mergepublish', @value=true
      

      Yayınları oluşturma hakkında daha fazla bilgi için bkz: Verileri ve veritabanı nesnelerini Yayımla.

  2. Veritabanı yansıtma yapılandırın. Daha fazla bilgi için Bir veritabanı oturumu Windows kimlik doğrulaması (SQL Server Management Studio'yu) kullanarak yansıtma kurmakve (SQL Server) yansıtma veritabanı ayarlama.

  3. Yansıtma dağıtım yapılandırın. Yayımcı olarak yansıtma adı belirtin ve aynı dağıtımcı ve anapara kullandığı anlık görüntü klasörü belirtin. Örneğin, saklı yordamlar ile çoğaltma yapılandırıyorsanız, idam sp_adddistpublisher at dağıtımcı; ve sonra sp_adddistributor , ayna. İçin sp_adddistpublisher:

    • Değerini @ publisher ayna ağ adı parametresi.

    • Değerini @ working_directory parametresi sorumlusu tarafından kullanılan anlık görüntü klasörü.

  4. Ayna adını belirtin –PublisherFailoverPartnerAracısı parametresi. Ajan ayna yerine çalışma tanımlamak aşağıdaki aracıları için bu parametre gereklidir:

    • Anlık görüntü Aracısı (için tüm yayınlar için)

    • Günlük Okuma Aracısı (tüm işlem yayınlar için)

    • Sıranın Okuma Aracısı (destek abonelikleri güncelleştirme sıraya işlem yayınlar için)

    • Birleştirme Aracısı (için birleştirme abonelikleri)

    • SQL Serverçoğaltma dinleyici (replisapi.dll: Web eşitlemeyi kullanarak eşitlenen birleştirme abonelikleri)

    • sql birleştirme ActiveX denetimi (birleştirme abonelikleri) denetim ile senkronize

    Çünkü onlar değil bağlamak için yayımcı dağıtım aracısını ve dağıtım ActiveX denetimi bu parametre gerekmez.

    Aracısı parametre değişiklikleri, aracı yeniden başlatıldığında etkili olur. Aracı sürekli çalışır, durdurmak ve aracı yeniden başlatın. Parametrelerini Aracısı profilleri ve komut isteminden belirtilebilir. Daha fazla bilgi için, bkz:

    Eklemenizi öneririz –PublisherFailoverPartnerAracısı profil ve profil içinde ayna adı belirterek için. Örneğin, saklı yordamlar ile çoğaltma yapılandırıyorsanız:

    -- Execute sp_help_agent_profile in the context of the distribution database to get the list of profiles.
    -- Select the profile id of the profile that needs to be updated from the result set.
    -- In the agent_type column returned by sp_help_agent_profile: 
    -- 1 = Snapshot Agent; 2 = Log Reader Agent; 3 = Distribution Agent; 4 = Merge Agent; 9 = Queue Reader Agent.
    
    exec sp_help_agent_profile
    
    -- Setting the -PublisherFailoverPartner parameter in the default Snapshot Agent profile (profile 1).
    -- Execute sp_add_agent_parameter in the context of the distribution database.
    exec sp_add_agent_parameter @profile_id = 1, @parameter_name = N'-PublisherFailoverPartner', @parameter_value = N'<Failover Partner Name>'
    
    -- Setting the -PublisherFailoverPartner parameter in the default Merge Agent profile (profile 6).
    -- Execute sp_add_agent_parameter in the context of the distribution database.
    exec sp_add_agent_parameter @profile_id = 6, @parameter_name = N'-PublisherFailoverPartner', @parameter_value = N'<Failover Partner Name>'
    
  5. Ana para ve yansıtma çoğaltma izleyicisi ekleyin. Daha fazla bilgi için, bkz. Ekleme ve çoğaltma izleyicisi'nden yayımcılar Kaldır.

Bir yansıtılmış yayın veritabanının Bakımı

Bir yansıtılmış yayın veritabanının Bakımı temelde aşağıdaki hususlar ile olmayan yansıtılmış bir veritabanının Bakımı aynıdır:

  • Yönetim ve izleme etkin sunucuda bulunması gerekir. De SQL Server Management Studio, yayınlar gözükmek altında Yerel yayınları klasörü yalnızca etkin sunucu. Örneğin, size ayna yerine, yayınları ayna görüntülenir ve artık asıl adı görüntülenir. Veritabanı yansıtma üzerinden başarısız olursa, el ile yenilemeniz gerekebilir Management Studiove çoğaltma izleyicisi değişikliğin yansıması için.

  • Çoğaltma İzleyicisi Publisher düğümler, hem patron hem de ayna için nesne ağacında görüntülenir. Asıl adı active server ise, yayın bilgileri yalnızca çoğaltma izleyicisi asıl düğümünün altında görüntülenir.

    Yansıtmayı etkin sunucu ise:

    • Aracı bir hata varsa, hata yalnızca düğümde asıl, yansıtma düğümünde belirtilir.

    • Eğer asıl kullanılmıyorsa, ana para ve yansıtma düğümler aynı yayınların listesini görüntüler. İzleme yansıtma düğümünde yayınlar yapılmalıdır.

  • Zaman, ayna, yayımcı adını belirttiğiniz durumlar için çoğaltmayı yönetmek için saklı yordamları veya Çoğaltma Yönetimi Nesneleri'ni (rmo) kullanarak'veritabanı çoğaltma için etkin örneğinin adını belirtmeniz gerekir. Uygun adı belirlemek için işlevini kullanın PUBLISHINGSERVERNAME.

    Bir yayını veritabanı yansıtılmış, yansıtma veritabanında depolanan çoğaltma meta verileri asıl veritabanında depolanan meta aynıdır. Sonuç olarak, anapara, çoğaltma için etkinleştirilmiş yayını veritabanları için sistem tabloları, ayna depolanan Publisher örneğinin adı asıl, yansıtma adıdır. Yayını veritabanı yansıtma üzerinden başarısız olursa bu çoğaltma yapılandırma ve bakım etkiler. Örneğin, yerine çalışma ile aynada saklı yordamlar çoğaltma yapılandırıyorsanız ve bir yayını veritabanı anapara etkin bir çekme abonelik eklemek istediğiniz, yansıtma adı yerine, asıl adı belirtmelisiniz @ publisher parametresi sp_addpullsubscription veya sp_addmergepullsubscription.

    Sonra yerine çalışma için ayna ayna adresindeki yayın veritabanı etkinleştirirseniz, sistem tablolarında depolanan Publisher örnek adı ayna addır; ayna adı bu durumda kullanacağınız @ publisher parametresi.

    [!NOT]

    Bazı durumlarda, gibi sp_addpublication, @ publisher parametresi yalnızca desteklenen olmayan- SQL Server Publishers; Bu gibi durumlarda, bu alakalı değil SQL Serververitabanı yansıtma.

  • Bir abonelik eşitlemek için Management Studiosonra yerine çalışma: çekme abonelikleri abone; eşitleme ve etkin yayımcı itme abonelikleri eşitleyin.

Yansıtma kaldırılırsa çoğaltma davranışı

Yayımlanmış bir veritabanından veritabanı yansıtma kaldırılırsa aşağıdaki konuları göz önünde bulundurun:

  • Yayını veritabanı anapara, artık yansıtılmış çoğaltma özgün anapara karşı değiştirilmeden çalışmaya devam eder.

  • Yayını veritabanı anapara yansıtma yöneltilir ve yansıtma ilişki sonradan kaldırılmış veya devre dışı, çoğaltma aracıları karşı ayna çalışmaz. Asıl kalıcı olarak kaybolur, devre dışı bırakmak ve çoğaltma Publisher belirtilen ayna ile yeniden yapılandırın.

  • Veritabanı yansıtma tümüyle kaldırılır, yansıtma veritabanı kurtarma durumunda ve fonksiyonel olmak için geri yüklenmesi gerekir. Kurtarılan veritabanı çoğaltma için davranışını KEEP_REPLICATION seçeneğini belirtilip bağlıdır. Bu seçenek, yedeklemenin oluşturulduğu farklı bir sunucuya yayımlanmış bir veritabanını geri yüklerken çoğaltma ayarları korumak için geri yükleme işlemi zorlar. Yalnızca yayın veritabanı kullanılabilir olmadığında KEEP_REPLICATION seçeneğini kullanın. Eğer diğer yayın veritabanı hala sağlam ve çoğaltma seçeneği desteklenmez. KEEP_REPLICATION hakkında daha fazla bilgi için bkz: RESTORE (Transact-SQL).

Günlük Okuyucu Aracısı davranışı

Aşağıdaki tabloda, çeşitli işletim modundan veritabanı yansıtma için günlük Okuma Aracısı davranışını açıklar. Işletim modları hakkında daha fazla bilgi için bkz: Transact-SQL Settings and Database Mirroring Operating Modes.

Çalışma modu

Günlük Okuma Aracısı davranışı yansıtmayı kullanılamıyorsa

Yüksek güvenlik modunda otomatik yerine çalışma

Yansıtmayı kullanılamıyorsa, günlük Okuma Aracısı komutları dağıtım veritabanında yayar. Ayna çevrimiçi ve tüm hareketleri anapara kadar anapara ayna yerine olamaz.

Yüksek performans modu

Yansıtmayı kullanılamıyorsa, asıl veritabanı maruz çalışan (yani unmirrored). Ancak, Log Reader Agent sadece yansıtmayı sertleştirilmiş bu hareketleri çoğaltır. Hizmet zorlanır ve ayna sunucunun patron rolünü varsayar, Log Reader Agent yansıtmayı karşı çalışmak ve yeni hareketler çekme başlatın. Daha fazla bilgi için, bkz. Forced Service (Database Mirroring).

Çoğaltma gecikmesi yansıtmayı anapara kalırsa artacağını unutmayın.

Yüksek güvenlik modunda otomatik yerine çalışma olmadan

Tüm kaydedilmiş hareketlerini yansıtmayı diske sıkı olması garantilidir. Log Reader Agent sadece yansıtmayı sertleştirilmiş hareketleri çoğaltır. Yansıtmayı kullanılamıyorsa, anapara veritabanı etkinliği daha da izin vermeyen; Bu nedenle günlük Okuma Aracısı çoğaltmak için herhangi bir hareket vardır.

Ayrıca bkz.

Kavramlar

Database Mirroring Administration

Günlük sevkiyat ve çoğaltma (SQL Server)

Diğer Kaynaklar

Implementing Replication