Azure SQL Yönetilen Örneği ile işlem çoğaltması

Şunlar için geçerlidir: Azure SQL Yönetilen Örneği

İşlem çoğaltma, Azure SQL Yönetilen Örneği veya SQL Server örnekteki bir tablodaki verileri uzak veritabanlarına yerleştirilen tablolara çoğaltmanızı sağlayan bir Azure SQL Yönetilen Örneği ve SQL Server özelliğidir. Bu özellik farklı veritabanlarında yer alan birden fazla tabloyu eşitlemenizi sağlar.

Genel Bakış

İşlem çoğaltmasını kullanarak bir Azure SQL Yönetilen Örneği yapılan değişiklikleri aşağıdakilere gönderebilirsiniz:

  • SQL Server veritabanı - şirket içinde veya Azure sanal makinesinde

  • Azure SQL Veritabanı'nda yer alan bir veritabanı

  • Azure SQL Yönetilen Örneğinde yer alan bir örnek veritabanı

    Not

    Azure SQL Yönetilen Örneği tüm özelliklerini kullanmak için en son SQL Server Management Studio (SSMS) ve SQL Server Veri Araçları (SSDT) sürümlerini kullanıyor olmanız gerekir.

Bileşenler

aşağıdaki resimde gösterildiği gibi, işlem çoğaltmasının temel bileşenleri Yayımcı, Dağıtımcı ve Abone'dir:

SQL Veritabanı ile çoğaltma

Rol Azure SQL Veritabanı Azure SQL Yönetilen Örnek
Publisher Hayır Evet
Dağıtımcı Hayır Evet
Çekme abonesi Hayır Evet
Anında İletme Abonesi Evet Evet

Publisher, güncelleştirmeleri Dağıtımcıya göndererek bazı tablolarda (makaleler) yapılan değişiklikleri yayımlar. Yayımcı bir Azure SQL Yönetilen Örneği veya SQL Server örneği olabilir.

Dağıtımcı, bir Yayımcının makalelerindeki değişiklikleri toplar ve bunları Abonelere dağıtır. Dağıtımcı bir Azure SQL Yönetilen Örneği veya SQL Server örneği (Publisher sürümüne eşit veya ondan yüksek olduğu sürece herhangi bir sürüm) olabilir.

Abone, Yayımcıda yapılan değişiklikleri alır. Dağıtımcı bir Azure SQL Yönetilen Örneği olduğunda ve abone olmadığında çekme aboneliği desteklenmese de, SQL Server bir örnek ve Azure SQL Yönetilen Örneği hem gönderme hem de çekme aboneleri olabilir. Azure SQL Veritabanı'ndaki bir veritabanı yalnızca anında iletme abonesi olabilir.

Azure SQL Yönetilen Örneği, aşağıdaki SQL Server sürümlerinden abone olmayı destekleyebilir:

  • SQL Server 2016 ve üzeri

  • SQL Server 2014 RTM CU10 (12.0.4427.24) veya SP1 CU3 (12.0.2556.4)

  • SQL Server 2012 SP2 CU8 (11.0.5634.1) veya SP3 (11.0.6020.0) veya SP4 (11.0.7001.0)

    Not

    • Azure'daki nesnelere yayımlamayı desteklemeyen diğer SQL Server sürümlerinde, verileri daha yeni SQL Server sürümlerine taşımak için yeniden yayımlama veri yöntemini kullanmak mümkündür.
    • Daha eski bir sürümü kullanarak çoğaltmayı yapılandırmaya çalışmak MSSQL_REPL20084 (İşlem Aboneye bağlanamadı) ve MSSQ_REPL40532 (Oturum açma tarafından istenen sunucu <adı> açılamıyor) hata numarasıyla sonuçlanabilir. Oturum açılamadı.)

Çoğaltma türleri

Farklı çoğaltma türleri vardır:

Çoğaltma Azure SQL Veritabanı Azure SQL Yönetilen Örnek
Standart İşlem Evet (yalnızca abone olarak) Evet
Anlık Görüntü Evet (yalnızca abone olarak) Evet
Birleştirme çoğaltması Hayır Hayır
Eşler arası Hayır Hayır
Çift Yönlü Hayır Evet
Güncelleştirilebilir abonelikler Hayır Hayır

Desteklenebilirlik Matrisi

Azure SQL Yönetilen Örneği için işlem çoğaltması desteklenebilirlik matrisi, SQL Server için olanla aynıdır.

