Bogahost Blog | Güncel Hosting, Sunucu ve Yazılım Rehberi
Müşteri Paneli
Blog

VDS Üzerinde MariaDB Replikasyonu: Master-Slave Kurulumu ve Veri Senkronizasyonu

VDS (Sanal Özel Sunucu) kiralayan işletmeler, veritabanı hatası veya sunucu çökmesi durumunda veri kaybından korkmak istemez. MariaDB replikasyonu, bu sorunu çözen en pratik çözümlerden biridir. Master-Slave (İçeri-Köle) mimarisi sayesinde birinci sunucudaki tüm veritabanı değişiklikleri otomatik olarak ikinci sunucuya senkronize edilir. Ancak bu kurulumun doğru yapılması, replication lag (gecikme) sorunlarından kaçınılması ve veri tutarlılığının sağlanması için teknik bilgi gerekir.

Master-Slave Replikasyonu Nedir ve Neden Gereklidir?

MariaDB replikasyonu, bir ana sunucudaki (master) tüm SQL komutlarının, bir veya daha fazla yedek sunucuya (slave) otomatik olarak gönderilmesidir. Master sunucu, gelen tüm INSERT, UPDATE ve DELETE işlemlerini binary log dosyasında kaydeder. Slave sunucular bu logu okuyarak aynı işlemleri kendilerinde uygularlar.

Bu mimarinin faydaları şunlardır:

Master Sunucu Yapılandırması

Master sunucusunda MariaDB yapılandırma dosyasını (/etc/mysql/mariadb.conf.d/50-server.cnf) düzenlemelisiniz. Aşağıdaki parametreler zorunludur:

Yapılandırma sonrası MariaDB'yi yeniden başlatın: systemctl restart mariadb. Ardından replication için kullanıcı oluşturun:

CREATE USER 'replication'@'SLAVE_IP' IDENTIFIED BY 'strong_password'; GRANT REPLICATION SLAVE ON *.* TO 'replication'@'SLAVE_IP'; FLUSH PRIVILEGES;

Master durumunu kontrol edin: SHOW MASTER STATUS; - çıktıda File (log dosya adı) ve Position (konum) bilgilerini not alın.

Slave Sunucu Yapılandırması

Slave sunucusunda benzer şekilde my.cnf düzenleyin, ancak server-id farklı olmalıdır (server-id=2). Binary log'u kaydedebilirsiniz ama zorunlu değildir.

Slave'de replication bağlantısını kurun:

CHANGE MASTER TO MASTER_HOST='MASTER_IP', MASTER_USER='replication', MASTER_PASSWORD='strong_password', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=12345;

Master status çıktısından aldığınız File ve Position değerlerini girin. Ardından replication'ı başlatın:

START SLAVE;

Durum kontrolü: SHOW SLAVE STATUS\G - Slave_IO_Running ve Slave_SQL_Running her ikisi de YES olmalıdır. Eğer NO ise, Seconds_Behind_Master ve Last_Error alanlarını kontrol edin.

Replikasyon Lag Sorunları ve Çözümleri

Slave sunucu, master'a yetişemediğinde replication lag meydana gelir. Bu sorun özellikle yoğun yazma işlemleri sırasında görülür. Seconds_Behind_Master değeri sıfırdan büyükse lag vardır.

Çözümler:

Veri Tutarlılığı ve Monitoring

Replikasyon sırasında veri uyuşmazlıkları oluşabilir. Bunu kontrol etmek için pt-table-checksum (Percona Toolkit) kullanabilirsiniz. Bu araç, master ve slave'deki tabloları karşılaştırır ve farkları gösterir.

Sunucu yöneticileri, replication durumunu düzenli olarak izlemelidir. SHOW SLAVE STATUS komutunda dikkat edilmesi gereken alanlar:

Failover Senaryosu: Master Çökmesi Durumunda

Master sunucu başarısız olursa, slave'i yeni master olarak yükseltebilirsiniz. Slave'de şu komutu çalıştırın:

STOP SLAVE; RESET SLAVE ALL;

Artık bu sunucu bağımsız master gibi çalışacaktır. Eski master'ın yerine yeni bir slave kurabileceğiniz gibi, uygulamalarınızı doğrudan bu yeni master'a yönlendirebilirsiniz. Yüksek kullanılabilirlik için bu süreci otomatikleştiren MHA (MySQL High Availability) gibi araçlar kullanabilirsiniz.

Sonuç: VDS üzerinde MariaDB replikasyonu kurulumu, veri kaybına karşı etkili bir savunmadır. Master-Slave mimarisi doğru yapılandırıldığında, hem yedekleme hem de performans iyileştirmesi sağlar. Ancak replication lag, veri tutarlılığı ve failover planlaması göz ardı edilmemelidir. Bogahost'un yönetilen VDS hizmetleri, bu tür karmaşık kurulumları handle etmek için teknik desteği ve altyapısıyla işletmelerin veri güvenliğini sağlar.

Web Siteniz Hızlansın!

Blogumuzu beğendiniz mi? Web siteniz için yüksek performanslı ve %99.9 uptime garantili hosting paketlerimize göz atın.

Paketleri İncele →