Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:Azure SQL Managed Instance
Bu makalede Transact-SQL ve PowerShell veya Azure CLI betikleriyle SQL Server ile Azure SQL Yönetilen Örneği arasında nasıl bağlantı yapılandırabileceğiniz öğretildi. Bağlantıyla, birincil veritabanlarınız neredeyse gerçek zamanlı olarak ikincil replikaya çoğaltılır.
Bağlantı oluşturulduktan sonra, geçiş veya olağanüstü durum kurtarma amacıyla ikincil kopyanıza yük devredebilirsiniz.
Not
- Bağlantıyı SQL Server Management Studio (SSMS) ile yapılandırmak da mümkündür.
- SQL Server 2022 CU10'dan itibaren, Azure SQL Yönetilen Örneği'ni ilk birincil olarak yapılandırmak desteklenir.
Genel bakış
Bağlantı özelliğini kullanarak veritabanlarınızı orijinal birincil kopyanızdan ikincil replikaya çoğaltın. SQL Server 2022 için, ilk birincil SQL Server veya Azure SQL Yönetilen Örneği olabilir. SQL Server 2019 ve önceki sürümler için ilk birincil sunucu SQL Server olmalıdır. Bağlantı yapılandırıldıktan sonra, ilk birincil veritabanı ikincil kopyaya çoğaltılır.
Birincil ve ikincil çoğaltma arasındaki karma bir ortamda sürekli veri çoğaltması için bağlantıyı olduğu gibi bırakabilir veya veritabanını ikincil çoğaltmaya yük devredebilir, Azure'a geçiş yapabilir ya da olağanüstü durum kurtarma amacıyla kullanabilirsiniz. SQL Server 2019 ve önceki sürümlerde Azure SQL Yönetilen Örneği'ne yük devretme işlemi bağlantıyı keser ve geri dönme desteklenmez. SQL Server 2022 ile bağlantıyı koruma ve iki kopya arasında geçiş yapma seçeneğiniz vardır.
İkincil yönetilen örneğinizi yalnızca olağanüstü durum kurtarma için kullanmayı planlıyorsanız karma yük devretme avantajını etkinleştirerek lisanslama maliyetlerinden tasarruf edebilirsiniz.
SQL Server ile Azure SQL Yönetilen Örneği arasındaki bağlantıyı el ile ayarlamak için bu makaledeki yönergeleri kullanın. Bağlantı oluşturulduktan sonra, kaynak veritabanınıza hedef ikincil replikada salt okunur bir kopya oluşturulur.
İpucu
Ortamınız için doğru parametrelerle T-SQL betiklerini kullanmayı basitleştirmek için, bağlantıyı oluşturmak üzere bir betik oluşturmak üzere SQL Server Management Studio'da (SSMS) Yönetilen Örnek bağlantı sihirbazını kullanmanızı kesinlikle öneririz. Yeni Yönetilen Örnek bağlantısı penceresinin Özet sayfasında Son yerine Betik'i seçin.
Önkoşullar
Veritabanlarınızı çoğaltmak 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ştirmesinin yüklü olduğu desteklenen SQL Server sürümü.
- Azure SQL Yönetilen Örnek. Eğer yoksa başlayın.
- PowerShell modülü
Az.SQL 6.0.0 veya üzeri ya da Azure CLI 2.67.0 veya üzeri. İsterseniz komutları çalıştırmak için web tarayıcısından Azure Cloud Shell'i çevrimiçi olarak da kullanabilirsiniz çünkü her zaman en son modül sürümleriyle güncelleştirilir. - Düzgün hazırlanmış bir ortam.
Aşağıdaki topluluklara bir göz atın:
- Bağlantı özelliği, bağlantı başına bir veritabanını destekler. Bir örnekte birden çok veritabanını çoğaltmak için her bir veritabanı için bir bağlantı oluşturun. Örneğin, 10 veritabanını SQL Yönetilen Örneği'nde çoğaltmak için 10 ayrı bağlantı oluşturun.
- SQL Server ile SQL Yönetilen Örneği arasındaki karşılaştırma aynı olmalıdır. Sıralamadaki bir uyuşmazlık, sunucu adının büyük/küçük harf farkına yol açabilir ve SQL Server'dan SQL Yönetilen Örnek'e bağlantının başarılı olmasını engelleyebilir.
- İlk SQL Server birincil sunucunuzda hata 1475,
COPY ONLYseçeneği olmadan bir tüm yedekleme oluşturarak yeni bir yedekleme zinciri başlatmanız gerektiğini bildirir. - SQL Yönetilen Örneği'nden SQL Server 2025'e bağlantı kurmak veya yük devri yapmak için SQL Yönetilen Örneğinizin, SQL Server 2025 güncelleme politikasıyla yapılandırılması gerekir. SQL Yönetilen Örneği'nden SQL Server 2025'e veri çoğaltma ve yük devretme, eşleşmeyen bir güncelleştirme ilkesiyle yapılandırılmış örnekler tarafından desteklenmez.
- SQL Yönetilen Örneği'ni SQL Server 2022'ye bağlantı kurmak veya failover gerçekleştirmek için SQL yönetilen örneğinizin SQL Server 2022 güncelleştirme ilkesiyle yapılandırılması gerekir. SQL Yönetilen Örneği'nden SQL Server 2022'ye veri çoğaltma ve yük devretme, eşleşmeyen bir güncelleştirme ilkesiyle yapılandırılmış örnekler tarafından desteklenmez.
- Sql Server'ın desteklenen bir sürümünden Always-up-to-date güncelleştirme ilkesiyle yapılandırılmış bir SQL yönetilen örneğine bağlantı oluşturabilirsiniz ancak SQL Yönetilen Örneği'ne yük devretme işleminden sonra artık verileri çoğaltamaz veya SQL Server örneğine geri yük devredemezsiniz.
İ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 aşağıdaki özel rol izinlerine sahip olmanız gerekir.
| Microsoft.Sql/ kaynağı | Gerekli izinler |
|---|---|
| Microsoft.Sql/managedInstances | /oku, /yaz |
| Microsoft.Sql/managedInstances/hybridCertificate | /eylem |
| Microsoft.Sql/managedInstances/databases | /okuma, /silme, /yazma, /tamamlaGeriYükleme/eylem, /yedekleriOku/eylem, /geriYüklemeDetayları/okuma |
| Microsoft.Sql/managedInstances/distributedAvailabilityGroups | /oku, /yaz, /sil, /rolüAyarla/action |
| Microsoft.Sql/managedInstances/endpointCertificates | /okumak |
| Microsoft.Sql/managedInstances/hybridLink | /oku, /yaz, /sil |
| Microsoft.Sql/managedInstances/serverTrustCertificates | /yaz, /sil, /oku |
Terminoloji ve adlandırma kuralları
Bu kullanıcı kılavuzundaki betikleri çalıştırırken SQL Server ve SQL Yönetilen Örneği adlarını tam etki alanı adları (FQDN) ile karıştırmamak önemlidir. Aşağıdaki tabloda, çeşitli adların tam olarak neyi temsil ettiği ve değerlerini nasıl edinecekleri açıklanmaktadır:
| Terminoloji | Açıklama | Nasıl öğrenilir |
|---|---|---|
| İlk birincil 1 | VERITABANınızı ikincil çoğaltmaya çoğaltmak için başlangıçta bağlantı oluşturduğunuz SQL Server veya SQL Yönetilen Örneği. | |
| Birincil replikası | Şu anda birincil veritabanını barındıran SQL Server veya SQL Managed Instance. | |
| İkincil kopya | Geçerli birincil replika’dan neredeyse gerçek zamanlı olarak çoğaltılan verileri alan SQL Server veya SQL Yönetilen Örneği. | |
| SQL Server adı | Kısa, tek sözcüklü SQL Server adı. Örneğin: sqlserver1. | T-SQL'den çalıştırın SELECT @@SERVERNAME . |
| SQL Server FQDN | SQL Server'ınızın tam etki alanı adı (FQDN). Örneğin: sqlserver1.domain.com. | Şirket içi ağ (DNS) yapılandırmanıza veya Azure sanal makinesi (VM) kullanıyorsanız sunucu adına bakın. |
| SQL Yönetilen Örneği adı | Kısa, tek sözcüklü SQL Yönetilen Örneği adı. Örneğin: managedinstance1. | Azure portalında yönetilen örneğinizin adına bakın. |
| SQL Yönetilen Örneği FQDN | SQL Yönetilen Örneğinizin Tam Etki Alanı Adı (FQDN). Örneğin: managedinstance1.6d710bcf372b.database.windows.net. | Azure portalındaki SQL Yönetilen Örneği genel bakış sayfasında ana bilgisayar adına bakın. |
| Çözümlenebilir etki alanı adı | IP adresine çözümlenebilen bir DNS adı. Örneğin, nslookup sqlserver1.domain.com çalıştırıldığında 10.0.0.1 gibi bir IP adresi döndürmelidir. |
Komut isteminden komutunu çalıştırın nslookup . |
| SQL Sunucu IP | SQL Server'ınızın IP adresi. SQL Server'da birden çok IP olması durumunda Azure'dan erişilebilen IP adresini seçin. | SQL Server'ı çalıştıran ana bilgisayar işletim sisteminin komut isteminden komutunu çalıştırın ipconfig . |
1 SQL Server 2022 CU10'dan itibaren Azure SQL Yönetilen Örneği'nin ilk birincil olarak yapılandırılması desteklenir.
Veritabanı kurtarma ve yedeklemeyi ayarlama
SQL Server ilk birincil sunucunuzsa, bağlantı aracılığıyla çoğaltılacak veritabanlarının tam kurtarma modelinde olması ve en az bir yedeklemeye sahip olması gerekir. Azure SQL Yönetilen Örneği yedeklemeleri otomatik olarak aldığından, SQL Yönetilen Örneği ilk birincil sunucunuzsa bu adımı atlayın.
Çoğaltmak istediğiniz tüm veritabanları için SQL Server'da aşağıdaki kodu çalıştırın.
<DatabaseName> değerini gerçek veritabanı adınızla değiştirin.
-- Run on SQL Server
-- Set full recovery model for all databases you want to replicate.
ALTER DATABASE [<DatabaseName>] SET RECOVERY FULL
GO
-- Execute backup for all databases you want to replicate.
BACKUP DATABASE [<DatabaseName>] TO DISK = N'<DiskPath>'
GO
Daha fazla bilgi için bkz. Tam Bir Veritabanı Yedeği Oluşturma.
Not
Bağlantı yalnızca kullanıcı veritabanlarının çoğaltılabilmesini destekler. Sistem veritabanlarının çoğaltılma işlemi desteklenmez. Örnek düzeyindeki nesneleri çoğaltmak için (master veya msdb veritabanlarında depolanan), önce bunları betik yazarak dışa aktarmanızı ve ardından hedef örnekte T-SQL betiklerini çalıştırmanızı öneririz.
Örnekler arasında güven oluşturma
İlk olarak, iki örnek arasında güven oluşturmalı ve ağ üzerinden veri iletişim kurmak ve şifrelemek için kullanılan uç noktaların güvenliğini sağlamalısınız. Dağıtılmış kullanılabilirlik grupları, kendi ayrılmış uç noktalarına sahip olmak yerine mevcut kullanılabilirlik grubu veritabanı yansıtma uç noktasını kullanır. Bu nedenle, kullanılabilirlik grubu veritabanı yansıtma uç noktası aracılığıyla iki örnek arasında güvenlik ve güvenin yapılandırılması gerekir.
Not
Bağlantı Always On kullanılabilirlik grubu teknolojisini temel alır. Veritabanı yansıtma uç noktası, diğer örneklerden bağlantı almak için yalnızca kullanılabilirlik grupları tarafından kullanılan özel amaçlı bir uç noktadır. Veritabanı yansıtma uç noktası terimi, eski SQL Server veritabanı yansıtma özelliği ile karıştırılmamalıdır.
Sertifika tabanlı güven, SQL Server ve SQL Yönetilen Örnek için veritabanı yansıtma uç noktalarının güvenliğini sağlamanın tek desteklenen yoludur. Windows kimlik doğrulamasını kullanan mevcut kullanılabilirlik gruplarınız varsa, ikincil kimlik doğrulama seçeneği olarak mevcut yansıtma uç noktasına sertifika tabanlı güven eklemeniz gerekir. Bunu, bu makalenin ilerleyen bölümlerinde gösterildiği gibi deyimini ALTER ENDPOINT kullanarak yapabilirsiniz.
Önemli
Sertifikalar son kullanma tarihi ve saatiyle oluşturulur. Süresi dolmadan önce yenilenmeleri ve döndürülmeleri gerekir.
Aşağıda hem SQL Server hem de SQL Yönetilen Örneği için veritabanı yansıtma uç noktalarının güvenliğini sağlama işlemine genel bakış listelenmiştir:
- SQL Server'da bir sertifika oluşturun ve ortak anahtarını alın.
- SQL Yönetilen Örneği sertifikasının ortak anahtarını alın.
- SQL Server ile SQL Yönetilen Örneği arasında ortak anahtarları değiştirme.
- Azure tarafından güvenilen kök sertifika yetkilisi anahtarlarını SQL Server'a aktarma
Aşağıdaki bölümlerde bu adımlar ayrıntılı olarak açıklanmaktadır.
SQL Server'da bir sertifika oluşturun ve ortak anahtarını SQL Yönetilen Örneği'ne içe aktarın.
İlk olarak, henüz yoksa veritabanında veritabanı ana anahtarını 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 encryption password
-- Keep the password confidential and in a secure place
USE MASTER
IF NOT EXISTS (SELECT * FROM sys.symmetric_keys WHERE symmetric_key_id = 101)
BEGIN
PRINT 'Creating master key.' + CHAR(13) + 'Keep the password confidential and in a secure place.'
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<strong_password>'
END
ELSE
PRINT 'Master key already exists.'
GO
Ardından SQL Server'da bir kimlik doğrulama sertifikası oluşturun. Aşağıdaki betikte değiştirin:
-
@cert_expiry_dateile istenen sertifika son kullanma tarihi (gelecekteki tarih).
Bağlantının sürekli çalıştığından emin olmak için bu tarihi kaydedin ve SQL server sertifikasını son kullanma tarihinden önce döndürmek (güncelleştirmek) için bir anımsatıcı ayarlayın.
Önemli
Bu betikten otomatik olarak oluşturulan sertifika adını kullanmanız kesinlikle önerilir. SQL Server'da kendi sertifika adınızı özelleştirmeye izin verilirken, ad herhangi bir \ karakter içermemelidir.
-- Create the SQL Server certificate for the instance link
USE MASTER
-- Customize SQL Server certificate expiration date by adjusting the date below
DECLARE @cert_expiry_date AS varchar(max)='03/30/2025'
-- Build the query to generate the certificate
DECLARE @sqlserver_certificate_name NVARCHAR(MAX) = N'Cert_' + @@servername + N'_endpoint'
DECLARE @sqlserver_certificate_subject NVARCHAR(MAX) = N'Certificate for ' + @sqlserver_certificate_name
DECLARE @create_sqlserver_certificate_command NVARCHAR(MAX) = N'CREATE CERTIFICATE [' + @sqlserver_certificate_name + '] ' + char (13) +
' WITH SUBJECT = ''' + @sqlserver_certificate_subject + ''',' + char (13) +
' EXPIRY_DATE = '''+ @cert_expiry_date + ''''+ char (13)
IF NOT EXISTS (SELECT name from sys.certificates WHERE name = @sqlserver_certificate_name)
BEGIN
PRINT (@create_sqlserver_certificate_command)
-- Execute the query to create SQL Server certificate for the instance link
EXEC sp_executesql @stmt = @create_sqlserver_certificate_command
END
ELSE
PRINT 'Certificate ' + @sqlserver_certificate_name + ' already exists.'
GO
Ardından, sertifikanın oluşturulduğunu doğrulamak için SQL Server'da aşağıdaki T-SQL sorgusunu kullanın:
-- Run on SQL Server
USE MASTER
GO
SELECT * FROM sys.certificates WHERE pvt_key_encryption_type = 'MK'
Sorgu sonuçlarında sertifikanın ana anahtarla şifrelendiğini göreceksiniz.
Artık SQL Server'da oluşturulan sertifikanın ortak anahtarını alabilirsiniz:
-- Run on SQL Server
-- Show the name and the public key of generated SQL Server certificate
USE MASTER
GO
DECLARE @sqlserver_certificate_name NVARCHAR(MAX) = N'Cert_' + @@servername + N'_endpoint'
DECLARE @PUBLICKEYENC VARBINARY(MAX) = CERTENCODED(CERT_ID(@sqlserver_certificate_name));
SELECT @sqlserver_certificate_name as 'SQLServerCertName'
SELECT @PUBLICKEYENC AS SQLServerPublicKey;
Çıkıştan SQLServerCertName ve SQLServerPublicKey değerlerini kaydedin, çünkü sertifikayı içeri aktarırken bir sonraki adımda bunlara ihtiyacınız olacak.
İlk olarak Azure'da oturum açtığınızdan ve yönetilen örneğinizin barındırıldığı aboneliği seçtiğinizden emin olun. Hesabınızda birden fazla Azure aboneliği varsa uygun aboneliği seçmek özellikle önemlidir.
<SubscriptionID> öğesini Azure abonelik kimliğinizle değiştirin.
# Run in Azure Cloud Shell (select PowerShell console)
# Enter your Azure subscription ID
$SubscriptionID = "<SubscriptionID>"
# Login to Azure and select subscription ID
if ((Get-AzContext ) -eq $null)
{
echo "Logging to Azure subscription"
Login-AzAccount
}
Select-AzSubscription -SubscriptionName $SubscriptionID
Ardından, aşağıdaki PowerShell örneği gibi kimlik doğrulama sertifikasının ortak anahtarını SQL Server'dan Azure'a yüklemek için New-AzSqlInstanceServerTrustCertificate PowerShell veya az sql mi partner-cert create Azure CLI komutunu kullanın.
Gerekli kullanıcı bilgilerini doldurun, kopyalayın, yapıştırın ve betiği çalıştırın. Değiştirme:
-
<SQLServerPublicKey>SQL Server sertifikasının ikili biçimdeki ortak kısmını, bir önceki adımda kaydettiğiniz şekliyle. ile0xbaşlayan uzun bir dize değeridir. -
<SQLServerCertName>önceki adımda kaydettiğiniz SQL Server sertifika adıyla. - Yönetilen örneğinizin kısa adı olan
<ManagedInstanceName>ile.
# Run in Azure Cloud Shell (select PowerShell console)
# ===============================================================================
# POWERSHELL SCRIPT TO IMPORT SQL SERVER PUBLIC CERTIFICATE TO SQL MANAGED INSTANCE
# ===== Enter user variables here ====
# Enter the name for the server SQLServerCertName certificate – for example, "Cert_sqlserver1_endpoint"
$CertificateName = "<SQLServerCertName>"
# Insert the certificate public key blob that you got from SQL Server – for example, "0x1234567..."
$PublicKeyEncoded = "<SQLServerPublicKey>"
# Enter your managed instance short name – for example, "sqlmi"
$ManagedInstanceName = "<ManagedInstanceName>"
# ==== Do not customize the below cmdlets====
# Find out the resource group name
$ResourceGroup = (Get-AzSqlInstance -InstanceName $ManagedInstanceName).ResourceGroupName
# Upload the public key of the authentication certificate from SQL Server to Azure.
New-AzSqlInstanceServerTrustCertificate -ResourceGroupName $ResourceGroup -InstanceName $ManagedInstanceName -Name $CertificateName -PublicKey $PublicKeyEncoded
Bu işlemin sonucu, Azure'a yüklenen SQL Server sertifikasının özetidir.
Yönetilen örneğe yüklenen tüm SQL Server sertifikalarını görmeniz gerekiyorsa Azure Cloud Shell'de Get-AzSqlInstanceServerTrustCertificate PowerShell veya az sql mi partner-cert list Azure CLI komutunu kullanın. SQL yönetilen örneğine yüklenen SQL Server sertifikasını kaldırmak için Azure Cloud Shell'de Remove-AzSqlInstanceServerTrustCertificate PowerShell veya az sql mi partner-cert delete Azure CLI komutunu kullanın.
SQL Yönetilen Örneği'nden sertifika ortak anahtarını alın ve SQL Server'a aktarın
Azure SQL Yönetilen Örneği'nde bağlantı uç noktasını güvenceye almak için sertifika otomatik olarak oluşturulur. Sertifika ortak anahtarını SQL Yönetilen Örneğinden alın ve Get-AzSqlInstanceEndpointCertificate PowerShell veya az sql mi endpoint-cert show Azure CLI komutunu kullanarak SQL Server'a aktarın (örneğin, aşağıdaki PowerShell örneği gibi).
Dikkat
Azure CLI kullanırken, sonraki adımlarda kullanmak için PublicKey çıkışının önüne 0x öğesini el ile eklemeniz gerekiyor. Örneğin, PublicKey "0x3082033E30..." gibi görünür.
Aşağıdaki betiği çalıştırın. Değiştirme:
-
<SubscriptionID>Azure abonelik kimliğinizi kullanarak. - Yönetilen örneğinizin kısa adı olan
<ManagedInstanceName>ile.
# Run in Azure Cloud Shell (select PowerShell console)
# ===============================================================================
# POWERSHELL SCRIPT TO EXPORT MANAGED INSTANCE PUBLIC CERTIFICATE
# ===== Enter user variables here ====
# Enter your managed instance short name – for example, "sqlmi"
$ManagedInstanceName = "<ManagedInstanceName>"
# ==== Do not customize the following cmdlet ====
# Find out the resource group name
$ResourceGroup = (Get-AzSqlInstance -InstanceName $ManagedInstanceName).ResourceGroupName
# Fetch the public key of the authentication certificate from Managed Instance. Outputs a binary key in the property PublicKey.
Get-AzSqlInstanceEndpointCertificate -ResourceGroupName $ResourceGroup -InstanceName $ManagedInstanceName -EndpointType "DATABASE_MIRRORING" | out-string
PublicKey çıktısının tamamını (0x ile başlar) kopyalayın, çünkü bir sonraki adımda buna ihtiyacınız olacak.
Alternatif olarak, PublicKey'i kopyalama sırasında sorunlarla karşılaşırsanız, bağlantı uç noktası için ortak anahtarını almak üzere yönetilen örnekte T-SQL komutunu EXEC sp_get_endpoint_certificate 4 da çalıştırabilirsiniz.
Ardından, yönetilen örnek güvenlik sertifikasının elde edilen ortak anahtarını SQL Server'a aktarın. MI uç nokta sertifikasını oluşturmak için SQL Server'da aşağıdaki sorguyu çalıştırın. Değiştirme:
-
<ManagedInstanceFQDN>yönetilen örneğin tam etki alanı adıyla. -
<PublicKey>ile önceki adımda elde edilen ve0xile başlayan PublicKey değeri (Azure Cloud Shell'den). Tırnak işaretleri kullanmanız gerekmez.
Önemli
Sertifikanın adı SQL Yönetilen Örneği FQDN olmalıdır ve değiştirilmemelidir. Özel bir ad kullanılıyorsa bağlantı çalışmaz.
-- Run on SQL Server
USE MASTER
CREATE CERTIFICATE [<ManagedInstanceFQDN>]
FROM BINARY = <PublicKey>
Azure tarafından güvenilen kök sertifika yetkilisi anahtarlarını SQL Server'a aktarma
SQL Server'ınızın Azure tarafından verilen SQL Yönetilen Örneği ortak anahtar sertifikalarına güvenmesi için Azure güvenilen kök sertifika yetkilisi (CA) anahtarlarını SQL Server'a aktarmanız gerekir.
Azure Sertifika Yetkilisi ayrıntılarından gerekli kök CA anahtarlarını indirebilirsiniz. En azından DigiCert Genel Kök G2 ve Microsoft RSA Kök Sertifika Yetkilisi 2017 sertifikalarını indirin ve bunları SQL Server örneğine aktarın. Ancak bağlantıyı birkaç aydan daha uzun süre çalıştırmayı planlıyorsanız, Azure'ın güvenilen CA listesini güncelleştirmesi durumunda olası kesintileri önlemek için Kök Sertifika Yetkilileri bölümünde listelenen 7 sertifikanın tümünü indirip içeri aktarın.
Not
SQL Yönetilen Örnek ortak anahtar sertifikasının sertifika zincirindeki kök sertifika, Azure güvenilir kök Sertifika Yetkilisi (CA) tarafından verilir. Azure güvenilen CA listesini güncelleştirdikçe belirli kök CA zaman içinde değişebilir. Basitleştirilmiş bir kurulum için Azure Kök Sertifika Yetkilileri'nde listelenen tüm kök CA sertifikalarını yükleyin. Daha önce içeri aktarılan SQL Yönetilen Örneği ortak anahtarını vereni belirleyerek yalnızca gerekli CA anahtarını yükleyebilirsiniz.
Aşağıdaki Transact-SQL betiğini kullanarak yerel sertifikaları SQL Server örneğine (örneğin, örnek C:\Path\To\<name of certificate>.crt yola) kaydedin ve bu yoldan sertifikaları içeri aktarın.
<name of certificate> ile DigiCert Global Root G2 veya Microsoft RSA Root Certificate Authority 2017 gibi gerçek sertifika adını değiştirin.
-- Run on SQL Server
-- Import <name of certificate> root-authority certificate (trusted by Azure), if not already present
IF NOT EXISTS (SELECT name FROM sys.certificates WHERE name = N'<name of certificate>')
BEGIN
PRINT 'Creating <name of certificate> certificate.'
CREATE CERTIFICATE [<name of certificate>] FROM FILE = 'C:\Path\To\<name of certificate>.crt'
--Trust certificates issued by <name of certificate> root authority for Azure database.windows.net domains
DECLARE @CERTID int
SELECT @CERTID = CERT_ID('<name of certificate>')
--For government cloud, use the corresponding SQL Database DNS suffix, e.g. '*.database.usgovcloudapi.net', '*.database.chinacloudapi.cn' etc.
EXEC sp_certificate_add_issuer @CERTID, N'*.database.windows.net'
END
ELSE
PRINT 'Certificate <name of certificate> already exists.'
GO
Not
sp_certificate_add_issuer SQL Server ortamınızda saklı yordam eksik, SQL Server örneğinizde uygun hizmet güncelleştirmesinin yüklü olmadığını gösterir.
Son olarak, aşağıdaki dinamik yönetim görünümünü (DMV) kullanarak oluşturulan tüm sertifikaları doğrulayın:
-- Run on SQL Server
USE master
SELECT * FROM sys.certificates
Sertifika zincirini doğrulama
Sertifikalarda zamanlanan veya istemeden yapılan değişiklikler bağlantıyı düşürebilir. Kesintileri önlemek için SQL Server'da sertifika zincirini düzenli aralıklarla doğrulamak önemlidir.
Yeni bir bağlantı yapılandırıyorsanız veya sertifikaları önceki bölümlerde açıklandığı gibi yakın zamanda içeri aktardıysanız bu adımı atlayın.
Veritabanı yansıtma uç noktasının güvenliğini sağlama
Mevcut bir kullanılabilirlik grubunuz veya SQL Server'da veritabanı yansıtma uç noktanız yoksa, sonraki adım SQL Server'da bir veritabanı yansıtma uç noktası oluşturmak ve daha önce oluşturulan SQL Server sertifikasıyla bunu güvenli bir şekilde sağlamaktır. Mevcut bir kullanılabilirlik grubunuz veya yansıtma uç noktanız varsa Var olan bir uç noktayı değiştirme bölümüne atlayın.
SQL Server'da veritabanı yansıtma uç noktasını oluşturma ve güvenliğini sağlama
Oluşturulmuş bir veritabanı yansıtma uç noktanız olmadığını doğrulamak için aşağıdaki betiği kullanın:
-- Run on SQL Server
-- View database mirroring endpoints on SQL Server
SELECT * FROM sys.database_mirroring_endpoints WHERE type_desc = 'DATABASE_MIRRORING'
Yukarıdaki sorguda var olan bir veritabanı yansıtma uç noktası gösterilmiyorsa, daha önce oluşturulan SQL Server sertifikasının adını almak için SQL Server'da aşağıdaki betiği çalıştırın.
-- Run on SQL Server
-- Show the name and the public key of generated SQL Server certificate
USE MASTER
GO
DECLARE @sqlserver_certificate_name NVARCHAR(MAX) = N'Cert_' + @@servername + N'_endpoint'
SELECT @sqlserver_certificate_name as 'SQLServerCertName'
Sonraki adımda ihtiyacınız olacak şekilde SQLServerCertName'i çıkıştan kaydedin.
Aşağıdaki betiği kullanarak, bağlantı noktası <EndpointPort> üzerinde yeni bir veritabanı yansıtma uç noktası oluşturun ve uç noktanın güvenliğini SQL Server sertifikasıyla sağlayın. Değiştirme:
-
<SQL_SERVER_CERTIFICATE>önceki adımda alınan SQLServerCertName adıyla.
-- Run on SQL Server
-- Create a connection endpoint listener on SQL Server
USE MASTER
CREATE ENDPOINT database_mirroring_endpoint
STATE=STARTED
AS TCP (LISTENER_PORT=<EndpointPort>, LISTENER_IP = ALL)
FOR DATABASE_MIRRORING (
ROLE=ALL,
AUTHENTICATION = CERTIFICATE [<SQL_SERVER_CERTIFICATE>],
ENCRYPTION = REQUIRED ALGORITHM AES
)
GO
SQL Server'da aşağıdaki betiği çalıştırarak yansıtma uç noktasının oluşturulduğunu doğrulayın:
-- Run on SQL Server
-- View database mirroring endpoints on SQL Server
SELECT
name, type_desc, state_desc, role_desc,
connection_auth_desc, is_encryption_enabled, encryption_algorithm_desc
FROM
sys.database_mirroring_endpoints
Başarıyla oluşturulan uç nokta state_desc sütunu durumu STARTEDolmalıdır.
Sertifika kimlik doğrulaması ve AES şifrelemesi etkin olarak yeni bir yansıtma uç noktası oluşturuldu.
Mevcut uç noktayı değiştirme
Not
Yeni bir yansıtma uç noktası oluşturduysanız bu adımı atlayın. Bu adımı yalnızca mevcut bir veritabanı yansıtma uç noktasıyla mevcut kullanılabilirlik gruplarını kullanıyorsanız kullanın.
Bağlantı için mevcut kullanılabilirlik gruplarını kullanıyorsanız veya var olan bir veritabanı yansıtma uç noktası varsa, önce bağlantı için aşağıdaki zorunlu koşulları karşıladığını doğrulayın:
- Tür olmalıdır
DATABASE_MIRRORING. - Bağlantı kimlik doğrulaması zorunlu olmalıdır
CERTIFICATE. - Şifreleme etkinleştirilmelidir.
- Şifreleme algoritması olmalıdır
AES.
Mevcut veritabanı yansıtma uç noktasının ayrıntılarını görüntülemek için SQL Server'da aşağıdaki sorguyu çalıştırın:
-- Run on SQL Server
-- View database mirroring endpoints on SQL Server
SELECT
name, type_desc, state_desc, role_desc, connection_auth_desc,
is_encryption_enabled, encryption_algorithm_desc
FROM
sys.database_mirroring_endpoints
Çıktı, mevcut DATABASE_MIRRORING uç noktanın connection_auth_descCERTIFICATEveya encryption_algorithm_descAESolmadığını gösteriyorsa, gereksinimleri karşılamak için uç noktanın değiştirilmesi gerekir.
SQL Server'da, hem kullanılabilirlik grupları hem de dağıtılmış kullanılabilirlik grupları için aynı veritabanı yansıtma uç noktası kullanılır. Uç noktanız connection_auth_desc (Windows kimlik doğrulaması) veya NTLMise KERBEROS ve mevcut bir kullanılabilirlik grubu için Windows kimlik doğrulamasına ihtiyacınız varsa, kimlik doğrulama seçeneğini olarak değiştirerek uç noktayı birden çok kimlik doğrulama yöntemi kullanacak şekilde NEGOTIATE CERTIFICATEdeğiştirmeniz mümkündür. Bu değişiklik, SQL Yönetilen Örneği için sertifika kimlik doğrulamasını kullanırken mevcut kullanılabilirlik grubunun Windows kimlik doğrulamasını kullanmasına olanak tanır.
Benzer şekilde, şifreleme AES içermiyorsa ve RC4 şifrelemesine ihtiyacınız varsa, uç noktayı iki algoritmayı da kullanacak şekilde değiştirmek mümkündür. Uç noktaları değiştirmeyle ilgili olası seçenekler hakkında ayrıntılı bilgi için sys.database_mirroring_endpoints belgeleri sayfasına bakın.
Aşağıdaki betik, SQL Server'da mevcut veritabanı yansıtma uç noktanızın nasıl değiştirileceğine dair bir örnektir. Değiştirme:
-
<YourExistingEndpointName>ile mevcut uç noktanızın adını kullanın. -
<SQLServerCertName>oluşturulan SQL Server sertifikasının adıyla (yukarıdaki önceki adımlardan birinde elde edilir).
Özel yapılandırmanıza bağlı olarak, betiği daha fazla özelleştirmeniz gerekebilir. Sql Server'da oluşturulan sertifikanın adını almak için de kullanabilirsiniz SELECT * FROM sys.certificates .
-- Run on SQL Server
-- Alter the existing database mirroring endpoint to use CERTIFICATE for authentication and AES for encryption
USE MASTER
ALTER ENDPOINT [<YourExistingEndpointName>]
STATE=STARTED
AS TCP (LISTENER_PORT=<EndpointPort>, LISTENER_IP = ALL)
FOR DATABASE_MIRRORING (
ROLE=ALL,
AUTHENTICATION = WINDOWS NEGOTIATE CERTIFICATE [<SQLServerCertName>],
ENCRYPTION = REQUIRED ALGORITHM AES
)
GO
Uç nokta sorgusunu ALTER çalıştırdıktan ve çift kimlik doğrulama modunu Windows ve sertifika olarak ayarladıktan sonra, veritabanı yansıtma uç noktasının ayrıntılarını göstermek için SQL Server'da bu sorguyu yeniden kullanın:
-- Run on SQL Server
-- View database mirroring endpoints on SQL Server
SELECT
name, type_desc, state_desc, role_desc, connection_auth_desc,
is_encryption_enabled, encryption_algorithm_desc
FROM
sys.database_mirroring_endpoints
bir SQL Yönetilen Örneği bağlantısı için veritabanı yansıtma uç noktanızı başarıyla değiştirdiniz.
SQL Server'da kullanılabilirlik grubu oluşturma
Mevcut bir kullanılabilirlik grubunuz yoksa, sonraki adım SQL Server'da ilk birincil olandan bağımsız olarak bir tane oluşturmaktır.
Not
Zaten bir kullanılabilirlik grubunuz varsa bu bölümü atlayın.
SQL Yönetilen Örneğiniz ilk birincil ise ve bu yalnızca SQL Server 2022 CU10'dan itibaren destekleniyorsa, kullanılabilirlik grubunu oluşturmaya ilişkin komutlar farklıdır.
Aynı veritabanı için birden çok bağlantı oluşturmak mümkün olsa da, bağlantı her bağlantı için yalnızca bir veritabanı çoğaltmayı destekler. Aynı veritabanı için birden çok bağlantı oluşturmak istiyorsanız, tüm bağlantılar için aynı kullanılabilirlik grubunu kullanın, ancak ardından SQL Server ile SQL Yönetilen Örneği arasındaki her veritabanı bağlantısı için yeni bir dağıtılmış kullanılabilirlik grubu oluşturun.
SQL Server ilk birincil sunucunuzsa, bağlantı için aşağıdaki parametreleri içeren bir kullanılabilirlik grubu oluşturun:
- İlk birincil sunucu adı
- Veritabanı adı
- Bir yük devretme modu
MANUAL -
AUTOMATICadlı bir tohumlama modu
İlk olarak, aşağıdaki T-SQL deyimini çalıştırarak SQL Server adınızı öğrenin:
-- Run on the initial primary
SELECT @@SERVERNAME AS SQLServerName
Ardından, SQL Server'da kullanılabilirlik grubunu oluşturmak için aşağıdaki betiği kullanın. Değiştirme:
-
<AGNameOnSQLServer>sql server'da kullanılabilirlik grubunuzun adıyla birlikte. Yönetilen Örnek bağlantısı, kullanılabilirlik grubu başına bir veritabanı gerektirir. Birden çok veritabanı için birden çok kullanılabilirlik grubu oluşturmanız gerekir. Her kullanılabilirlik grubunu, adının ilgili veritabanını (örneğin,AG_<db_name>) yansıtması için adlandırmayı göz önünde bulundurun. -
<DatabaseName>ile çoğaltmak istediğiniz veritabanının adını kullanın. -
<SQLServerName>önceki adımda elde edilen SQL Server örneğinizin adıyla. -
<SQLServerIP>sql server IP adresiyle. Çözümlenebilir bir SQL Server konak makine adını alternatif olarak kullanabilirsiniz, ancak adın SQL Yönetilen Örneği sanal ağından çözümlenebilir olduğundan emin olmanız gerekir.
-- Run on SQL Server
-- Create the primary availability group on SQL Server
USE MASTER
CREATE AVAILABILITY GROUP [<AGNameOnSQLServer>]
WITH (CLUSTER_TYPE = NONE) -- <- Delete this line for SQL Server 2016 only. Leave as-is for all higher versions.
FOR database [<DatabaseName>]
REPLICA ON
N'<SQLServerName>' WITH
(
ENDPOINT_URL = 'TCP://<SQLServerIP>:<EndpointPort>',
AVAILABILITY_MODE = SYNCHRONOUS_COMMIT,
FAILOVER_MODE = MANUAL,
SEEDING_MODE = AUTOMATIC
);
GO
Önemli
SQL Server 2016 için yukarıdaki T-SQL deyiminden silin WITH (CLUSTER_TYPE = NONE) . Sonraki tüm SQL Server sürümleri için olduğu gibi bırakın.
Ardından, SQL Server'da dağıtılmış kullanılabilirlik grubunu oluşturun. Birden çok bağlantı oluşturmayı planlıyorsanız, aynı veritabanı için birden çok bağlantı oluşturuyor olsanız bile her bağlantı için bir dağıtılmış kullanılabilirlik grubu oluşturmanız gerekir.
Aşağıdaki değerleri değiştirin ve T-SQL betiğini çalıştırarak dağıtılmış kullanılabilirlik grubunuzu oluşturun.
- Dağıtılmış kullanılabilirlik grubunuzun adıyla birlikte
<DAGName>yazın. Her bağlantı için bir dağıtılmış kullanılabilirlik grubu oluşturarak aynı veritabanı için birden çok bağlantı yapılandırabildiğiniz için, her dağıtılmış kullanılabilirlik grubunu uygun şekilde adlandırmayı göz önünde bulundurun; örneğin, ,DAG1_<db_name>DAG2_<db_name>. -
<AGNameOnSQLServer>öğesini, önceki adımda oluşturduğunuz kullanılabilirlik grubunun adıyla seçin. -
<AGNameOnSQLMI>SQL Yönetilen Örneği kullanılabilirlik grubunuzun adını yazın. Adın SQL MI'de benzersiz olması gerekir. Her kullanılabilirlik grubunu, adının ilgili veritabanını (örneğin,AG_<db_name>_MI) yansıtması için adlandırmayı göz önünde bulundurun. -
<SQLServerIP>önceki adımdaki SQL Server'ın IP adresiyle. Çözümlenebilir bir SQL Server konak makine adını alternatif olarak kullanabilirsiniz, ancak adın SQL Yönetilen Örneği sanal ağından çözümlenebilir olduğundan emin olun (yönetilen örneğin alt ağı için özel Azure DNS'nin yapılandırılmasını gerektirir). - Yönetilen örneğinizin kısa adı olan
<ManagedInstanceName>ile. -
<ManagedInstanceFQDN>yönetilen örneğinizin tam etki alanı adı ile birlikte.
-- Run on SQL Server
-- Create a distributed availability group for the availability group and database
-- ManagedInstanceName example: 'sqlmi1'
-- ManagedInstanceFQDN example: 'sqlmi1.73d19f36a420a.database.windows.net'
USE MASTER
CREATE AVAILABILITY GROUP [<DAGName>]
WITH (DISTRIBUTED)
AVAILABILITY GROUP ON
N'<AGNameOnSQLServer>' WITH
(
LISTENER_URL = 'TCP://<SQLServerIP>:<EndpointPort>',
AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT,
FAILOVER_MODE = MANUAL,
SEEDING_MODE = AUTOMATIC,
SESSION_TIMEOUT = 20
),
N'<AGNameOnSQLMI>' WITH
(
LISTENER_URL = 'tcp://<ManagedInstanceFQDN>:5022;Server=[<ManagedInstanceName>]',
AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT,
FAILOVER_MODE = MANUAL,
SEEDING_MODE = AUTOMATIC
);
GO
Kullanılabilirlik gruplarını doğrulama
SQL Server örneğindeki tüm kullanılabilirlik gruplarını ve dağıtılmış kullanılabilirlik gruplarını listelemek için aşağıdaki betiği kullanın. Bu noktada, kullanılabilirlik grubunuzun connecteddurumunun olması ve dağıtılmış kullanılabilirlik gruplarınızın durumunun olması disconnectedgerekir. Dağıtılmış kullanılabilirlik grubunun durumu, yalnızca SQL Yönetilen Örneği ile birleştirildikten sonra connected konumuna geçer.
-- Run on SQL Server
-- This will show that the availability group and distributed availability group have been created on SQL Server.
SELECT * FROM sys.availability_groups
Alternatif olarak, kullanılabilirlik gruplarını ve dağıtılmış kullanılabilirlik gruplarını bulmak için SSMS Nesne Gezgini kullanabilirsiniz. Always On Yüksek Kullanılabilirlik klasörünü ve ardından Kullanılabilirlik Grupları klasörünü genişletin.
Bağlantı oluştur
Son olarak, bağlantıyı oluşturabilirsiniz. Komutlar, hangi örneğin ilk birincil olduğuna göre farklılık gösterir. Bu bölümdeki PowerShell örneği gibi bağlantıyı oluşturmak için New-AzSqlInstanceLink PowerShell veya az sql mi link create Azure CLI komutunu kullanın. Birincil SQL Yönetilen Örneğinden bağlantı oluşturmak, şu anda Azure CLI ile desteklenmemekte.
Yönetilen örnekteki tüm bağlantıları görmeniz gerekiyorsa, Azure Cloud Shell'de Get-AzSqlInstanceLink PowerShell veya az sql mi link show Azure CLI komutunu kullanın.
İşlemi basitleştirmek için Azure portalında oturum açın ve Azure Cloud Shell'den aşağıdaki betiği çalıştırın. Değiştirme:
- Yönetilen örneğinizin kısa adı olan
<ManagedInstanceName>ile. -
<AGNameOnSQLServer>SQL Server'da oluşturulan kullanılabilirlik grubunun adıyla beraber. -
<AGNameOnSQLMI>SQL Yönetilen Örneği üzerinde oluşturulan kullanılabilirlik grubunun adıyla. -
<DAGName>SQL Server'da oluşturulan dağıtılmış kullanılabilirlik grubunun adıyla. -
<DatabaseName>veritabanı SQL Server'daki kullanılabilirlik grubunda çoğaltılır. -
<SQLServerIP>SQL Server'ınızın IP adresiyle birlikte. Sağlanan IP adresine yönetilen örnek tarafından erişilebilir olmalıdır.
Not
Zaten var olan bir kullanılabilirlik grubuna bağlantı oluşturmak istiyorsanız, parametresini sağlarken <SQLServerIP> dinleyicinin IP adresini sağlayın. Lütfen tüm kullanılabilirlik grubu düğümleri ile SQL Yönetilen Örneği arasında güven oluşturulduğuna emin olun (örnekler arasında güven oluşturma bölümüne
# Run in Azure Cloud Shell (select PowerShell console)
# =============================================================================
# POWERSHELL SCRIPT TO CREATE MANAGED INSTANCE LINK
# Instructs Managed Instance to join distributed availability group on SQL Server
# ===== Enter user variables here ====
# Enter your managed instance name – for example, "sqlmi1"
$ManagedInstanceName = "<ManagedInstanceName>"
# Enter the availability group name that was created on SQL Server
$AGNameOnSQLServer = "<AGNameOnSQLServer>"
# Enter the availability group name that was created on SQL Managed Instance
$AGNameOnSQLMI = "<AGNameOnSQLMI>"
# Enter the distributed availability group name that was created on SQL Server
$DAGName = "<DAGName>"
# Enter the database name that was placed in the availability group for replication
$DatabaseName = "<DatabaseName>"
# Enter the SQL Server IP
$SQLServerIP = "<SQLServerIP>"
# ==== Do not customize the following cmdlet ====
# Find out the resource group name
$ResourceGroup = (Get-AzSqlInstance -InstanceName $ManagedInstanceName).ResourceGroupName
# Build properly formatted connection endpoint
$SourceIP = "TCP://" + $SQLServerIP + ":<EndpointPort>"
# Create link on managed instance. Join distributed availability group on SQL Server.
New-AzSqlInstanceLink -ResourceGroupName $ResourceGroup -InstanceName $ManagedInstanceName -Name $DAGName |
-PartnerAvailabilityGroupName $AGNameOnSQLServer -InstanceAvailabilityGroupName $AGNameOnSQLMI |
-Database @($DatabaseName) -PartnerEndpoint $SourceIP -InstanceLinkRole Secondary
Bu işlemin sonucu, bağlantı oluşturma isteğinin başarıyla yürütülmesinin zaman damgasıdır.
Bağlantıyı doğrulama
SQL Yönetilen Örneği ve SQL Server arasındaki bağlantıyı doğrulamak için SQL Server'da aşağıdaki sorguyu çalıştırın. Bağlantı anlık olmaz. DMV'nin başarılı bir bağlantı göstermeye başlaması bir dakika kadar sürebilir. SQL Yönetilen Örneği çoğaltması BAĞLANTILI olarak görünene kadar DMV’yi yenilemeye devam edin.
-- Run on SQL Server
SELECT
r.replica_server_name AS [Replica],
r.endpoint_url AS [Endpoint],
rs.connected_state_desc AS [Connected state],
rs.last_connect_error_description AS [Last connection error],
rs.last_connect_error_number AS [Last connection error No],
rs.last_connect_error_timestamp AS [Last error timestamp]
FROM
sys.dm_hadr_availability_replica_states rs
JOIN sys.availability_replicas r
ON rs.replica_id = r.replica_id
Bağlantı kurulduktan sonra, SSMS'deki Nesne Gezgini, başlangıç tohumlama aşaması veritabanının tam yedeklemesini taşırken ve geri yüklerken, ikincil replikadaki çoğaltılmış veritabanını başlangıçta Geri Yükleme durumunda gösterebilir. Veritabanı geri yüklendikten sonra, çoğaltmanın iki veritabanını senkronize hale getirmek için yetişmesi gerekiyor. İlk tohumlama tamamlandıktan sonra veritabanı artık Geri Yükleme durumunda olmayacaktır. Küçük veritabanlarının oluşturulması, SSMS'de ilk Geri Yükleme durumunu göremeyeceğiniz kadar hızlı olabilir.
Önemli
- SQL Server ile SQL Yönetilen Örneği arasında ağ bağlantısı yoksa bağlantı çalışmaz. Ağ bağlantısı sorunlarını gidermek için Ağ bağlantısını test etme sayfasındaki adımları izleyin.
- SQL Server'da günlük dosyasını düzenli olarak yedekleyin. Kullanılan günlük alan yüzde 100'e ulaşırsa, SQL Yönetilen Örneği çoğaltma işlemi, alan kullanımı azaltılana kadar durur. Günlük bir iş ayarlayarak günlük yedeklemelerini otomatikleştirmenizi kesinlikle öneririz. Ayrıntılar için bkz SQL Server'da günlük dosyalarını yedekleme.
İlk işlem günlüğü yedeğini alma
SQL Server, ilk ana sunucunuzsa, ilk yükleme tamamlandıktan sonra, veritabanı artık Azure SQL Yönetilen Örneği'nde Geri Yükleniyor... durumunda olmadığında, SQL Server'da ilk işlem günlüğü yedeklemesini almak önemlidir. SQL Server birincil roldeyken aşırı günlük büyümesini en aza indirmek için SQL Server işlem günlüğü yedeklemelerini düzenli olarak alın.
Birincil örneğiniz SQL Yönetilen Örneği ise, Azure SQL Yönetilen Örneği günlük yedeklemeleri otomatik olarak aldığından herhangi bir işlem yapmanız gerekmez.
Bir bağlantı bırak.
Artık gerekli olmadığından veya onarılamaz durumda olduğundan ve yeniden oluşturulması gerektiğinden bağlantıyı bırakmak istiyorsanız, bunu PowerShell ve T-SQL ile yapabilirsiniz.
İlk olarak, aşağıdaki örnek gibi bağlantıyı bırakmak için Remove-AzSqlInstanceLink PowerShell komutunu kullanın:
Remove-AzSqlInstanceLink -ResourceGroupName $ResourceGroup -InstanceName $managedInstanceName -Name $DAGName -Force
Ardından, dağıtılmış kullanılabilirlik grubunu bırakmak için SQL Server'da aşağıdaki T-SQL betiğini çalıştırın.
<DAGName> öğesini, bağlantıyı oluşturmak için kullanılan dağıtılmış kullanılabilirlik grubunun adıyla değiştirin.
USE MASTER
GO
DROP AVAILABILITY GROUP <DAGName>
GO
Son olarak, isteğe bağlı olarak, artık bu grubu kullanmıyorsanız kullanılabilirlik grubunu kaldırabilirsiniz. Bunu yapmak için <AGName> etiketini kullanılabilirlik grubunun adıyla değiştirdikten sonra ilgili örnekte çalıştırın.
DROP AVAILABILITY GROUP <AGName>
GO
Sorun giderme
Bağlantıyı oluştururken hata iletisiyle karşılaşırsanız, daha fazla bilgi için sorgu çıktı penceresindeki hata iletisini gözden geçirin. Daha fazla bilgi için bağlantıyla ilgili sorunları giderme konusunu gözden geçirin.
İlgili içerik
Bağlantıyı kullanmak için:
- Yönetilen Örnek bağlantısı için ortamı hazırlama
- SSMS ile SQL Server ile SQL Yönetilen örneği arasındaki bağlantıyı yapılandırma
- Bağlantının yük devretmesi
- Bağlantıyla taşın
- Bağlantıyı korumak için en iyi yöntemler
- Bağlantı ile ilgili sorunları giderme
Bağlantı hakkında daha fazla bilgi edinmek için:
Diğer çoğaltma ve geçiş senaryoları için şunları göz önünde bulundurun: