Merhaba Atıf Bey, Master-slave replikasyonu şu şekilde mi çalışıyor?: Örneğin 5 dakikada bir, o ana kadar master'da gerçekleştirilen update ve insert komutları slave'e gönderiliyor ve bu komutlar slave üzerinde çalıştırılıyor.
Yoksa; Master'daki her bir update/delete anlık olarak mı güncelleniyor? Selamlar, Nuri Akman 29.01.2010 00:32, Atıf CEYLAN yazmış: > Merhaba, > konunun tamamını takip edemedim malesef, buradaki yazdıklarınıza > istinaden nacizane tavsiyem, master-slave replication olacak. yanlış > hatırlamıyorsam mysql ndb vardı bir zamanlar. zahmetsiz bu işi > hallediyor diye biliyorum. > yazdığınızdan anladığım kadarı ile değişen veriniz hayli az. bu nedenle > master-slave replication işinizi fazlası ile görecektir. temel mantığı; > slave olan db belirlediğiniz sürelerde kendini, master db'den günceller > (örn. her dakikada). aynı uygulamanızın iki kopyası var sanırım, > uygulamanızda insert, uğdate, delete işlemlerini master db'den select > işlemlerini oransal olarak her ikisinden yaparsınız. böylece hem > poolingde yapmış olursunuz. uygulama içinde bağlantı noktasında if > (!$db1) baglan(db2) benzeri bir kontrolle kullanıcılarınızın aksaklıktan > haberdar olmadan işlerine devam etmelerinide sağlamış olursunuz. > > kolay gelsin. > > Nuri Akman wrote: > >> Merhaba, >> >> Sanırım sizinkine benzer bir durum da benim başımda. Bende durum >> şöyle: İnternette aktif olarak çalışan PHP+MySQL uygulamam var. Ancak, >> "sunucum herhangi bir zamanda devre dışı kalırsa ne olacak?" korkum >> var. Veritabanımda on binlerce satır veri olmasına rağmen bunların >> sadece en son 500 - 700 tanesi GÜN İÇİNDE ekleniyor veya >> değiştiriliyor. Eski kayıtlar olduğu gibi kalıyor ve hiç bir şekilde >> delete/update yapılmıyor. >> >> Aktif sunucu üzerindeki PHP dosyalarımı fiziksel olarak uzakta bulunan >> başka bir sunucuya da yükledim. Aynı sunucuda PHP+MySQL çalışıyor. >> Veritabanını da olduğu gibi kopyaladım ve sistem, bu sunucu üzerinden >> de hizmet veriyor. >> >> *Sorun da burada başlıyor: * >> Her yeni işlemle birlikte ikinci sunucudaki veritabanım güncelliğini >> yitiriyor. İşte tam bu noktada replikasyon ihtiyacım var diyorum. >> >> *Senaryoyu işleme koyalım: * >> Sunucu 1 devre dışı kalmış. Kullanıcılar, bunu görüp Sunucu 2'den >> devam ediyorlar. >> >> Herhangi bir metodla Sunucu 2'ye aktardığım veriler ne kadar güncelse >> kullanıcılarım da o kadar güncel bir sistemde çalışıyorlar. Bu metod >> manuel bir şey de olsa, replikasyon da olsa amacımıza ulaştık demektir. >> >> *Peki sonrasında ne olacak?* >> Sunucu 2 bir süre hizmet verdi ve üzerine yeni veriler eklendi / >> güncellendi, ancak Sunucu 1 bundan habersiz. >> >> Acaba ihtiyaçlarımız benzeşiyor mu? >> >> Selamlar, >> Nuri Akman >> >> >> 28.01.2010 15:24, Ali Rıza Keleş yazmış: >> >>> On Thu, 2010-01-28 at 14:49 +0200, Nuri Akman wrote: >>> >>> >>>> Merhaba, >>>> >>>> Mesajınıza baktığımda, amacınızın replikasyon olduğunu belirtiyorsunuz, >>>> ancak buna neden ihtiyaç duyduğunuzun yanıtını göremiyorum. Bu konuda >>>> bilgi verebilir misiniz? Veritabanınızı replike edince ne olmasını >>>> umuyorsunuz? >>>> >>>> >>> Daha detaylı anlatayım... >>> >>> Intranet çalışan bir uygulamam var. Uygulama Vertabanı ile birlikte >>> yerel bir sunucuda. Sistem Debain Lenny. Buna srv1 diyelim üzerindeki >>> uygulamaya app1, vertabanına ise vt1. >>> >>> Aynı uygulamanın daha sınırlı bir kopyası Internet üzerinde başka bir >>> sunucuda.. Bunlara da sunucu srv2, uygulama app2, veritabanına ise vt2 >>> diyelim. Bu da aynı biçimde Debian Lenny. >>> >>> >>> Esas datalar srv1 üzerinde app1 ile vt1 e işleniyor. İlk istediğim bu >>> işlemlerin kopyaları aynen srv2 üzerindeki vt2 ye birebir kopyalanması >>> ve app2 nin kullanımına hazır hale gelmesi. >>> >>> Yereldeki kadar olmasa da srv2 deki app2 bir miktar datayı bağımsız >>> biçimde üretip vt2 ye kaydedecek. Bu vt2 ye kaydedilen datalarında aynen >>> yereldeki vt1 'e kaydedilmesini istiyorum. >>> >>> Bunun yanında, ilerisi için soruyorum bunu, başka bir lokasyonda 3. bir >>> sunucu eklediğimde, srv3, app3 ve vt3 diyelim, 3 sunucuyu da yukarıdaki >>> ikisi gibi nasıl çalıştırabilirim. >>> >>> vt1-vt2 replikasyonu >>> vt2-vt3 replikasyonu >>> >>> işimi görür mü? >>> >>> Eğer replikasyondan haberdar olmasaydım, şöyle çözecektim: >>> >>> 1- srv1 üzerindeki dataları bir biçimde ve sürekli şekilde web >>> üzerindeki sunucuya da kaydedecek, >>> >>> 2- srv2 de üretilen datayı geçici tablolara kaydedip, app1 in isteği >>> üzerine, kullanıcının tetiklemesi ya da otomatik, hem srv1 e hem de srv2 >>> ye kaydedecektim. >>> >>> >>> Son olarak bütün bu işlemleri ssl ile yapmak istediğimi söyledim. Ben >>> soruma yanıtımı genel olarak aldım ama güzel bir konu, daha çok >>> paylaşabiliriz. >>> >>> İlginiz için teşekkür ederim. >>> >>> -- >>> Ali Rıza Keleş, >>> >>> >>> >>> >>> >>> >>>> Selamlar, >>>> Nuri Akman >>>> >>>> >>>> 27.01.2010 18:11, Ali Rıza Keleş yazmış: >>>> >>>> >>>>> Merhaba, >>>>> >>>>> Veritabanı replication(yanıtınızda uygun gördüğünüz Türkçe karşılığını >>>>> yazarsanız, bundan sonra onu kullanırım.) konusunda önerinizi almak >>>>> istiyorum. Biraz okudum, eğer çözüm bu ise derinleşeceğim. >>>>> >>>>> Durum şöyle: >>>>> >>>>> Vt1: insert/update/delete işlemleri yoğun olacak, >>>>> >>>>> Vt2: Select işlemleri çok yoğun olacak ama bu işlemlerin kayıt altına >>>>> alınması için gerekli olan bazı insert işlemleri de yapılacak. Vt1 in >>>>> işleyeceği temel tablolarda çok nadiren insert işlemleri yapılacak. >>>>> >>>>> Vt1 deki ve Vt2 deki her türlü değişikliğin aynı anda karşılıklı >>>>> işlenmesini istiyorum. Bunu master-master replication ile yapabilir >>>>> miyim? >>>>> >>>>> Aklıma takılan bazı problemler: >>>>> >>>>> 1- Bu iş için en uygun çözüm replication(master-master) mı? >>>>> >>>>> 2- İşlem çakışmaları yaşıyabilir miyim? AutoIncrement alanlar nasıl >>>>> olur? Yani aynı anda vt1.tablo1 ve vt2.tablo1 e data girildiğinde ve >>>>> aynı AI değeri aldıklarında veri kaybı, replikasyonun çökmesi gibi >>>>> sorunlar yaşar mıyım? >>>>> >>>>> 3- Sunucular aynı lokasyonda değiller. Birisi internet üzerinde, >>>>> diğer(ler)i yerel ağ(lar)da. Genelde aynı ağda olması yönünde tavsiyeler >>>>> gördüm? Böyle olması çok zorluk çıkarır mı? >>>>> >>>>> 4- Vt1 özelliklerinde bir vertabanı daha (Vt3) bu kompozisyona >>>>> eklenebilir mi? Yani Vt1-Vt2 ve Vt2-Vt3 şekline Vt2 aynı anda hem Vt1 ve >>>>> Vt2 ile replikasyon yapılabilir mi? >>>>> >>>>> 5- Bu işlem sırasında SSL kullanabileceğimi de okudum. Aynı lokasyonda >>>>> olmadıkları için sizce performansı nasıl etkiler? >>>>> >>>>> Teşekkür ederim. >>>>> >>>>> -- >>>>> Ali Rıza Keleş, >>>>> >>>>> >>>>> _______________________________________________ >>>>> Linux-sunucu E-Posta Listesi >>>>> [email protected] >>>>> >>>>> Liste kurallarını http://liste.linux.org.tr/kurallar.php bağlantısından >>>>> okuyabilirsiniz; >>>>> >>>>> Bu Listede neden bulunduğunuzu bilmiyorsanız veya artık bu listeden gelen >>>>> e-postaları almak istemiyorsanız aşağıdaki bağlantı adresini kullanarak 1 >>>>> dakika içinde üyeliğinizi sonlandırabilirsiniz. >>>>> http://liste.linux.org.tr/mailman/listinfo/linux-sunucu >>>>> >>>>> >>>>> >>>> _______________________________________________ >>>> Linux-sunucu E-Posta Listesi >>>> [email protected] >>>> >>>> Liste kurallarını http://liste.linux.org.tr/kurallar.php bağlantısından >>>> okuyabilirsiniz; >>>> >>>> Bu Listede neden bulunduğunuzu bilmiyorsanız veya artık bu listeden gelen >>>> e-postaları almak istemiyorsanız aşağıdaki bağlantı adresini kullanarak 1 >>>> dakika içinde üyeliğinizi sonlandırabilirsiniz. >>>> http://liste.linux.org.tr/mailman/listinfo/linux-sunucu >>>> >>>> >>> _______________________________________________ >>> Linux-sunucu E-Posta Listesi >>> [email protected] >>> >>> Liste kurallarını http://liste.linux.org.tr/kurallar.php bağlantısından >>> okuyabilirsiniz; >>> >>> Bu Listede neden bulunduğunuzu bilmiyorsanız veya artık bu listeden gelen >>> e-postaları almak istemiyorsanız aşağıdaki bağlantı adresini kullanarak 1 >>> dakika içinde üyeliğinizi sonlandırabilirsiniz. >>> http://liste.linux.org.tr/mailman/listinfo/linux-sunucu >>> >>> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Linux-sunucu E-Posta Listesi >> [email protected] >> >> Liste kurallarını http://liste.linux.org.tr/kurallar.php bağlantısından >> okuyabilirsiniz; >> >> Bu Listede neden bulunduğunuzu bilmiyorsanız veya artık bu listeden gelen >> e-postaları almak istemiyorsanız aşağıdaki bağlantı adresini kullanarak 1 >> dakika içinde üyeliğinizi sonlandırabilirsiniz. >> http://liste.linux.org.tr/mailman/listinfo/linux-sunucu >> >> > > _______________________________________________ Linux-sunucu E-Posta Listesi [email protected] Liste kurallarını http://liste.linux.org.tr/kurallar.php bağlantısından okuyabilirsiniz; Bu Listede neden bulunduğunuzu bilmiyorsanız veya artık bu listeden gelen e-postaları almak istemiyorsanız aşağıdaki bağlantı adresini kullanarak 1 dakika içinde üyeliğinizi sonlandırabilirsiniz. http://liste.linux.org.tr/mailman/listinfo/linux-sunucu
