Note despre replicarea în mysql

A fost urgent să aveți o copie a două tabele (test_db.wiz_main și test_db.wiz_data) pe al doilea mysql-server. Și că toate schimbările noi de la mesele de master au apărut imediat pe serverul secund. Ca o variantă a soluției, a fost aleasă replicarea.







Pentru a organiza replicarea între două servere MySQL este necesar:
  • Pe serverul principal
1) Activați binalogul dacă acesta nu este deja activat și atribuiți un server-id serverului principal. Pentru aceasta, adăugați și reîncărcați my.cnf:
2) Creați un utilizator cu drepturi:
3) Blocați tabelele necesare pentru timpul de stocare. În timpul blocării, trebuie de asemenea să vă uitați la starea curentă din jurnalul binar






4) Faceți dump tabelele necesare și deblocați blocarea
  • Pe serverul slave
1) Specificați unde se află serverul principal și care ar trebui replicate bazele de date specifice (tabele). Pentru aceasta, adăugați următoarele la my.cnf:
2) Specificați "punctul de plecare" cu care să începeți să replicați datele.
3) Inițiați replicarea

Întrebare: Sunt replicate doar tabelele selectate sau baza de date constă din 2 tabele?
Voi explica de ce această întrebare. Dacă ați citit cu atenție documentația privind replicarea musculară, atunci se spune că în toate tabelele sunt înscrise schimbări în jurnal și deja este verificat pe sclave dacă replicarea acestui tabel este inclusă sau nu, ceea ce încetinește sclavul. Nu uitați că replicarea funcționează în 1 fir. IMHO, atunci când replicați numai câteva tabele de baze de date, este mult mai bine să utilizați BLACKHOLE Storage Engine (mysql 5) pentru acele tabele care nu se replică.

O notă mică, nu uitați de faptul că trebuie să faceți legătura cu sclavul
TABLURI DE MĂSURĂ CU LOC DE ÎNCERCARE; apoi copiați tabletele, executați slave-ul din poziția specificată a expertului și apoi UNLOCK TABLES;







Articole similare

Trimiteți-le prietenilor: