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.
Always On kullanılabilirlik grubunu (AG) barındıran bir SQL Server örneğini yeni bir SQL Server sürümüne, yeni bir SQL Server service pack’ine veya toplu güncelleştirmesine yükseltirken ya da yeni bir Windows service pack’i veya toplu güncelleştirmesi yüklerken, aşamalı yükseltme gerçekleştirerek birincil replikanın kesinti süresini yalnızca tek bir el ile yük devretmeye indirebilirsiniz (veya özgün birincil replikaya geri dönülürse iki el ile yük devretmeye).
Yükseltme işlemi sırasında, ikincil çoğaltma yük devretme veya salt okunur işlemler için kullanılamaz ve yükseltmeden sonra, birincil çoğaltma düğümündeki etkinlik hacmine bağlı olarak ikincil çoğaltmanın birincil çoğaltma düğümünü yakalaması biraz zaman alabilir (bu nedenle yüksek ağ trafiği bekleyebilirsiniz).
Ayrıca, SQL Server’ın daha yeni bir sürümünü çalıştıran bir ikincil replikaya ilk yük devretmeden sonra, bu AG’deki veritabanlarının en son sürüme geçirilmesi için bir yükseltme işleminden geçeceğini unutmayın. Bu süre boyunca, bu veritabanlarının hiçbiri için okunabilir replika bulunmayacaktır. İlk yük devretme sonrasındaki kesinti süresi, AG'deki veritabanı sayısına bağlıdır. Orijinal birincil sunucuya yeniden geçiş yapmayı planlıyorsanız, yeniden geçiş yaptığınızda bu adım tekrarlanmaz.
Uyarı
Bu makale, tartışmayı SQL Server'ın kendisini yükseltmeyle sınırlar. Windows Server Yük Devretme Kümesini (WSFC) içeren işletim sistemini yükseltmeyi kapsamaz. Yük devretme kümesini barındıran Windows işletim sisteminin yükseltilmesi, Windows Server 2012 R2 öncesi işletim sistemleri için desteklenmez. Windows Server 2012 R2 üzerinde çalışan bir küme düğümünü yükseltmek için bkz. Küme İşletim Sistemi Sıralı Yükseltme.
Önkoşullar
Başlamadan önce aşağıdaki önemli bilgileri gözden geçirin:
Desteklenen sürüm ve sürüm yükseltmeleri: Windows işletim sistemi sürümünüzden ve SQL Server sürümünüzden SQL Server'ın en son sürümüne yükseltebileceğinizi doğrulayın. Örneğin, doğrudan bir SQL Server 2005 örneğinden yükseltme yaparsanız veritabanı uyumluluk düzeyiniz yükseltilir.
Veritabanı altyapısı yükseltme yöntemini seçin: Doğru sırada yükseltmek için, desteklenen sürüm ve sürüm yükseltmelerini gözden geçirmenize ve ortamınızda yüklü diğer bileşenlere göre uygun yükseltme yöntemini ve adımları seçin.
Veritabanı altyapısı yükseltme planını planlayın ve test edin: Sürüm notlarını ve bilinen yükseltme sorunlarını, yükseltme öncesi denetim listesini gözden geçirin ve yükseltme planını geliştirip test edin.
SQL Server 2025 için donanım ve yazılım gereksinimleri: SQL Server'ın kurulumu için yazılım gereksinimlerini gözden geçirin. Ek yazılım gerekiyorsa, herhangi bir kapalı kalma süresini en aza indirmek için yükseltme işlemine başlamadan önce her düğüme yükleyin.
Herhangi bir AG veritabanı için değişiklik verisi yakalama veya çoğaltma kullanılıp kullanılmamadığını denetleyin: AG'deki veritabanları değişiklik verisi yakalama (CDC) için etkinleştirildiyse, bu yönergeleri tamamlayın.
Uyarı
- Aynı AG'deki SQL Server örneklerinin sürümlerinin karıştırılması, sıralı yükseltme dışında desteklenmez ve yükseltmenin hızlı bir şekilde gerçekleşmesi gerektiğinden bu durumda uzun süre bulunmamalıdır. SQL Server 2016 (13.x) ve sonraki sürümleri yükseltmek için diğer seçenek, dağıtılmış bir kullanılabilirlik grubu kullanmaktır.
- Always On kullanılabilirlik gruplarını güncelleştirmek için Cluster-Aware Güncelleştirme (CAU) Windows özelliğinin kullanılması desteklenmez.
Kullanılabilirlik grupları için sıralı yükseltme temelleri
AG'leriniz için kapalı kalma süresini ve veri kaybını en aza indirmek için sunucu yükseltmeleri veya güncelleştirmeleri gerçekleştirirken aşağıdaki yönergeleri inceleyin:
Sıralı yükseltmeye başlamadan önce:
Zaman uyumlu işlemeli çoğaltma örneklerinizden en az birinde manuel yük devretme denemesi gerçekleştirin.
Her kullanılabilirlik veritabanında tam veritabanı yedeklemesi gerçekleştirerek verilerinizi koruyun.
Tüm kullanılabilirlik veritabanlarında komutunu çalıştırın
DBCC CHECKDB.
Her zaman önce uzak ikincil çoğaltma örneklerini, ardından yerel ikincil çoğaltma örneklerini ve en son birincil çoğaltma örneğini yükseltin.
Yedeklemeler, yükseltilmekte olan bir veritabanında gerçekleşemez. İkincil çoğaltmaları yükseltmeden önce, otomatik yedekleme tercihini yalnızca birincil çoğaltmada yedeklemeleri çalıştıracak şekilde yapılandırın. Sürüm yükseltmesi sırasında hiçbir çoğaltma erişilebilir değildir veya yedekleme için kullanılamaz. Sürüm değişikliği içermeyen bir yükseltme sırasında, birincil çoğaltmayı yükseltmeden önce otomatik yedeklemeleri ikincil çoğaltmalarda çalıştırılacak şekilde yapılandırabilirsiniz.
Sürüm yükseltmesi sırasında, okunabilir ikincil çoğaltmalar, okunabilir ikincil çoğaltma yükseltildikten sonra ve birincil çoğaltma yükseltilmiş bir ikincil çoğaltmaya devredilene ya da birincil çoğaltma yükseltilene kadar okunamaz.
Yükseltme işlemi sırasında AG'nin istenmeyen yük devretmelerini önlemek için, başlamadan önce tüm eşzamanlı kesinleme çoğaltmalarında otomatik yük devretmeyi kaldırın.
AG'yi önce ikincil çoğaltma ile yükseltilmiş bir örneğe devretmeden önce birincil çoğaltma örneğini yükseltmeyin. Aksi takdirde, istemci uygulamaları birincil replika örneğindeki yükseltme sırasında uzun süreli kesinti yaşayabilir.
AG’yi her zaman eşzamanlı kesinlemeli bir ikincil replika örneğine yük devriyle aktarın. Zaman uyumsuz kesinlemeli bir ikincil çoğaltma örneğine yük devrederseniz, veritabanları veri kaybına açık olur ve siz veri hareketini el ile yeniden başlatana kadar veri hareketi otomatik olarak askıya alınır.
Başka bir ikincil çoğaltma örneğini yükseltmeden veya güncelleştirmeden önce birincil çoğaltma örneğini yükseltmeyin. Yükseltilmiş birincil çoğaltma artık günlükleri, henüz aynı sürüme yükseltilmemiş SQL Server örneği olan herhangi bir ikincil çoğaltmaya gönderemez. Bir ikincil çoğaltmaya veri hareketi askıya alındığında, bu çoğaltma için otomatik yük devri gerçekleşemez ve kullanılabilirlik veritabanlarınız veri kaybı riski altına girer. Bu durum, eski bir birincilden yeni bir birincile manuel olarak yük devrettiğiniz aşamalı yükseltme sırasında da geçerlidir. Dolayısıyla, eski birincil sunucuyu yükselttikten sonra eşitlemeyi yeniden başlatmanız gerekebilir.
Bir AG üzerinde yük devretme gerçekleştirmeden önce, yük devretme hedefinin eşitleme durumunun
SYNCHRONIZEDolduğunu doğrulayın.Uyarı
SQL Server'ın eski bir sürümünün yüklü olduğu bir sunucuya sql server'ın yeni bir örneğini veya yeni sürümünü yüklemek, SQL Server'ın eski sürümü tarafından barındırılan kullanılabilirlik grupları için yanlışlıkla kesintiye neden olabilir. Bunun nedeni SQL Server örneğinin veya sürümünün yüklenmesi sırasında SQL Server yüksek kullanılabilirlik modülünün (
RHS.EXE) yükseltilir. Bu, sunucudaki birincil roldeki mevcut kullanılabilirlik gruplarınızın geçici olarak kesilmesine neden olur. Bu nedenle, sql server'ın daha yeni bir sürümünü sql server'ın eski bir sürümünü barındıran bir kullanılabilirlik grubuna sahip bir sisteme yüklerken aşağıdakilerden birini yapmanızı kesinlikle öneririz:Bakım penceresi sırasında SQL Server'ın yeni sürümünü yükleyin.
Yeni SQL Server örneğinin yüklenmesi sırasında birincil olmaması için kullanılabilirlik grubunu ikincil çoğaltmaya devredin.
Sıralı yükseltme işlemi
Uygulamada, kesin süreç AG'lerinizin dağıtım topolojisi ve her çoğaltmanın işleme alma modu gibi etkenlere bağlıdır. Ancak en basit senaryoda sıralı yükseltme, en basit haliyle aşağıdaki adımları içeren çok aşamalı bir işlemdir:
- Tüm eşzamanlı işleme çoğaltmalarında otomatik yük devretmeyi kaldırın
- Tüm asenkron kesinleştirmeli ikincil replika örneklerini yükseltin.
- Tüm uzak eşzamanlı kesinleştirme ikincil replika örneklerini yükseltin.
- Tüm yerel zaman uyumlu işleme ikincil çoğaltma örneklerini yükseltin.
- AG'nin yükünü (yeni yükseltilen) yerel zaman uyumlu işleme ikincil çoğaltmasına el ile devredebilirsiniz.
- Daha önce birincil replikayı barındıran yerel replika örneğini yükseltin veya güncelleştirin.
- Otomatik yük devretme iş ortaklarını istediğiniz gibi yapılandırın.
Gerekirse, AG'yi orijinal yapılandırmasına döndürmek için ek bir manuel yük devretme işlemi gerçekleştirebilirsiniz.
Eşzamanlı işlem onaylı bir replikayı yükseltip çevrimdışına almak, birincil replika üzerindeki işlemleri geciktirmez. İkincil çoğaltmanın bağlantısı kesildikten sonra, işlemler günlüklerin ikincil çoğaltmada diske kalıcı olarak yazılması beklenmeden birincil çoğaltmada kesinleştirilir.
REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT, 1 veya 2 olarak ayarlanırsa, güncelleştirme işlemi sırasında karşılık gelen sayıda eşitlemeli ikincil çoğaltma kullanılamıyorsa birincil çoğaltma okuma/yazma için kullanılamayabilir.
İkincil çoğaltmada SQL Server'ın daha yeni bir sürümüne yerinde yükseltme gerçekleştirdiğinizde, kullanılabilirlik grubu içindeki veritabanı, kullanılabilirlik grubunda el ile yük devri yapılana kadar Eşitleniyor / Kurtarmada veya Eşitlenmiş / Kurtarmada durumunda kalır; bu işlem kurtarmayı tamamlar ve veritabanını yükseltir. Yükseltilmiş birincil çoğaltma artık günlük kayıtlarını daha düşük sürümlü herhangi bir ikincil çoğaltmaya gönderemez ve veri hareketi durur; bu çoğaltma için otomatik yük devretme yapılamaz ve kullanılabilirlik veritabanlarınız veri kaybına açıktır. Eski birincili yükselttikten sonra eşitlemeyi yeniden başlatmanız gerekebilir. Yeni sürümü çalıştıran bir çoğaltmaya yük devretmeden önce tüm ikincil çoğaltmaları yükseltmenizi öneririz. Bu şekilde, veritabanı(ları) yeni biçime yükseltildikten sonra yük devretme gerçekleştirme seçeneğine sahip olursunuz.
Bir uzak ikincil replika içeren AG
Bir AG’yi yalnızca olağanüstü durum kurtarma amacıyla yapılandırdıysanız, AG’yi zaman uyumsuz kesinleştirmeli bir ikincil replikaya yük devretmeniz gerekebilir. Aşağıdaki şekilde bu tür bir yapılandırma gösterilmektedir:
Bu durumda, sıralı yükseltme sırasında AG'nin yükünü zaman uyumsuz işleme ikincil çoğaltmasına devretmeniz gerekir. Veri kaybını önlemek için işleme modunu zaman uyumlu işleme olarak değiştirin ve AG'nin yükünü devretmeden önce ikincil çoğaltmanın eşitlenmesini bekleyin. Bu nedenle sıralı yükseltme işlemi aşağıdaki gibi görünebilir:
- Uzak sitedeki ikincil replika örneğini yükseltin.
- İşleme modunu zaman uyumlu işleme olarak değiştirin.
- Eşitleme durumu
SYNCHRONIZEDolana kadar bekleyin. - AG'yi uzak sitedeki ikincil çoğaltmaya devredebilirsiniz.
- Yerel (birincil site) replika örneğini yükseltin veya güncelleyin.
- AG'nin yükünü birincil siteye geri devredebilirsiniz.
- İşleme modunu zaman uyumsuz işleme olarak değiştirin.
Zaman uyumlu işleme modu uzak bir siteye veri eşitleme için önerilen bir ayar olmadığından, istemci uygulamaları ayar değişikliğinden sonra veritabanı gecikme süresinde ani bir artış fark edebilir. Ayrıca, bir yük devretme işlemi gerçekleştirmek, onaylanmamış tüm günlük iletilerinin atılmasına yol açar. atılan günlük iletilerinin sayısı, iki site arasındaki yüksek ağ gecikme süresi nedeniyle önemli olabilir ve istemcilerin yüksek miktarda işlem hatasıyla karşılaşmasına neden olabilir. Aşağıdaki eylemleri gerçekleştirerek istemci uygulamaları üzerindeki etkiyi en aza indirebilirsiniz:
Düşük istemci trafiği sırasında bir bakım penceresini dikkatle seçin.
Birincil sitedeki SQL Server'ı yükseltirken veya güncelleştirirken, kullanılabilirlik modunu zaman uyumsuz işleme olarak değiştirin, ardından birincil siteye yeniden yük devretmeye hazır olduğunuzda zaman uyumlu işlemeye geri dönün.
Yük devretme kümesi örnek düğümleri ile AG
AG yük devretme kümesi örneği (FCI) düğümleri içeriyorsa, etkin düğümleri yükseltmeden önce etkin olmayan düğümleri yükseltmeniz gerekir. Aşağıdaki şekil, yerel yüksek kullanılabilirlik için FCI'lerle, uzak olağanüstü durum kurtarma için ise FCI'ler arasında zaman uyumsuz kesinleştirme kullanılan yaygın bir AG senaryosunu ve yükseltme sırasını göstermektedir.
- Yükseltme veya güncelleştirme
REMOTE2 - FCI2'ye yük devretme
REMOTE2 - Yükseltme veya güncelleştirme
REMOTE1 - Yükseltme veya güncelleştirme
PRIMARY2 - FCI1'e yük devretme
PRIMARY2 - Yükseltme veya güncelleştirme
PRIMARY1
SQL Server örneklerini birden çok AG ile yükseltme veya güncelleştirme
Birincil replikaları ayrı sunucu düğümlerinde bulunan birden çok AG çalıştırıyorsanız (Etkin/Etkin yapılandırma), yükseltme süreci boyunca yüksek kullanılabilirliği korumak için daha fazla yük devretme adımı gerekir. Aşağıdaki tabloda gösterildiği gibi tüm çoğaltmaları zaman uyumlu işleme modunda olan üç sunucu düğümünde üç AG çalıştırdığınızı varsayalım:
| AG | Node1 | Node2 | Node3 |
|---|---|---|---|
| AG1 | Primary | ||
| AG2 | Primary | ||
| AG3 | Primary |
Aşağıdaki sırayla yük dengeli bir sıralı yükseltme gerçekleştirmek sizin durumunuz için uygun olabilir:
- AG2'yi
Node3üzerine yük devret (Node2'i boşaltmak için) - Yükseltme veya güncelleştirme
Node2 - AG1'i
Node2üzerine yük devret (Node1'i boşaltmak için) - Yükseltme veya güncelleştirme
Node1 - Hem AG2’yi hem de AG3’ü
Node1öğesine yük devredin (Node3’i boşaltmak için) - Yükseltme veya güncelleştirme
Node3 - AG3'e yük devretme
Node3
Bu yükseltme dizisinin, AG başına iki yük devretmeden daha az ortalama kapalı kalma süresi vardır. Sonuçta elde edilen yapılandırma aşağıdaki tabloda gösterilmiştir.
| AG | Node1 | Node2 | Node3 |
|---|---|---|---|
| AG1 | Primary | ||
| AG2 | Primary | ||
| AG3 | Primary |
Belirli uygulamanıza bağlı olarak, yükseltme yolunuz farklılık gösterebilir ve istemci uygulamalarının yaşadığı kapalı kalma süresi de değişebilir.
Uyarı
Çoğu durumda, aşamalı yükseltme tamamlandıktan sonra orijinal birincil çoğaltmaya yeniden geçiş yaparsınız.
Dağıtılmış kullanılabilirlik grubunun sıralı yükseltmesi
Dağıtılmış bir kullanılabilirlik grubunun aşamalı yükseltmesini gerçekleştirmek için önce tüm ikincil çoğaltmaları yükseltin. Ardından, ileticiye geçiş yapın ve ikinci kullanılabilirlik grubunun son kalan örneğini yükseltin. Diğer tüm çoğaltmalar yükseltildikten sonra, global birincili yük devretin ve ilk kullanılabilirlik grubunun geriye kalan son örneğini yükseltin. Adımları içeren ayrıntılı bir diyagram sonraki bir bölümde sağlanmıştır.
Belirli uygulamanıza bağlı olarak, yükseltme yolunuz farklılık gösterebilir ve istemci uygulamalarının yaşadığı kapalı kalma süresi de değişebilir.
Uyarı
Çoğu durumda, aşamalı yükseltme tamamlandıktan sonra ilk birincil çoğaltmalara geri geçiş yaparsınız.
Dağıtılmış kullanılabilirlik grubunu yükseltmeye yönelik genel adımlar
- Sistem veritabanları ve kullanılabilirlik grubuna katılanlar dahil olmak üzere tüm veritabanlarını yedekleyin.
- İkinci kullanılabilirlik grubunun (sonraki) tüm ikincil replikalarını yükseltin ve yeniden başlatın.
- İlk kullanılabilirlik grubunun (upstream) tüm ikincil replikalarını yükseltin ve yeniden başlatın.
- İletici birincil öğesini, ikincil kullanılabilirlik grubunun yükseltilmiş ikincil çoğaltmasına devretme.
- Veri eşitlemeyi bekleyin. Veritabanları, tüm zaman uyumlu işlemeli çoğaltmalarda eşitlenmiş olarak görünmelidir ve global birincil, yönlendiriciyle eşitlenmiş olmalıdır.
- İkincil kullanılabilirlik grubunun kalan son örneğini yükseltin ve yeniden başlatın.
- İlk kullanılabilirlik grubunun yükseltilmiş bir ikinciline genel birincil yük devretme.
- Birincil kullanılabilirlik grubunun kalan son örneğini yükseltin.
- Yeni yükseltilen sunucuyu yeniden başlatın.
- (isteğe bağlı) Her iki kullanılabilirlik grubunu da özgün birincil çoğaltmalarına geri döndür.
Önemli
Her adım arasındaki eşitlemeyi doğrulayın. Sonraki adıma geçmeden önce, eşzamanlı işlemeyi kullanan çoğaltmalarınızın kullanılabilirlik grubu içinde senkronize olduğunu ve genel birincilinizin dağıtılmış AG'deki yönlendiriciyle senkronize olduğunu doğrulayın.
Öneri: Eşitlemeyi her doğruladığınızda, SQL Server Management Studio'da hem veritabanı düğümünü hem de dağıtılmış AG düğümünü yenileyin. Her şey senkronize edildikten sonra, her kopyanın durumunun ekran görüntüsünü kaydedin. Bu, hangi adımda olduğunuzu izlemenize yardımcı olur, bir sonraki adımdan önce her şeyin düzgün çalıştığına dair kanıt sağlar ve herhangi bir sorun olması durumunda sorun giderme konusunda size yardımcı olur.
Dağıtılmış kullanılabilirlik grubunun sıralı yükseltmesine yönelik diyagram örneği
| Kullanılabilirlik grubu | Birincil kopya | İkincil Replika |
|---|---|---|
| AG1 | NODE1\SQLAG |
NODE2\SQLAG |
| AG2 | NODE3\SQLAG |
NODE4\SQLAG |
| DistributedAG | AG1 (genel) | AG2 (iletici) |
Bu diyagramdaki örnekleri yükseltme adımları:
- Sistem veritabanları ve kullanılabilirlik grubuna katılanlar dahil olmak üzere tüm veritabanlarını yedekleyin.
-
NODE4\SQLAG(AG2'nin ikincil düğümü) bileşenini yükseltin ve sunucuyu yeniden başlatın. -
NODE2\SQLAGöğesini (AG1'in ikincil örneğini) yükseltin ve sunucuyu yeniden başlatın. - AG2'yi
NODE3\SQLAGkonumundanNODE4\SQLAGkonumuna devredin. - Sunucuyu yükseltin
NODE3\SQLAGve yeniden başlatın. - AG1'i
NODE1\SQLAGüzerindenNODE2\SQLAGüzerine yük devredin. - Sunucuyu yükseltin
NODE1\SQLAGve yeniden başlatın. - (isteğe bağlı) Özgün birincil çoğaltmalara geri dönün.
- AG2'yi geriden
NODE4\SQLAGöğesine devrederek devredinNODE3\SQLAG. - AG1’i
NODE2\SQLAGüzerinden yenidenNODE1\SQLAG’e devredin.
- AG2'yi geriden
Her kullanılabilirlik grubunda üçüncü bir çoğaltma olsaydı, bunu NODE3\SQLAG ve NODE1\SQLAG öncesinde yükseltirdiniz.
Önemli
Her adım arasındaki eşitlemeyi doğrulayın. Sonraki adıma geçmeden önce, eşzamanlı işlemeyi kullanan çoğaltmalarınızın kullanılabilirlik grubu içinde senkronize olduğunu ve genel birincilinizin dağıtılmış AG'deki yönlendiriciyle senkronize olduğunu doğrulayın.
Tavsiye: Eşitlemeyi her doğruladığınızda, SQL Server Management Studio'da hem veritabanı düğümünü hem de Dağıtılmış AG düğümünü yenileyin. Her şey eşitlendikten sonra bir ekran görüntüsü alın ve kaydedin. Bu, hangi adımda olduğunuzu izlemenize yardımcı olur, bir sonraki adımdan önce her şeyin düzgün çalıştığına dair kanıt sağlar ve herhangi bir sorun olması durumunda sorun giderme konusunda size yardımcı olur.
Veri yakalamayı veya çoğaltmayı değiştirmek için özel adımlar
Uygulanan güncelleştirmeye bağlı olarak, değişiklik verisi yakalama veya çoğaltma için etkinleştirilmiş AG replika veritabanları için ek adımlar gerekebilir. Aşağıdaki adımların gerekli olup olmadığını belirlemek için güncelleştirmenin sürüm notlarına bakın:
Her ikincil kopyayı yükseltin.
Tüm ikincil çoğaltmalar yükseltildikten sonra AG'nin yükünü yükseltilmiş bir örneğe devredin.
Birincil çoğaltmayı barındıran örnekte aşağıdaki Transact-SQL çalıştırın:
EXECUTE [master].[sys].[sp_vupgrade_replication];Uyarı
Bu komutun çalıştırılması birkaç dakika sürebilir. SQL Server 2019 CU1 veya sonraki bir sürümü kullanıyorsanız bu adımı atlayın. Daha fazla bilgi edinmek için KB4530283 gözden geçirin.
Başlangıçta birincil replika olan örneği yükseltin.
Arka plan bilgileri için bkz. EN son CU'ya yükselttikten sonra CDC işlevselliği bozulabilir.