Publisher Dağıtımcı Abone
SQL Server 2019 SQL Server 2019 SQL Server 2019
SQL Server 2017
SQL Server 2016
SQL Server 2017 SQL Server 2019
SQL Server 2017
SQL Server 2019
SQL Server 2017
SQL Server 2016
SQL Server 2014
SQL Server 2016 SQL Server 2019
SQL Server 2017
SQL Server 2016
SQL Server 2019
SQL Server 2017
SQL Server 2016
SQL Server 2014
SQL Server 2012
SQL Server 2014 SQL Server 2019
SQL Server 2017
SQL Server 2016
SQL Server 2014
SQL Server 2017
SQL Server 2016
SQL Server 2014
SQL Server 2012
SQL Server 2008 R2
SQL Server 2008
SQL Server 2012 SQL Server 2019
SQL Server 2017
SQL Server 2016
SQL Server 2014
SQL Server 2012
SQL Server 2016
SQL Server 2014
SQL Server 2012
SQL Server 2008 R2
SQL Server 2008
SQL Server 2008 R2
SQL Server 2008
SQL Server 2019
SQL Server 2017
SQL Server 2016
SQL Server 2014
SQL Server 2012
SQL Server 2008 R2
SQL Server 2008
SQL Server 2014
SQL Server 2012
SQL Server 2008 R2
SQL Server 2008

Kullanılması gereken durumlar

İşlem çoğaltması aşağıdaki senaryolarda yararlıdır:

  • Veritabanındaki bir veya daha fazla tabloda yapılan değişiklikleri yayımlayın ve bunları bir SQL Server örneğindeki veya değişikliklere abone olan Azure SQL Veritabanı'ndaki bir veya birden çok veritabanına dağıtın.
  • Çeşitli dağıtılmış veritabanlarını eşitlenmiş durumda tutun.
  • Değişiklikleri sürekli yayımlayarak veritabanlarını bir SQL Server örnekten veya Azure SQL Yönetilen Örneği başka bir veritabanına geçirin.

Veri Eşitlemeyi İşlem Çoğaltması ile Karşılaştırma

Kategori Data Sync İşlem Çoğaltması
Avantajlar - Etkin-etkin destek
- Şirket içi ve Azure SQL Veritabanı arasında çift yönlü
- Daha düşük gecikme süresi
- İşlem tutarlılığı
- Geçiş sonrasında mevcut topolojiyi yeniden kullanma
Dezavantajlar - İşlem tutarlılığı yok
- Daha yüksek performans etkisi
- Azure SQL Veritabanından yayımlanamıyor
- Yüksek bakım maliyeti

Yaygın yapılandırmalar

Genel olarak, yayımcı ve dağıtımcı bulutta veya şirket içinde olmalıdır. Aşağıdaki yapılandırmalar desteklenir:

SQL Yönetilen Örneği'de yerel Dağıtımcı ile Publisher

Publisher ve Distributor olarak tek örnek

Yayımcı ve dağıtımcı tek bir SQL Yönetilen Örneği içinde yapılandırılır ve değişiklikleri başka bir SQL Yönetilen Örneği, SQL Veritabanı veya SQL Server örneğine dağıtır.

SQL Yönetilen Örneği'da uzak dağıtımcılı Publisher

Bu yapılandırmada, bir yönetilen örnek, birçok kaynak SQL Yönetilen Örneğine hizmet verebilen ve değişiklikleri Azure SQL Veritabanı, Azure SQL Yönetilen Örneği veya SQL Server üzerindeki bir veya birden çok hedefe dağıtabilen başka bir SQL Yönetilen Örneği yerleştirilen dağıtımcıya değişiklikler yayımlar.

Publisher ve Distributor için ayrı örnekler

Yayımcı ve dağıtımcı iki yönetilen örnekte yapılandırılır. Bu yapılandırmayla ilgili bazı kısıtlamalar vardır:

  • Her iki yönetilen örnek de aynı sanal ağda yer alır.
  • Her iki yönetilen örnek de aynı konumdadır.

Uzak aboneye sahip şirket içi Yayımcı/Dağıtımcı

Veritabanını abone olarak Azure SQL

Bu yapılandırmada, Azure SQL Veritabanı'ndaki veya Azure SQL Yönetilen Örneği bir veritabanı abonedir. Bu yapılandırma, şirket içinden Azure'a geçişi destekler. Abone Azure SQL Veritabanındaki bir veritabanıysa, gönderme modunda olmalıdır.

