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.
Bu konu başlığında, SQL Server'da PowerShell kullanarak Bir Always On kullanılabilirlik grubu oluşturmak ve yapılandırmak için PowerShell cmdlet'lerinin nasıl kullanılacağı açıklanmaktadır. Kullanılabilirlik grubu, tek bir birim olarak yük devredecek bir kullanıcı veritabanları kümesini ve yük devretmeyi destekleyen kullanılabilirlik çoğaltmaları olarak bilinen bir yük devretme iş ortakları kümesini tanımlar.
Uyarı
Kullanılabilirlik gruplarına giriş için bkz. AlwaysOn Kullanılabilirlik Gruplarına (SQL Server) Genel Bakış.
Uyarı
PowerShell cmdlet'lerini kullanmaya alternatif olarak Kullanılabilirlik Grubu Oluşturma sihirbazını veya Transact-SQL'i kullanabilirsiniz. Daha fazla bilgi için bkz. Yeni Kullanılabilirlik Grubu İletişim Kutusunu Kullanma (SQL Server Management Studio) veya Kullanılabilirlik Grubu Oluşturma (Transact-SQL).
Başlamadan Önce
Önkoşullar, Kısıtlamalar ve Öneriler
- Kullanılabilirlik grubu oluşturmadan önce, SQL Server'ın her bir ana bilgisayar örneğinin tek bir WSFC yük devretme kümesinin farklı bir düğümünde yer aldığını kontrol edin. Ayrıca, sunucu örneklerinizin diğer sunucu örneği önkoşullarını karşıladığını ve diğer Tüm AlwaysOn kullanılabilirlik grubu gereksinimlerini karşıladığını ve önerilerin farkında olduğunuzu doğrulayın. Daha fazla bilgi için Her Zaman Açık Kullanılabilirlik Grupları (SQL Server) için Önkoşullar, Kısıtlamalar ve Öneriler'i okumanızı kesinlikle öneririz.
Permissions
Sysadmin sabit sunucu rolünde üyelik ve CREATE AVAILABILITY GROUP sunucu izni, ALTER ANY AVAILABILITY GROUP izni veya CONTROL SERVER izni gerektirir.
Kullanılabilirlik Grubu Oluşturmak ve Yapılandırmak için PowerShell Kullanma
Aşağıdaki tabloda, kullanılabilirlik grubu yapılandırmayla ilgili temel görevler listelenmektedir ve PowerShell cmdlet'leri tarafından desteklenen görevler gösterilir. Always On kullanılabilirlik grupları görevleri, tabloda sunuldukları sırada gerçekleştirilmelidir.
| Görev | PowerShell Cmdlet'leri (Varsa) veya Transact-SQL Deyimi | Görev Nerede Yapılır? |
|---|---|---|
| Veritabanı yansıtma uç noktası oluşturma (SQL Server örneği başına bir kez) | New-SqlHadrEndPoint | Veritabanı yansıtma uç noktası olmayan her bir sunucu örneğinde çalıştırın. Mevcut veritabanı yansıtma uç noktasını değiştirmek için Set-SqlHadrEndpoint kullanın. |
| Kullanılabilirlik grubu oluşturma | İlk olarak, kullanılabilirlik grubuna eklemeyi planladığınız iki kullanılabilirlik çoğaltmasının her biri için bellek içi kullanılabilirlik-çoğaltma nesnesi oluşturmak üzere -AsTemplate parametresiyle New-SqlAvailabilityReplica cmdlet'ini kullanın. Ardından , New-SqlAvailabilityGroup cmdlet'ini kullanarak ve kullanılabilirlik-çoğaltma nesnelerinize başvurarak kullanılabilirlik grubunu oluşturun. |
Başlangıçtaki birincil replikayı barındıracak olan sunucu örneğinde çalıştırın. |
| İkincil kopyayı yüksek erişilebilirlik grubuna ekleme | Join-SqlAvailabilityGroup (SQL Erişilebilirlik Grubuna Katıl) | İkincil çoğaltmayı barındıran her sunucu örneğinde komutu çalıştırın. |
| İkincil veritabanını hazırlama | Backup-SqlDatabase ve Restore-SqlDatabase | Birincil çoğaltmayı barındıran sunucu örneğinde yedeklemeler oluşturun. NoRecovery geri yükleme parametresini kullanarak ikincil çoğaltmayı barındıran her sunucu örneğinde yedeklemeleri geri yükleyin. Dosya yolları birincil çoğaltmayı barındıran bilgisayarlar ile hedef ikincil çoğaltma arasında farklılık gösteriyorsa RelocateFile geri yükleme parametresini de kullanın. |
| Her ikincil veritabanını kullanılabilirlik grubuna ekleyerek veri eşitlemeyi başlatma | Add-SqlAvailabilityDatabase | İkincil replikayı barındıran her sunucu örneğinde çalıştırın. |
Uyarı
Verilen görevleri gerçekleştirmek için dizini (cd) belirtilen sunucu örneği veya örnekleriyle değiştirin.
PowerShell'i kullanma
SQL Server PowerShell Sağlayıcısı'nı ayarlayın ve kullanın.
Uyarı
Belirli bir cmdlet'in söz dizimini ve örneğini görüntülemek için SQL Server PowerShell ortamındaki Get-Help cmdlet'ini kullanın. Daha fazla bilgi için bkz. Yardım Alma SQL Server PowerShell.
Dizini (cd) birincil çoğaltmayı barındıracak sunucu örneğiyle değiştirin.
Birincil çoğaltma için bellek içi kullanılabilirlik çoğaltması nesnesi oluşturun.
İkincil çoğaltmaların her biri için bellek içi kullanılabilirlik çoğaltması nesnesi oluşturun.
Kullanılabilirlik grubunu oluşturun.
Uyarı
Kullanılabilirlik grubu adı için uzunluk üst sınırı 128 karakterdir.
Yeni ikincil çoğaltmayı kullanılabilirlik grubuna ekleyin, bkz. İkincil Çoğaltmayı Bir Kullanılabilirlik Grubuna (SQL Server) Ekleme.
Kullanılabilirlik grubundaki her veritabanı için NORECOVERY ile RESTORE komutunu kullanarak birincil veritabanının son yedeklemelerini geri yükleyerek ikincil bir veritabanı oluşturun.
Her yeni ikincil veritabanını kullanılabilirlik grubuna ekleyin, bkz. İkincil Çoğaltmayı Kullanılabilirlik Grubuna (SQL Server) Birleştirme.
(isteğe bağlı) Yeni kullanılabilirlik grubunun içeriğini doğrulamak için Windows dir komutunu kullanın.
Uyarı
Sunucu örneklerinin SQL Server hizmet hesapları farklı etki alanı kullanıcı hesapları altında çalıştırılırsa, her sunucu örneğinde diğer sunucu örneği için bir oturum açma oluşturun ve yerel veritabanı yansıtma uç noktasına bu oturum açma BAĞLAN iznini verin.
Example
Aşağıdaki PowerShell örneği, <myAvailabilityGroup> adlı basit bir kullanılabilirlik grubu oluşturur ve iki kullanılabilirlik çoğaltması ile bir kullanılabilirlik veritabanını yapılandırır. Örnek:
ve işlem günlüğünü yedekler
<myDatabase>.<myDatabase>ve işlem günlüğünü -NoRecovery seçeneğini kullanarak geri yükler.Sql Server'ın yerel örneği (adlı
PrimaryComputer\Instance) tarafından barındırılacak olan birincil çoğaltmanın bellek içi bir gösterimini oluşturur.bir SQL Server örneği (adlı
SecondaryComputer\Instance) tarafından barındırılacak olan ikincil çoğaltmanın bellek içi bir gösterimini oluşturur.adlı
<myAvailabilityGroup>bir kullanılabilirlik grubu oluşturur.İkincil çoğaltmayı kullanılabilirlik grubuna ekler.
İkincil veritabanını kullanılabilirlik grubuna ekler.
# Backup my database and its log on the primary
Backup-SqlDatabase `
-Database "<myDatabase>" `
-BackupFile "\\share\backups\<myDatabase>.bak" `
-ServerInstance "PrimaryComputer\Instance"
Backup-SqlDatabase `
-Database "<myDatabase>" `
-BackupFile "\\share\backups\<myDatabase>.log" `
-ServerInstance "PrimaryComputer\Instance" `
-BackupAction Log
# Restore the database and log on the secondary (using NO RECOVERY)
Restore-SqlDatabase `
-Database "<myDatabase>" `
-BackupFile "\\share\backups\<myDatabase>.bak" `
-ServerInstance "SecondaryComputer\Instance" `
-NoRecovery
Restore-SqlDatabase `
-Database "<myDatabase>" `
-BackupFile "\\share\backups\<myDatabase>.log" `
-ServerInstance "SecondaryComputer\Instance" `
-RestoreAction Log `
-NoRecovery
# Create an in-memory representation of the primary replica.
$primaryReplica = New-SqlAvailabilityReplica `
-Name "PrimaryComputer\Instance" `
-EndpointURL "TCP://PrimaryComputer.domain.com:5022" `
-AvailabilityMode "SynchronousCommit" `
-FailoverMode "Automatic" `
-Version 12 `
-AsTemplate
# Create an in-memory representation of the secondary replica.
$secondaryReplica = New-SqlAvailabilityReplica `
-Name "SecondaryComputer\Instance" `
-EndpointURL "TCP://SecondaryComputer.domain.com:5022" `
-AvailabilityMode "SynchronousCommit" `
-FailoverMode "Automatic" `
-Version 12 `
-AsTemplate
# Create the availability group
New-SqlAvailabilityGroup `
-Name "<myAvailabilityGroup>" `
-Path "SQLSERVER:\SQL\PrimaryComputer\Instance" `
-AvailabilityReplica @($primaryReplica,$secondaryReplica) `
-Database "<myDatabase>"
# Join the secondary replica to the availability group.
Join-SqlAvailabilityGroup -Path "SQLSERVER:\SQL\SecondaryComputer\Instance" -Name "<myAvailabilityGroup>"
# Join the secondary database to the availability group.
Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\SecondaryComputer\Instance\AvailabilityGroups\<myAvailabilityGroup>" -Database "<myDatabase>"
İlgili Görevler
Always On Kullanılabilirlik Grupları için bir sunucu örneği yapılandırmak için
Kullanılabilirlik grubu ve çoğaltma özelliklerini yapılandırmak için
Kullanılabilirlik Çoğaltmasının Kullanılabilirlik Modunu Değiştirme (SQL Server)
Kullanılabilirlik Çoğaltmasının Yük Devretme Modunu Değiştirme (SQL Server)
Kullanılabilirlik Grubu Dinleyicisi Oluşturma veya Yapılandırma (SQL Server)
Kullanılabilirlik Çoğaltması Eklerken veya Değiştirirken Uç Nokta URL'sini Belirtme (SQL Server)
** Kullanılabilirlik Replikalarında Yedeklemeyi Konfigüre Etme (SQL Server)
Kullanılabilirlik Replikası üzerinde Salt Okunur Erişimi Yapılandırma (SQL Server)
Kullanılabilirlik Grubu için Read-Only Yönlendirmeyi Yapılandırma (SQL Server)
Kullanılabilirlik Çoğaltması için Session-Timeout Süresini Değiştirme (SQL Server)
Kullanılabilirlik grubu yapılandırmasını tamamlamak için
İkincil Çoğaltmayı Kullanılabilirlik Grubuna Ekleme (SQL Server)
İkincil Veritabanını Bir Kullanılabilirlik Grubu için El ile Hazırlama (SQL Server)
İkincil Veritabanını Kullanılabilirlik Grubuna (SQL Server) Ekleme
Kullanılabilirlik Grubu Dinleyicisi Oluşturma veya Yapılandırma (SQL Server)
Kullanılabilirlik grubu oluşturmanın alternatif yolları
Kullanılabilirlik Grubu Sihirbazı'nı (SQL Server Management Studio) kullanma
Yeni Kullanılabilirlik Grubu İletişim Kutusunu Kullanma (SQL Server Management Studio)
Always On Kullanılabilirlik Grupları yapılandırmasıyla ilgili sorunları gidermek için
Always On Kullanılabilirlik Grupları Yapılandırmasının Sorunlarını Giderme (SQL Server)
Başarısız Dosya Ekleme İşleminin Sorunlarını Giderme (Always On Kullanılabilirlik Grupları)
İlgili İçerik
Bloglar:
Always On - HADRON Öğrenme Serisi: HADRON Etkin Veritabanları için İşçi Havuzu Kullanımı
SQL Server PowerShell ile AlwaysOn'un Yapılandırılması
SQL Server Always On Team Bloglarını : Resmi SQL Server Always On Team Blog
Teknik İncelemeler:
Yüksek Kullanılabilirlik ve Olağanüstü Durum Kurtarma için Microsoft SQL Server Always On Çözümleri Kılavuzu
Ayrıca Bkz.
Veritabanı Yansıtma Uç Noktası (SQL Server)
Always On Kullanılabilirlik Grupları (SQL Server) Genel Bakış