Ortamınızı bağlantı için hazırlama - Azure SQL Yönetilen Örneği

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

Bu makalede, SQL Server ile Azure SQL Yönetilen Örneği arasında çoğaltma yapmak için ortamınızı Yönetilen Örnek bağlantısına nasıl hazırlayabileceğiniz öğretilmektedir.

Dekont

İndirilebilir bir betik kullanarak ortamınızı Yönetilen Örnek bağlantısına hazırlamayı otomatikleştirebilirsiniz. Daha fazla bilgi için bağlantı kurulumu otomatikleştirme bloguna bakın.

Önkoşullar

SQL Server ile Azure SQL Yönetilen Örneği arasında bağlantı oluşturmak için aşağıdaki önkoşullara ihtiyacınız vardır:

  • Etkin bir Azure aboneliği. Aboneliğiniz yoksa ücretsiz bir hesap oluşturun.
  • Gerekli hizmet güncelleştirmesi ile DESTEKLENEN SQL Server sürümü.
  • Azure SQL Yönetilen Örneği. Yoksa başlayın .
  • Bağlantıyı nereden oluşturmanız gerektiğini belirlemek için ilk birincil sunucu olmayı planladığınız sunucuya karar verin. SQL Yönetilen Örneği birincilden SQL Server ikinciline bağlantının yapılandırılması yalnızca SQL Server 2022 CU10'dan başlayarak desteklenir.

Dikkat

Bağlantı özelliğiyle kullanmak üzere SQL yönetilen örneğinizi oluşturduğunuzda, SQL Server'ın kullandığı tüm Bellek İçi OLTP özelliklerinin bellek gereksinimlerini dikkate alın. Daha fazla bilgi için bkz. Azure SQL Yönetilen Örneği kaynak sınırlarına genel bakış.

İzinler

SQL Server için sysadmin izinlerine sahip olmanız gerekir.

Azure SQL Yönetilen Örneği için, SQL Yönetilen Örneği Katkıda Bulunanı üyesi olmanız veya özel rol için aşağıdaki izinlere sahip olmanız gerekir:

Microsoft.Sql/ kaynağı Gerekli izinler
Microsoft.Sql/managedInstances /read, /write
Microsoft.Sql/managedInstances/hybridCertificate /eylem
Microsoft.Sql/managedInstances/databases /read, /delete, /write, /completeRestore/action, /readBackups/action, /restoreDetails/read
Microsoft.Sql/managedInstances/distributedAvailabilityGroups /read, /write, /delete, /setRole/action
Microsoft.Sql/managedInstances/endpointCertificates /Okuma
Microsoft.Sql/managedInstances/hybridLink /read, /write, /delete
Microsoft.Sql/managedInstances/serverTrustCertificates /write, /delete, /read

SQL Server örneğinizi hazırlama

SQL Server örneğinizi hazırlamak için şunları doğrulamanız gerekir:

  • Desteklenen en düşük sürümdesiniz.
  • Kullanılabilirlik grupları özelliğini etkinleştirdiniz.
  • Başlangıçta uygun izleme bayraklarını eklediniz.
  • Veritabanlarınız tam kurtarma modelindedir ve yedeklenir.

Bu değişikliklerin etkili olması için SQL Server'ı yeniden başlatmanız gerekir.

Hizmet güncelleştirmelerini yükleme

SQL Server sürümünüzde, sürüm desteklenebilirliği tablosunda listelendiği gibi uygun bakım güncelleştirmesinin yüklü olduğundan emin olun. Güncelleştirmeleri yüklemeniz gerekiyorsa, güncelleştirme sırasında SQL Server örneğinizi yeniden başlatmanız gerekir.

SQL Server sürümünüzü denetlemek için SQL Server'da aşağıdaki Transact-SQL (T-SQL) betiğini çalıştırın:

-- Run on SQL Server
-- Shows the version and CU of the SQL Server
USE master;
GO
SELECT @@VERSION as 'SQL Server version';

Veritabanında veritabanı ana anahtarı master oluşturma

