Citat:
bjevta:
- sta mi sve treba: valjda 2 servera + 2xLinux (mozda Oracle linux?) + 2 x MySQL enterprise, neki 1GB link izmedju servera. to sve ima da stoji u istoj zgradi (New York)
da
Citat:
bjevta:
- koliko je realno ocekivati da real-time replikacija bude stvarno real-time?
zavisi od kolicine update-a, ono sto je problem sa mysql replikacijom je sto je single threaded tako da ako ti napadnes mysql master sa 200 konekcija koje rade update na 200 tabela to ce na masteru da ide super brzo ali posto je slave single threaded (to ce tamo 5.6, 6.0 mozda da promene) na slave-u ce to da se izvrsi mnogo sporije nego na masteru tako da slave moze da ti kasni. Obzirom da tebi ne treba master-master vec master slave da bi odradio failover to nije preterano problematicno posto samo ako rsne master ti sacekas da slave izvrsi do kraja sve sto je radio i to je to. Obavezno upali semi-sinhronu replikaciju (5.5+) gde se transakcija zavrsava kada se na slave posalje data (ne cekas da se izvrsi ali sacekas da se posalje, to ne traje dugo na gbit netu). Dakle na masteru ce biti neznatno sporije transakcije ali imas 100% sigurnost da ako rsne master slave ima svu datu, eventualno ces morati da sacekas slave 5-10min da "sustigne" stanje mastera (obicno je to znacajno brze).
Citat:
bjevta:
- sta ako pukne master u smislu da rikne neki komad hardvera i server ode off-line na neodredjeno vreme? da li ce slave da preuzme njegovu ulogu automatski? sta se radi u ovakvoj situaciji?
nema nista automatski, tebi rsne master, slave ce da izvrti njegov log do kraja i ti imas slave koji ima datu. Kako ces ti sada da prebacis taj slave da bude novi master zavisi od tebe. Ima brdo skripti na netu koje to rade, neke samostalno, neke u okviru hartbeat-a .. sve u svemu mysql trenutno ne nudi automatizovano resenje za failback - ti moras da ga napravis sam. Mi radimo na tome trenutno sa oracle linux timom ali nemam pojma dokle je to stiglo.
Citat:
bjevta:
- sta ako pukne slave? mogu li konekcije da preusmerim na master i da sistem nastavi da radi?
koje konekcije?
Citat:
bjevta:
- sta kad bude trebalo da se radi upgrade aplikacije (baze)? da li upgrade-ujem master, brisem slave data pa startujem slave ispocetka? kakva su tu iskustva?
zavisi sta radis i koje su ti potrebe. Najcesce se
1. zaustavi aplikacija
2. odradi upgrade na masteru
3. napravi bekap mastera
4. taj bekap amstera iskoristi za jumpstart slave-a (rebildujes slave ispocetka)
5. start svega
mada ima milion stvari koje mozes da uradis zavisi od aplikacije, vremena, para, masina ...
Citat:
bjevta:
- da li particionisanjem tabela na aktivne i pasivne podatke mogu da "pomognem" replikaciji?
particionisanje podataka je korisno, sta ti je aktivno i pasivno ne znam
Citat:
bjevta:
sta nisam pitao a treba da znam? kakva su Vasa iskustva?
nisi pitao da li postoje 3rd party resenja :D
zavisi sta ti treba realno ali pogledaj
Percona XtraDB Cluster
Ono sto su pera i ekipa resili i ponudili dzabe a tebi moze da znaci je
- Synchronous replication
- Multi-master replication support
- Parallel replication
- Automatic node provisioning
Tako da mozes da napravis sinhronu replikaciju master master koja radi paralelno i da resis sve svoje probleme :D. Ne znam koliko je taj sistem stabilan, percona na zalost ne moze da priusti tu kolicinu testiranja koju mi mozemo, ali sta znam, da sam na tvom mestu - ja bi probao