Oštećenje binarnog dnevnika na master serveru Ako je binarni dnevnik oštećen na master serveru, nećemo imati drugog izbora nego pokušati preskočiti oštećenu poziciju.
Oštećenje binarnog dnevnika na master serveru Ako je binarni dnevnik oštećen na master serveru, nećemo imati drugog izbora nego pokušati preskočiti oštećenu poziciju.
Pokretanjem naredbe FLUSH LOGS na master serveru se otvara nova datoteka binarnog dnevnika pa se slave server usmjerava na početak novog binarnog dnevnika, ili se može pronaći završetak regija s greškom.
Najteži dio ovog procesa je odrediti poziciju na master serveru, tako da slave server počinje replicirati s iste logičke točke na kojoj je zaustavljen na starom master serveru.
Konfiguriranje master i slave servera Sljedeći korak je omogućiti osnovne postavke replikacije na master serveru.
Tj., ako se izvrši sljedeće stanje na master serveru:
Na master serveru ćemo vidjeti samo jedan od dva slave servera s konekcijom u bilo kojem trenutku (obično, svi slave serveri imaju konekciju i repliciraju cjelo vrijeme).
Nema sigurnog načina za korištenje temporalnih tablica na master serveru s replikacijom baziranom na stanjima.
Za provjeru je li datoteka binarnog dnevnika kreirana na master serveru pokreće se naredba SHOW MASTER STATUS; i tada se vidi ime datoteke koju smo specificirali.
Problem u tome je što administrator koristi GRANT za davanje nekih prava korisniku za pisanje na master serveru, a ta prava su tada raspoloživa i tamo gdje ne bi trebala biti (npr. na slave serveru koji je replicirao prava).
Prema tome potrebno je kreirati korisnički račun na master serveru i dati mu odgovarajuće privilegije, tako se U/I dretva može spojiti kao korisnik i čitati iz binarnog dnevnika master servera.
II) Opcijski zaustaviti sve aktivnosti zapisivanja na master serveru s FLUSH TABLES WITH READ LOCK.
Od ove točke nadalje, trebalo bi zabraniti sve zapise koji će se kasnije replicirati na master serveru, jer jednom kada prestane biti master server, podaci će biti izgubljeni.
MySQL može replicirati neke promijene efikasnije korištenjem replikacije bazirane na redovima, zato jer slave server ne mora ponovo izvršavati upite koji su mijenjali podatke na master serveru.
Ponekad je teško dobiti konzistentan rezultat sa čitanjem na slave serveru i zapisivanjem na master serveru.
Prvo se izvodi sljedeći upit na master serveru:
Na primjer, pretpostavimo bazu podataka na slave serveru koja nije kreirana na master serveru i tada iz nekog razloga zamijenimo uloge master i slave servera.
Ipak, u praksi replikacija bazirana na stanjima nije jednostavna kako se to čini, zato jer mnoge promjene na master serveru mogu ovisiti o faktorima koji su iza samog teksta upita.
Na primjer, stanja će se izvršavati u različitim vremenima na slave i master serveru.
Replikacije bazirane na stanjima rade sa spremanjem upita koji mijenjanju podatke na master serveru.
Ovisnost o nerepliciranim podacima Ako imamo baze podataka ili tablice na master serveru koje ne postoje na slave serveru, vrlo je jednostavno slučajno srušiti replikaciju.
Pretpostavimo da postoji baza podataka na master serveru koja ne postoji na slave serveru.
Ako se dogodi bilo koja obnova podataka na master serveru replikacija će se srušiti kad će slave server pokušati replicirati.
Sa zaključavanjem se stanja zapisuju serijski na master serveru, što odgovara načinu kako će ih slave server izvršiti.
Ako se izvršavaju sljedeće naredbe na master serveru, podaci slave servera će postati drugačiji od mastera servera:
Ova opcija se koristi samo na master serveru i na slave serverima koji djeluju kao master.
Cijena toga je što je potrebno dodatno vrijeme za kompresiju na master serveru i dekompresiju na slave serveru.
V) Izvrši se STOP SLAVE; naredba na novom master serveru.
X) U MySQL ¬ u 5.1 i novijim verzijama, aktiviranje događaja na novom master serveru ako je potrebno.
I) Zaustaviti sve zapise na trenutnom master serveru.
Korištenje slave servera kao master servera U replikaciji gdje slave server nema uključenu opciju log_slave_updates, promjena na master serveru uzrokuje događaj koji se zapisuje u vlastiti binarni dnevnik.
Jezikoslovac je web odrednica na kojoj ćemo pokušati u skorije vrijeme objediniti sve varijante i baze koje su trenutno dostupne za hrvatski jezik, kao i što veći broj primjera za iste. Pratite nas i šaljite prijedloge, kako bismo postali centralno mjesto razmjene znanja.
Srdačan pozdrav!
All Rights Reserved © Jezikoslovac.com