Henüz yoksa veritabanında veritabanı ana anahtarı master oluşturun. Parolanızı aşağıdaki betiğin <strong_password> yerine ekleyin ve gizli ve güvenli bir yerde saklayın. SQL Server'da bu T-SQL betiğini çalıştırın:

-- Run on SQL Server
-- Create a master key
USE master;
GO
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<strong_password>';

Veritabanı ana anahtarına sahip olduğunuzdan emin olmak için SQL Server'da aşağıdaki T-SQL betiğini kullanın:

-- Run on SQL Server
USE master;
GO
SELECT * FROM sys.symmetric_keys WHERE name LIKE '%DatabaseMasterKey%';

Kullanılabilirlik gruplarını etkinleştirme

Bağlantı özelliği, varsayılan olarak devre dışı bırakılan Always On kullanılabilirlik grupları özelliğini kullanır. Daha fazla bilgi için bkz . AlwaysOn kullanılabilirlik grupları özelliğini etkinleştirme.

Kullanılabilirlik grupları özelliğinin etkinleştirildiğini onaylamak için SQL Server'da aşağıdaki T-SQL betiğini çalıştırın:

-- Run on SQL Server
-- Is the availability groups feature enabled on this SQL Server
DECLARE @IsHadrEnabled sql_variant = (select SERVERPROPERTY('IsHadrEnabled'))
SELECT
    @IsHadrEnabled as 'Is HADR enabled',
    CASE @IsHadrEnabled
        WHEN 0 THEN 'Availability groups DISABLED.'
        WHEN 1 THEN 'Availability groups ENABLED.'
        ELSE 'Unknown status.'
    END
    as 'HADR status'

Önemli

SQL Server 2016 (13.x) için, kullanılabilirlik grupları özelliğini etkinleştirmeniz gerekiyorsa SQL Server 2016 önkoşullarını hazırlama - Azure SQL Yönetilen Örneği bağlantısı altında belgelenen ek adımları tamamlamanız gerekir. Bu ek adımlar, bağlantı tarafından desteklenen SQL Server 2019 (15.x) ve sonraki sürümler için gerekli değildir.

Kullanılabilirlik grupları özelliği etkinleştirilmediyse etkinleştirmek için şu adımları izleyin:

  1. SQL Server Configuration Manager’ı açın.

  2. Sol bölmeden SQL Server Hizmetleri'ni seçin.

  3. SQL Server hizmetine sağ tıklayın ve özellikler'i seçin.

    Screenshot that shows SQL Server Configuration Manager, with selections for opening properties for the service.

  4. AlwaysOn Kullanılabilirlik Grupları sekmesine gidin.

  5. Her Zaman Açık Kullanılabilirlik Gruplarını Etkinleştir onay kutusunu ve ardından Tamam'ı seçin.

    Screenshot that shows the properties for Always On availability groups.

    • SQL Server 2016 (13.x) kullanılıyorsa ve Her Zaman Açık Kullanılabilirlik Gruplarını Etkinleştir seçeneği iletiyle This computer is not a node in a failover cluster.devre dışı bırakıldıysa, SQL Server 2016 önkoşullarını hazırlama - Azure SQL Yönetilen Örneği bağlantısında açıklanan ek adımları izleyin. Bu diğer adımları tamamladıktan sonra geri dönün ve bu adımı yeniden deneyin.
  6. İletişim kutusunda Tamam'ı seçin.

  7. SQL Server hizmetini yeniden başlatın.

Başlangıç izleme bayraklarını etkinleştirme

Bağlantınızın performansını iyileştirmek için başlangıçta aşağıdaki izleme bayraklarını etkinleştirmenizi öneririz:

  • -T1800: Bu izleme bayrağı, kullanılabilirlik grubundaki birincil ve ikincil çoğaltmaların günlük dosyaları 512 bayt ve 4 KB gibi farklı kesim boyutlarına sahip disklerde barındırıldığında performansı iyileştirir. Hem birincil hem de ikincil çoğaltmaların disk kesimi boyutu 4 KB ise, bu izleme bayrağı gerekli değildir. Daha fazla bilgi için bkz. KB3009974.
  • -T9567: Bu izleme bayrağı, otomatik dağıtım sırasında kullanılabilirlik grupları için veri akışının sıkıştırılmasına olanak tanır. Sıkıştırma, işlemci üzerindeki yükü artırır, ancak tohumlama sırasında aktarım süresini önemli ölçüde azaltabilir.

