Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

replikacija na dva racunara

[es] :: MySQL :: replikacija na dva racunara

[ Pregleda: 1870 | Odgovora: 11 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mojeKorIme
BiH

Član broj: 59512
Poruke: 350
92.36.245.*



+1 Profil

icon replikacija na dva racunara06.07.2010. u 11:21 - pre 167 meseci
Pozdrav.. na dva racunara na istoj mrezi instalirao sam mySQL 5.1.. sa web sucelja punim na oba racunara u identicnu tabelu (zasebne baze) podatke..tablice su vrlo jednostavne ali zbog nemogucnosti da drzim u isto vrijeme non-stop racunare online nisam ih povezao na jednu bazu.. volio bih napraviri replikaciju da unijeti podaci sa racunara A predje na racunar B i obrnuto.. pokusao sam sa 1000 tutorijala ali nista.. nista mi ne prelazi.. moze li mi neko to objasniti kako da odradim ..

unaprijed hvala
Give me six hours to chop down a tree and I will spend the first four sharpening the axe.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: replikacija na dva racunara06.07.2010. u 14:17 - pre 167 meseci
sve ti pise na http://dev.mysql.com/doc/refman/5.1/en/replication-howto.html


0. ugasis sve aplikacije koje pristupaju bazama, ugasis oba mysql-a
1. odaberes koji ce ti racunar biti master
2. drugi racunar je onda slave
3. setujes master:

u my.cnf stavis u mysqld sekciju:

Code:

log-bin=mysql-bin
server-id=1


4. upalis master, ulogujes se na njega i izvrsis (zameni IPSLAVESERVERA sa pravom ip adresom slave masine):

Code:

RESET MASTER;
CREATE USER 'replikator'@'IPSLAVESERVERA' IDENTIFIED BY 'nekasifra';
GRANT REPLICATION SLAVE ON *.* TO 'replikator'@'IPSLAVESERVERA';


5. bekapujes master

Code:

mysqldump --all-databases --master-data > bekap.db


6. iskopiras tu arhivu na slave
7. dozvoli na masterovom firewall-u da slave moze da mu pridje
8. setujes slave

u my.cnf stavis u mysqld sekciju
Code:

server-id=2


9. upalis slave
10. vratis na slave bekap sa mastera

Code:

mysql --force < bekap.db


11. ulogujes se na slave i startujes replikaciju

Code:

CHANGE MASTER TO
MASTER_HOST='IPMASTERA',
MASTER_USER='replikator',
MASTER_PASSWORD='nekasifra';

START SLAVE;

SHOW SLAVE STATUS;


i to je to


 
Odgovor na temu

mojeKorIme
BiH

Član broj: 59512
Poruke: 350
109.175.55.*



+1 Profil

icon Re: replikacija na dva racunara06.07.2010. u 17:13 - pre 167 meseci
hvala Bogdane kralj si!.. ako mi sada ne proradi proglasicu se nesposobnim:)
Give me six hours to chop down a tree and I will spend the first four sharpening the axe.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: replikacija na dva racunara06.07.2010. u 21:58 - pre 167 meseci
ako nesto ne radi pogledas na slave-u

SHOW MASTER STATUS\G

a na slave

SHOW SLAVE STATUS\G

pa posaljes ovde
 
Odgovor na temu

Shinhan
PHP programmer
Subotica

Član broj: 12327
Poruke: 372
*.static.isp.telekom.rs.

Jabber: shinhan@elitesecurity.org
ICQ: 400847988


+4 Profil

icon Re: replikacija na dva racunara07.07.2010. u 07:32 - pre 167 meseci
Bogdane, nisam siguran da će to raditi.
Koliko sam ja razumeo problem oba kompjutera nisu uvek online i na oba kompjutera se upisuju novi podaci. Ne vidim kako će master/slave pomoći kada je samo slave up a master down.
"Common sense is not so common." - Voltaire
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: replikacija na dva racunara07.07.2010. u 07:39 - pre 167 meseci
Citat:
Shinhan: Bogdane, nisam siguran da će to raditi.
Koliko sam ja razumeo problem oba kompjutera nisu uvek online i na oba kompjutera se upisuju novi podaci. Ne vidim kako će master/slave pomoći kada je samo slave up a master down.


cek cek .. nije rekao da oce master-master ...


ako oce master-master - evo ga uputstvo ovde, samo to nije bas sretno resenje za nekoga ko nema iskustva:
http://onlamp.com/pub/a/onlamp...dvanced-mysql-replication.html


 
Odgovor na temu

mojeKorIme
BiH

Član broj: 59512
Poruke: 350
*.ze2.dlp18.bih.net.ba.



+1 Profil

icon Re: replikacija na dva racunara07.07.2010. u 10:11 - pre 167 meseci
:( izgleda da ce "najjednostavniji" nacin biti da ja napravim programcic koji ce vrsiti replikaciju.. .. koji ce gledati gdje sta fali i onda vrsiti promjene..

Give me six hours to chop down a tree and I will spend the first four sharpening the axe.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: replikacija na dva racunara07.07.2010. u 11:53 - pre 167 meseci
ako hoces cirkularnu replikaciju - isprati taj manual, step po step, pazi kad glupi indijci po tom uputstvu nameste i radi im, ako ti bilo sta nije jasno pitaj, mislim, glupo da ti ja sad prepisujem taj manual, bolje od toga tesko da cu da ti kazem :D ... no - ako nesto nije jasno, pitaj ... generalno je cirkularna replikacija veliko $#@$@#

moj savet ti je da prvo napravis obicnu replikaciju. onda u aplikaciji stavis da radis pisanje po jednom serveru (masteru) a citanje sa oba (i sa mastera i sa slave-a). Mozes da instaliras mysql proxy koji ce sam da ti radi to razdvajanje... i onda mozes da napravis procedure za manuelni failover pa onda i za automatski... sve u svemu, ako su ti to 2 produkciona servera, za pocetak - ne pipaj ih, nego uzmi 2 druge masine (moze i virtuelne - virtual box radi 1/1) i prvo namesti obicnu replikaciju, proveri kako radi, odradi failover etc... onda napravi cirkularnu, proveri kako radi etc ... i tek kada se sa tim igras malo uzmi da siljis production servere ...

ja se naterujem mesecima da napisem tamo kod mene neki post na tu temu (replikacija, drbd, ha, automatski failover ...) sve sa primerima ali iskreno muka mi je od svega toga i ume nekad da mi bude jako tesko da nadjem pravi "nivo" na koji to mogu da spustim posto je meni isti djavo, klaster, drbd, mysql, replikacija ovakva onakva, replikacija izmedju klastera .. sve mi je to vise preko glave .. tako da.. ako budem umoran od drugih stvari onda cu nacukati tako nesto :)
 
