Windows Server'da MySQL Failover - High Availability - Cluster Oluşturma - 1

Merhaba,

Bir iş için lazım oldu.

Belki bir gün sizinde işinize yarayabilir diyerek burada paylaşıyorum. Bir Db admin kadar olmasa da bizim de işimizi çözdü.

Unutmadan söylemek gerekir ki bu iş için en az 3 sunucunuzun olması gerekir.

Bu sunucular kendi aralarından haberleşebilmelidir. Ee tabi mysql 'inde bu sunucularda olması gerekir.

Diyelim ki, MySQL cluster oluşturacağınız bu üç makinenizin adresleri aşağıdaki gibi olsun.
 

10.231.1.150

10.231.1.151

10.231.1.152


Bu makinelerden 1 tanesi master node olarak, diğer ikisi ise slave node olarak çalışacaktır.

MySQL'in bize verdiği Mysql Group Replication ile kendi aralarında verileri kopyalayacaklar.

Bu 3 makineye de  şuradan mysql installer dosyasını indirelim.

 

Not: Bundan sonraki adımlar 10.231.1.150 makinesinden devam edecektir.
 

150 makinesine girdiyseniz ve mysql installer ı yukarıdaki bağlantıdan indirdiyseniz başlayalım. Biz sistemi kurarken 8.0.20 sürümü vardı.

Ekran görüntüleri ile devam ediyoruz. Çift tıkladığınızda sizi şöyle bir ekran karşılayacaktır.

Biz custom ı seçip next 'e basıyoruz.
 


Sonrasında gelecek ekran aşağıdaki gibidir. Ben seçimlerimi yapıp sağ tarafa taşıdım.

Sizde MySQL Server 8.0, MySQL Workbench ve MySQL Shell 'i seçip sağ tarafa taşıdıktan sonra next 'e tıklayın.
 

 

Bize bu işlemlerin yapılabilmesi için gerekli bağımlıkların olduğu ekran gelecektir. Execute 'e basın.

 

Gerekli bağımlılıklar kurulmaya başlayacaktır. Kurulum tamamlandıktan sonraki ekran aşağıdaki gibi olacaktır.

Next 'e basıp devam ediyoruz.

 

 

Sonraki ekrandsa artık 150 makinesine kurulmasını istediğimiz ( en başında seçtiğimiz ) ürünler gelecektir.

 

 

Execute deyip bekliyoruz. Aşağıdaki gibi kurulum başlayacaktır.

 

 

Kurulumlar bitince oluşacak ekran aşağıdaki gibidir.

 

 

Next deyip devam ediyoruz. Karşımıza şöyle bir ekran gelecek.

 

 

Mysql Server kuruldu. Artık cluster oluşturma aşamasına geçebiliriz. Next deyip devam ediyoruz.

 

 

Gelen ekranda yukarıdaki seçimleri yapıyoruz. Burada yeni bir cluster oluştur diyoruz.

Next 'e basıp devam edelim.

 

 

Bizi böyle bir ekran karşılayacak. Bu ekrandan cluster ınıza isim verebilirsiniz. Cluster admin belirleyip, bu admine şifre verebilirsiniz.

Benim sistemim ( test aşamasında olduğu için ) cluster admin olarak ufuk, şifre olarak ise 123456 verdim. Host olarak zaten 150 makinesinde olduğumuz için host adresi kısmına onu yazdım.

Server ID ise 1.

Biz burada 150 makinesini master node olarak ayarlıyoruz.

Ekran görüntüsü şöyle oldu.

 

 

Next deyip devam edelim.

Bize gelecek ekran şu şekilde olacaktır.

 

 

Port değişikliği yapmak istiyorsanız buradan yapabilirsiniz. MySQL varsayılan olarak 3306 portunu kullanıyor. Ben test makineleri olduğu için değişiklik yapmadım.

Next 'e basıp devam edelim.

 

 

Burası önemli. Benim sistemimde eski mysql sürümleri olacağı için ben alttakini işaretledim.  Geriye dönük uyumlu olsun diye. Zaten üsttekini seçtiğimde çalıştıramadım. :))

Next deyip devam edelim.

 

 

Bizi yukarıdaki gibi bir ekran karşılayacak. Üst taraftan MySQL Root şifresinizi girin. Ben test için olduğundan "123456" girdim.

Hemen altından iki adet yeni hesap oluşturdum. Bir tanesi ufuk DB Manager olsun dedim. Diğeri de ucar olsun ve o da DB admin olsun. Şifreleri de her zamanki gibi "123456" :))

DİKKAT: Yalnız unutmayın. Bu db'lere kod ile bağlanabilmek için ( örneğin php/pdo ) bir tane DB Admin hesabınız olsa iyi olur.

Next deyip devam edelim.

 

 

Buradan Window servisi olarak çalıştırıyoruz. Sunucu kapanıp açıldığında otomatik olarak çalışmasını istiyorsanız "Start the MySQL Server at System Startup" seçeneğini işaretleyin.

Next deyip devam ediyoruz. Bizi şöyle bir ekran karşılıyor.

 

 

Buradan Execute deyin ve bekleyin.

Aşağıdaki gibi bir görüntü oluşacak.

 

 

Finish deyin. Ardından gelen ekran şu olaktır.

 

 

Next deyip devam edelim.

 

 

Veee mutlu son. Finish devam edebilirsiniz.

Sonunda MySQL Cluster yapımızı kurmuş olduk. Tabi şimdilik sadece master node u kurduk.

Sıra geldi slave node lara. Yazı çok uzun olduğu için bunu diğer makalede anlatacağım.

 

Teşekkürler..

 

1273 Görüntülenme

3 yorum yapılmış

okan can – 23 August, 2021:

selam, ilgil ekranın gelmemesi .0.20 den sonra installer dan kaldırmıs olmaları. 0.20 ile testleri yapıyorum fakat bu sefer de node lar bir türlü clustere join olmuyor. Uğraşacaz bakalım. Bu arada cevap için teşekkürşler.

Ufuk Uçar – 20 August, 2021:

@okancan, merhaba okan, Benzer bir sorunu server update işleminde yaşamıştık. 8.0.23 sürümünde de problemler vardı. Sonunda 8.0.20 sürümüne geri döndük uzun uğraşlar sonucunda. Adımları doğru yaptıysan sanırım yapabilecek bir şey yok gibi. Biz ne yaptıysak olmamıştı. Belki de beceremedik. Windows'ta herhangi bir feature ya da 3. parti bir uygulama kurmaya gerek yok. Kurulu programları kaldırıp tekrar dener misin? 8.0.20 sürümünden devam et derim bu arada.

okan can – 19 August, 2021:

Kardesim selam. umarım gorursun bu yorumu. senin makalelerden bişiler ogrenmeye calısıyordum. mysql cluster kurulumunda HA ekranı bende gelmiyor direk "type and network" kısmından devam ediyor. bunların öncesnde windowsda herhangi bir feature aktif etmem yada 3.parti bişi kurmammu gerekiyor. sürüm 8.0.26

Yorum Yap