Başlangıçta bu izleme bayraklarını etkinleştirmek için aşağıdaki adımları kullanın:

  1. SQL Server Configuration Manager’ı açın.

  2. Sol bölmeden SQL Server Hizmetleri'ni seçin.

  3. SQL Server hizmetine sağ tıklayın ve özellikler'i seçin.

    Screenshot that shows SQL Server Configuration Manager.

  4. Başlangıç Parametreleri sekmesine gidin. Başlangıç parametresi belirtin bölümüne girin -T1800 ve Ekle'yi seçerek başlangıç parametresini ekleyin. Ardından girin -T9567 ve Ekle'yi seçerek diğer izleme bayrağını ekleyin. Yaptığınız değişiklikleri kaydetmek için Apply'ı (Uygula) seçin.

    Screenshot that shows startup parameter properties.

  5. Özellikler penceresini kapatmak için Tamam'ı seçin.

Daha fazla bilgi için izleme bayraklarını etkinleştirmek için söz dizimine bakın.

SQL Server'ı yeniden başlatın ve yapılandırmayı doğrulayın

SQL Server'ın desteklenen bir sürümünde olduğunuzdan emin olduktan, Always On kullanılabilirlik grupları özelliğini etkinleştirdikten ve başlangıç izleme bayraklarınızı ekledikten sonra, bu değişikliklerin tümünü uygulamak için SQL Server örneğinizi yeniden başlatın:

  1. SQL Server Yapılandırma Yöneticisi açın.

  2. Sol bölmeden SQL Server Hizmetleri'ni seçin.

  3. SQL Server hizmetine sağ tıklayın ve yeniden başlat'ı seçin.

    Screenshot that shows the SQL Server restart command call.

Yeniden başlatma işleminden sonra SQL Server örneğinizin yapılandırmasını doğrulamak için SQL Server'da aşağıdaki T-SQL betiğini çalıştırın:

-- Run on SQL Server
-- Shows the version and CU of SQL Server
USE master;
GO
SELECT @@VERSION as 'SQL Server version';
GO
-- Shows if the Always On availability groups feature is enabled
SELECT SERVERPROPERTY ('IsHadrEnabled') as 'Is Always On enabled? (1 true, 0 false)';
GO
-- Lists all trace flags enabled on SQL Server
DBCC TRACESTATUS;

SQL Server sürümünüz, uygun hizmet güncelleştirmeleriyle uygulanan desteklenen sürümlerden biri olmalı, Always On kullanılabilirlik grupları özelliği etkinleştirilmeli ve izleme bayraklarına -T1800 sahip olmalı ve -T9567 etkinleştirilmelidir. Aşağıdaki ekran görüntüsü, düzgün yapılandırılmış bir SQL Server örneği için beklenen sonucun bir örneğidir:

Screenshot that shows the expected outcome in S S M S.

Ağ bağlantısını yapılandırma

Bağlantının çalışması için SQL Server ile SQL Yönetilen Örneği arasında ağ bağlantınız olmalıdır. Seçtiğiniz ağ seçeneği, SQL Server örneğinizin bir Azure ağında olup olmamasına bağlıdır.

Azure Sanal Makineler'de SQL Server

azure Sanal Makineler SQL Yönetilen Örneği barındıran aynı Azure sanal ağında SQL Server dağıtmak en basit yöntemdir, çünkü iki örnek arasında otomatik olarak ağ bağlantısı olacaktır. Daha fazla bilgi için bkz. Hızlı Başlangıç: Azure VM'yi Azure SQL Yönetilen Örneği bağlanacak şekilde yapılandırma.