Odgovor na temu

mojeKorIme
BiH

Član broj: 59512
Poruke: 350
*.ze2.dlp18.bih.net.ba.



+1 Profil

icon Re: replikacija na dva racunara07.07.2010. u 12:10 - pre 167 meseci
haha dobar si.. vidjecu ove "Indijanske" :) manuale pa cu nesto pokusati odraditi.. fazon je sto ljudi rade na dva skladista a nisu non-stop online.. pa hoce da imaju podatke jedan od drugog ... ja kontam da je dobro rjesenje replikacija.. ali nisam najupuceniji u ove kompikovane..povremene two sided :D.. javim se ako zapnem .. a ako sve prodje ok pohvalicu se
Give me six hours to chop down a tree and I will spend the first four sharpening the axe.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: replikacija na dva racunara07.07.2010. u 12:33 - pre 167 meseci
Citat:
mojeKorIme: fazon je sto ljudi rade na dva skladista a nisu non-stop online.. pa hoce da imaju podatke jedan od drugog ... ja kontam da je dobro rjesenje replikacija..


NIJE!!!

za takav sistem je mnogo bolje da napravis svoj sistem za sinhronizaciju nego da radis sa replikacijom. posebno ne sa cirkularnom replikacijom. Uzmi igraj se sa replikacijom zato sto je to dobro znati, ali za ovaj tvoj problem to nije resenje, cak naprotiv.

ono sto mozes je da iskoristis neke stvari iz replikacije, tipa binarni log etc, da bi odradio sinhronizaciju, ali moraces da napravis svoj app koji to radi

 
Odgovor na temu

mojeKorIme
BiH

Član broj: 59512
Poruke: 350
*.ze2.dlp18.bih.net.ba.



+1 Profil

icon Re: replikacija na dva racunara07.07.2010. u 12:56 - pre 167 meseci
onda dizem ruke od replikacije u ovom slucaju.. ako to TI kazes onda ko sam ja da
se bunim :)..

..BTW.. reci mi .. molim te... gdje je onda pozeljno koristiti replikaciju.. u kojim slucajevima?

LP
Give me six hours to chop down a tree and I will spend the first four sharpening the axe.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: replikacija na dva racunara07.07.2010. u 13:39 - pre 167 meseci
ma pusti ti sta ja kazem, ako ti mislis da ce to da ti radi i imas vremena da se zezas, sto da ne probas ... bolje da sam dodjes do zakljucka zasto ne radi (ili jos bolje, da ga namestis da radi :D )

replikacija na mysql-u je generalno one to many ... iliti jedan master i mnogo slave-ova... to je odlican setup za
- skaliranje (upise radis na jedan server a upite radis sa koliko hoces servera, obzirom da vecina aplikacija ima mnogo vise upita i da su upiti obicno mnogo zahtevniji od upisa ovo je vrlo cesta upotreba replikacije)
- failover, slave koristis za read only a na master tuces upise, ako se nesto desi slave-u ti krenes i sa mastera da radis upite ali ako crkne master ti promovises slave u master i nastavis da ga koristis za upis i citanje a kada popravis master onda on postane novi slave i tako dok onaj master ne crkne, odradis failover na ovaj koji sada promovises u master ...
- bekap (imas jedan slave koji ti sluzi samo za bekap)
...

e sad, master-master replikacija na mysql-u (osim za klaster ali to je potpuno druga prica) nije podrzana per se nego se pravi "na foru". Takav koncept radi "samo u nekim slucajevima" i radi na foru tako sto recimo ako imas 2 servera stavis da ti je inkrement na auto_inc polju 2, prvi krenes od 1 a drugi od dva tako da ce ti svi inserti na master1 masini biti 1 3 5 7 ... a na master2 2 4 6 8 .. tako da "teoretski" one nece da pregaze jedna drugu. Problem je ako ti imas nesto tipa

Code:

insert into `t1` (x) values (10); 
select ...


to ce da ti radi .. tu i tamo select nece da ima "sve" podatke al sta te briga ... ono sto je problem je ako imas

Code:

insert into `t1` (...) select ...


ti sada insertujes neke podatke i to sto insertujes zavisi od nekog select-a sto su ti duze masine "out of sync" to ti se vise razlikuju podaci na njima da bi na kraju replikacija pukla sama po sebi a ti gubio vise vremena na popravljanje replikacije nego na sve ostalo ..

geo replikacija je mnooogo velika za*ija u svakom sistemu... posebno ako treba da bude dvosmerna... to uopste nije jednostavan problem za resiti i obicno ga je lakse resiti u aplikaciji nego na nivou baze
 
Odgovor na temu

[es] :: MySQL :: replikacija na dva racunara

[ Pregleda: 1870 | Odgovora: 11 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.