Gereksinimler

  • Çoğaltma katılımcıları arasında bağlantı için SQL Kimlik Doğrulamasını kullanın.
  • Çoğaltma tarafından kullanılan çalışma dizini için bir Azure Depolama Hesabı paylaşımı kullanın.
  • Azure dosya paylaşımına erişmek için alt ağ güvenlik kurallarında 445 numaralı TCP giden bağlantı noktasını açın.
  • SQL Yönetilen Örneği Yayımcı/Dağıtımcı olduğunda ve Abone olmadığında TCP giden bağlantı noktası 1433'i açın. Bağlantı noktası 1433 Hedef Hizmeti etiketi için allow_linkedserver_outbound SQL Yönetilen Örneği NSG giden güvenlik kuralını olarak virtualnetworkinternetda değiştirmeniz gerekebilir.
  • Hem yayımcıyı hem de dağıtımcıyı buluta veya her ikisini de şirket içine yerleştirin.
  • Sanal ağlar farklıysa çoğaltma katılımcılarının sanal ağları arasında VPN eşlemesini yapılandırın.

Not

Dağıtımcı bir Azure SQL Yönetilen Örneği veritabanı ve abone şirket içinde olduğunda giden ağ güvenlik grubu (NSG) bağlantı noktası 445 engellenirse Azure Depolama Dosyasına bağlanırken 53 hatasıyla karşılaşabilirsiniz. Bu sorunu çözmek için sanal ağ NSG'sini güncelleştirin.

Yük devretme gruplarıyla

Yayımcı veyadağıtımcı SQL Yönetilen Örneği bir yük devretme grubundaysa, SQL Yönetilen Örneği yöneticisinin eski birincildeki tüm yayınları temizlemesi ve yük devretme gerçekleştikten sonra bunları yeni birincilde yeniden yapılandırması gerekir. Bu senaryoda aşağıdaki etkinlikler gereklidir:

  1. Varsa, veritabanında çalışan tüm çoğaltma işlerini durdurun.

  2. Yayımcı veritabanında aşağıdaki betiği çalıştırarak yayımcıdan abonelik meta verilerini bırakın:

    EXEC sp_dropsubscription @publication='<name of publication>', @article='all',@subscriber='<name of subscriber>'
    
  3. Aboneden abonelik meta verilerini bırakın. Abone SQL Yönetilen Örneği abonelik veritabanında aşağıdaki betiği çalıştırın:

    EXEC sp_subscription_cleanup
       @publisher = N'<full DNS of publisher, e.g. example.ac2d23028af5.database.windows.net>',
       @publisher_db = N'<publisher database>',
       @publication = N'<name of publication>';
    
  4. Yayımlanan veritabanında aşağıdaki betiği çalıştırarak yayımcıdan tüm çoğaltma nesnelerini zorla bırakın:

    EXEC sp_removedbreplication
    
  5. Eski dağıtımcıyı özgün birincil SQL Yönetilen Örneği zorla bırakma (dağıtımcıya sahip olan eski bir birincil sunucuya yeniden yük devrediyorsa). Eski dağıtımcı SQL Yönetilen Örneği ana veritabanında aşağıdaki betiği çalıştırın:

    EXEC sp_dropdistributor 1,1
    

Abone SQL Yönetilen Örneği bir yük devretme grubundaysa, yayının abone tarafından yönetilen örneğin yük devretme grubu dinleyici uç noktasına bağlanacak şekilde yapılandırılması gerekir. Yük devretme durumunda, yönetilen örnek yöneticisi tarafından gerçekleştirilen sonraki eylem, gerçekleşen yük devretme türüne bağlıdır:

  • Veri kaybı olmadan yük devretme için çoğaltma, yük devretmeden sonra çalışmaya devam eder.
  • Veri kaybı olan bir yük devretme için çoğaltma da çalışır. Kayıp değişiklikleri yeniden çoğaltır.
  • Veri kaybı olan bir yük devretme için, ancak veri kaybı dağıtım veritabanı saklama süresinin dışındaysa, SQL Yönetilen Örneği yöneticisinin abonelik veritabanını yeniden başlatması gerekir.

Sonraki adımlar

İşlem çoğaltmasını yapılandırma hakkında daha fazla bilgi için aşağıdaki öğreticilere bakın:

Ayrıca bkz.