Azure Sanal Makineler örneğindeki SQL Server'ınız yönetilen örneğinizden farklı bir sanal ağdaysa, her iki sanal ağ arasında bir bağlantı oluşturmanız gerekir. Bu senaryonun çalışması için sanal ağların aynı abonelikte yer alması gerekmez.

Sanal ağları bağlamak için iki seçenek vardır:

Eşleme, Microsoft omurga ağını kullandığından tercih edilir, bu nedenle bağlantı açısından bakıldığında eşlenmiş bir sanal ağdaki sanal makineler ile aynı sanal ağdaki sanal makineler arasındaki gecikme süresinde belirgin bir fark yoktur. Sanal ağ eşlemesi, aynı bölgedeki ağlar arasında desteklenir. Genel sanal ağ eşlemesi, 22 Eylül 2020'de oluşturulan alt ağlarda barındırılan örnekler için desteklenir. Daha fazla bilgi için bkz . Sık sorulan sorular (SSS).

Azure dışındaki SQL Server

SQL Server örneğiniz Azure dışında barındırılıyorsa, şu seçeneklerden birini kullanarak SQL Server ile SQL Yönetilen Örneği arasında bir VPN bağlantısı kurun:

Bahşiş

Verileri çoğaltırken en iyi ağ performansı için ExpressRoute'u öneririz. Kullanım örneğiniz için yeterli bant genişliğine sahip bir ağ geçidi sağlayın.

Ortamlar arasındaki ağ bağlantı noktaları

Bağlantı mekanizmasından bağımsız olarak, ortamlar arasında ağ trafiğinin akması için karşılanması gereken gereksinimler vardır:

Yönetilen örneği barındıran alt ağ üzerindeki Ağ Güvenlik Grubu (NSG) kurallarının aşağıdakilere izin vermeleri gerekir:

  • Kaynak SQL Server IP'sinden trafik almak için gelen bağlantı noktası 5022 ve bağlantı noktası aralığı 11000-11999
  • Trafiği hedef SQL Server IP'sine göndermek için giden bağlantı noktası 5022

SQL Server'ı barındıran ağdaki tüm güvenlik duvarlarının ve konak işletim sisteminin aşağıdakilere izin vermeleri gerekir:

  • Gelen bağlantı noktası 5022, /24 MI alt ağdaki kaynak IP aralığından trafik almak için açıldı (örneğin, 10.0.0.0/24)
  • Giden bağlantı noktaları 5022 ve 11000-11999 bağlantı noktası aralığı, MI alt ağdaki hedef IP aralığına trafik göndermek için açıldı (örnek 10.0.0.0/24)

Diagram showing network requirements to set up the link between SQL Server and managed instance.

Aşağıdaki tabloda her ortam için bağlantı noktası eylemleri açıklanmaktadır:

