Merhaba Atıf Bey,

Benim, sadece Slave'deki MySQL'i güncel tutma ihtiyacım var. Çünkü, Web Server'da yer alan dosyalarımda güncelleme ihtiyacım neredeyse hiç olmuyor.

*Ve, cevabını hala bulamadığım soru ise şu:*
Master'a herhangi bir şekilde kısa veya uzun süre ulaşılamaması söz konusu olursa, Slave devreye girsin istiyorum. Bu sırada, Master kendine gelse bile Slave çalışmaya devam etsin. Sonrasında benim kontrolümde tekrar Master'a döneyim.

Bu konuya aslında sizin de belirttiğiniz gibi Felaket Kurtarma Merkezi olarak da bakabiliriz. İstiyorum ki, kullanıcılar sunucudaki felaket durumunu hiç hissetmesinler; veya minimum duraksama ile hissetsinler. Ayrıca Master'dan Slave'e geçiş tamamen otomatik olsun, bana ihtiyaç duymasın.

Bunu nasıl yapabileceğim konusunu araştırıyorum.

Selamlar,
Nuri Akman


29.01.2010 11:18, Atıf CEYLAN yazmış:
merhaba,
sadece veritabanı değil tüm sistemin yedeğini rsync ile alabilirsiniz.

benzer bir durumu biz yaşıyoruz. yurt dışındaki sunucuların
yedeklemelerini hem aynı lokasyonda hemde türkiyedeki sunucularda
tutuyoruz. türkiye için süreç 1 saatlik rsync yedeklemesi şeklinde. bu
FKM (felaket kurtarma merkezi) için iyi bir yöntem. gönül isterki güzel
ülkemin hat maliyetleri düşse de artık bizlerde yurt sermayesine katkıda
bulunsak :)

kolay gelsin

Nuri Akman wrote:
Merhaba,

Master'da herhangi bir sorun oluşup master KISA veya UZUN süreli
SUSARSA, ben devreye girene kadar Slave çalışsın istiyorum. Ben
devreye girmeden Master kendine gelse bile Slave çalışmaya devam etmeli.

Benim devreye girmemden amacım, Slave'deki güncel verilerin Master'ı
kontrolüm dahilince güncellemesini sağlamak.

Bu işi nasıl sağlayabilirim acaba?

Ayrıca, düşündüğüm sistem web server'ın komple bir yedeğinin farklı
bir fiziksel lokasyonda (Örnek: master Ankara, slave ABD'de) her an
devreye girebilecek şekilde hazır bulunması.

Selamlar,
Nuri Akman



29.01.2010 10:41, serkan yazmış:
İlk dediğiniz şekilde. Ancak 5 dakika değil 1 saniyede bir,
ayarlanabiliyor ama oldukça kısa bir zaman.

serkan


2010/1/29 Nuri Akman<[email protected]
<mailto:[email protected]>>

     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]
     <mailto:[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]
     <mailto:[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]
     <mailto:[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]
     <mailto:[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]
     <mailto:[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

Cevap