Ortam Yapılması gereken
SQL Server (Azure'da) Ağ güvenlik duvarı için 5022 numaralı bağlantı noktasında hem gelen hem de giden trafiği SQL Yönetilen Örneği alt ağ IP aralığının tamamına açın. Gerekirse, SQL Server ana bilgisayar işletim sistemi (Windows/Linux) güvenlik duvarında da aynısını yapın. Bağlantı noktası 5022'de iletişime izin vermek için SANAL makineyi barındıran sanal ağda bir ağ güvenlik grubu (NSG) kuralı oluşturun.
SQL Server (Azure dışında) Ağ güvenlik duvarı için 5022 numaralı bağlantı noktasında hem gelen hem de giden trafiği SQL Yönetilen Örneği alt ağ IP aralığının tamamına açın. Gerekirse, SQL Server ana bilgisayar işletim sistemi (Windows/Linux) güvenlik duvarında da aynısını yapın.
SQL Yönetilen Örneği 5022 numaralı bağlantı noktası ve 11000-11999 numaralı bağlantı noktası aralığında SQL Server'ı barındıran ağ ve IP adresinden gelen ve giden trafiğe izin vermek için Azure portalında bir NSG kuralı oluşturun.

Windows Güvenlik Duvarı'nda bağlantı noktalarını açmak için SQL Server örneğinin Windows ana bilgisayar işletim sisteminde aşağıdaki PowerShell betiğini kullanın:

New-NetFirewallRule -DisplayName "Allow TCP port 5022 inbound" -Direction inbound -Profile Any -Action Allow -LocalPort 5022 -Protocol TCP
New-NetFirewallRule -DisplayName "Allow TCP port 5022 outbound" -Direction outbound -Profile Any -Action Allow -LocalPort 5022 -Protocol TCP

Aşağıdaki diyagramda, ortamdaki tüm güvenlik duvarlarının SQL Server'ı barındıran işletim sistemi güvenlik duvarı ve tüm kurumsal güvenlik duvarları ve/veya ağ geçitleri dahil olmak üzere açık bağlantı noktalarına sahip olması gerektiğini gösteren bir şirket içi ağ ortamı örneği gösterilmektedir:

Diagram showing network infrastructure to set up the link between SQL Server and managed instance.

Önemli

  • Bağlantı noktalarının, konak sunucusu ve ağdaki tüm şirket güvenlik duvarları veya ağ geçitleri dahil olmak üzere ağ ortamındaki her güvenlik duvarında açık olması gerekir. Şirket ortamlarında, şirket ağ katmanında ek bağlantı noktalarının açılmasına yardımcı olması için ağ yöneticinize bu bölümdeki bilgileri göstermeniz gerekebilir.
  • SQL Server tarafında uç noktayı özelleştirmeyi seçebilirsiniz ancak SQL Yönetilen Örneği bağlantı noktası numaraları değiştirilemez veya özelleştirılamaz.
  • Yönetilen örnekleri barındıran alt ağların IP adresi aralıkları ve SQL Server çakışmamalıdır.

İzin verilenler listesine URL ekleme

Ağ güvenlik ayarlarınıza bağlı olarak, SQL Yönetilen Örneği FQDN'sine ve Azure tarafından kullanılan Kaynak Yönetimi uç noktalarına yönelik URL'leri izin verilenler listenize eklemeniz gerekebilir.

İzin verilenler listenize eklenmesi gereken kaynaklar aşağıda listelenmiştir:

  • SQL Yönetilen Örneği tam etki alanı adı (FQDN). Örneğin: managedinstance1.6d710bcf372b.database.windows.net.
  • Microsoft Entra Authority
  • Microsoft Entra Endpoint Kaynak Kimliği
  • Resource Manager Uç Noktası
  • Hizmet Uç Noktası

SQL Server Management Studio'daki (SSMS) Araçlar arabirimine erişmek ve izin verilenler listenize eklemeniz gereken buluttaki kaynakların belirli URL'lerini belirlemek için Kamu bulutları için SSMS'yi yapılandırma bölümündeki adımları izleyin.

Ağ bağlantısını test etme

Bağlantının çalışması için SQL Server ile SQL Yönetilen Örneği arasında çift yönlü ağ bağlantısı gereklidir. SQL Server tarafında bağlantı noktalarını açıp SQL Yönetilen Örneği tarafında bir NSG kuralı yapılandırdıktan sonra SQL Server Management Studio (SSMS) veya Transact-SQL kullanarak bağlantıyı test edin.

SSMS'de SQL Server ile SQL Yönetilen Örneği arasındaki ağ bağlantısını test etmek için şu adımları izleyin:

  1. SSMS'de birincil çoğaltma olacak örneğe Bağlan.

  2. Nesne Gezgini veritabanlarını genişletin ve ikincil veritabanıyla ilişkilendirmek istediğiniz veritabanına sağ tıklayın. Görevler> Azure SQL Yönetilen Örneği Ağ Denetleyicisi sihirbazını açmak için Test Bağlan ion bağlantısını>seçin:

    Screenshot of object explorer in S S M S, with test connection selected in the database link right-click menu.

  3. Ağ Denetleyicisi sihirbazının Giriş sayfasında İleri'yiseçin.

  4. Önkoşullar sayfasında tüm gereksinimler karşılanıyorsa İleri'yi seçin. Aksi takdirde karşılanmayan önkoşulları çözün ve Doğrulamayı Yeniden Çalıştır'ı seçin.

  5. İkincil çoğaltma olacak diğer örneğe bağlanmak için Oturum Aç sayfasında Oturum Aç'ı seçin. İleri'yi seçin.

  6. Ağ Seçeneklerini Belirtin sayfasında ayrıntıları denetleyin ve gerekirse bir IP adresi sağlayın. İleri'yi seçin.

  7. Özet sayfasında, sihirbazın gerçekleştirilir eylemleri gözden geçirin ve ardından son'u seçerek iki çoğaltma arasındaki bağlantıyı test edin.

  8. İki çoğaltma arasında bağlantı olduğunu doğrulamak için Sonuçlar sayfasını gözden geçirin ve ardından bitirmek için Kapat'ı seçin.

Dikkat

Sonraki adımlarla yalnızca kaynak ve hedef ortamlarınız arasındaki ağ bağlantısını doğruladıktan sonra devam edin. Aksi takdirde devam etmeden önce ağ bağlantısı sorunlarını giderin.

TDE korumalı veritabanının sertifikalarını geçirme (isteğe bağlı)

Saydam Veri Şifrelemesi (TDE) tarafından korunan bir SQL Server veritabanını yönetilen örneğe bağlıyorsanız, bağlantıyı kullanmadan önce ilgili şifreleme sertifikasını şirket içi veya Azure VM SQL Server örneğinden yönetilen örneğe geçirmeniz gerekir. Ayrıntılı adımlar için bkz. TDE korumalı veritabanının sertifikasını Azure SQL Yönetilen Örneği geçirme.

Hizmet tarafından yönetilen TDE anahtarlarıyla şifrelenmiş SQL Yönetilen Örneği veritabanları SQL Server'a bağlanamaz. Şifrelenmiş veritabanını SQL Server'a bağlamanız için, veritabanının müşteri tarafından yönetilen bir anahtarla şifrelenmesi ve hedef sunucunun veritabanını şifrelemek için kullanılan anahtara erişmesi gerekir. Daha fazla bilgi için bkz . Azure Key Vault ile SQL Server TDE'yi ayarlama.

SSMS'yi yükleme

SQL Server Management Studio (SSMS), Yönetilen Örnek bağlantısını kullanmanın en kolay yoludur. SSMS sürüm 19.0 veya üzerini indirin ve istemci makinenize yükleyin.

Yükleme tamamlandıktan sonra SSMS'yi açın ve desteklenen SQL Server örneğine bağlanın. Bir kullanıcı veritabanına sağ tıklayın ve menüde Azure SQL Yönetilen Örneği bağlantı seçeneğinin göründüğünü doğrulayın.

Screenshot that shows the Azure SQL Managed Instance link option on the context menu.

Kamu bulutları için SSMS'yi yapılandırma

SQL Yönetilen Örneği bir kamu bulutunda dağıtmak istiyorsanız SQL Server Management Studio (SSMS) ayarlarınızı doğru bulutu kullanacak şekilde değiştirmeniz gerekir. SQL Yönetilen Örneği bir kamu bulutunda dağıtmıyorsanız bu adımı atlayın.

SSMS ayarlarınızı güncelleştirmek için şu adımları izleyin:

  1. SSMS’i açın.
  2. Menüde Araçlar'ı ve ardından Seçenekler'i seçin.
  3. Azure Hizmetleri'yi genişletin ve Azure Bulut'a tıklayın.
  4. Azure Bulutu Seçin altında, açılan listeyi kullanarak AzureUSGovernment'ı veya AzureChinaCloud gibi başka bir kamu bulutunu seçin:

Screenshot of SSMS UI, options page, Azure services, with Azure cloud highlighted.

Genel buluta geri dönmek istiyorsanız açılan listeden AzureCloud'u seçin.