[MySQL] Database Replication

Pagina: 1
Acties:
  • 644 views

Acties:
  • 0 Henk 'm!

  • AmotaX
  • Registratie: Juli 2004
  • Laatst online: 20-07 22:24

AmotaX

Developer

Topicstarter
Hallo,

Ik probeer MySQL Database Replication op te zetten, maar dit gaat niet helemaal zoals verwacht.
Ik heb de handleiding van MySQL gebruikt: http://dev.mysql.com/doc/...en/replication-howto.html

Het betreft een test, dus ik maak gebruik van twee virtual machines (master & slave) met Windows XP Pro en XAMPP.
Nu heb ik het helemaal opgezet, maar als ik iets invoer op de master door middel van SQL-code in phpMyAdmin dan wordt dit niet naar de slave doorgespeeld.
phpMyAdmin geeft wel aan dat replication aan staat (door achter de 2 tabellen een kolom met "Replication" en als waarden een groen vinkje.)

Weet iemand iets wat ik nog kan proberen om het wel te laten werken?

Acties:
  • 0 Henk 'm!

  • blaataaps
  • Registratie: Juli 2001
  • Niet online
Wat heb je geprobeerd, en wat zegt SHOW SLAVE STATUS; ?

Acties:
  • 0 Henk 'm!

  • AmotaX
  • Registratie: Juli 2004
  • Laatst online: 20-07 22:24

AmotaX

Developer

Topicstarter
Op de master geeft SHOW SLAVE STATUS; een lege set terug. En op slave geeft het een te grote tabel terug waardoor het amper leesbaar is.

Maar wat mij ook opviel is dat toen ik SHOW MASTER STATUS; op de master deed, dat de mysql-bin file anders heet dan ik ingevoerd heb bij de slave en ook de position is anders. Hoe kan ik ervoor zorgen dat dit hetzelfde blijft? Want het is niet echt nuttig dat steeds die slave aan zou moeten passen.

Overigens werkt het nog steeds niet als ik dat weer aanpas.

En het valt mij ook op dat ik nergens zoiets heb kunnen aangeven:
MASTER.h_master.table1 --> SLAVE.h_slave.table1

En daarmee bedoel ik dus: SERVER.database.tabel

Acties:
  • 0 Henk 'm!

  • Exhar
  • Registratie: Februari 2007
  • Niet online
SHOW SLAVE STATUS\G;? Dat is wat leesbaarder ;)

Master geeft inderdaad geen output terug, slave wel.

mysql-bin file en de position lopen op/door, dat klopt ;)

Acties:
  • 0 Henk 'm!

Verwijderd

AmotaX schreef op zondag 17 april 2011 @ 17:20:


Maar wat mij ook opviel is dat toen ik SHOW MASTER STATUS; op de master deed, dat de mysql-bin file anders heet dan ik ingevoerd heb bij de slave en ook de position is anders. Hoe kan ik ervoor zorgen dat dit hetzelfde blijft? Want het is niet echt nuttig dat steeds die slave aan zou moeten passen.
Uhhh. Snap je wel waar je mee bezig bent? Snap je wat die binlog is en waarvoor hij wordt gebruikt? Als je dat zou snappen zou je niet zo'n vraag en opmerking maken.

Acties:
  • 0 Henk 'm!

  • AmotaX
  • Registratie: Juli 2004
  • Laatst online: 20-07 22:24

AmotaX

Developer

Topicstarter
Eerlijk gezegd weet ik niet wat die binlog precies doet, ik dacht het bijhouden van de operaties die gedaan zijn.
Maar ik weet wel dat ik op de slave aan moest geven wat voor binlog en position er bij master stond.

SHOW SLAVE STATUS\G; is een stuk beter ;-)
En er staat:
Slave_IO_State: Connecting to master
...
Last_IO_Error: error connecting to master 'replication@192.168.17.130:3306'

Dus blijkbaar kan hij geen verbinding maken.
Dit vind ik wel raar want als ik via slave naar 192.168.17.130 ga, dan kom ik gewoon op de webserver, dus dat werkt.
Ook heb ik een user "replication" op master aangemaakt, die user (met password) heeft alle rechten, waaronder dus ook REPLICATION CLIENT & REPLICATION SLAVE

Acties:
  • 0 Henk 'm!

  • analog_
  • Registratie: Januari 2004
  • Niet online
By default draait mysql enkel op localhost, dit had je geweten als je geen WAMP installer had gebruikt. Gooi my.cnf of my.ini van mysql open en pas de interfaces aan.

Acties:
  • 0 Henk 'm!

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
AmotaX schreef op zondag 17 april 2011 @ 17:38:
Ook heb ik een user "replication" op master aangemaakt, die user (met password) heeft alle rechten, waaronder dus ook REPLICATION CLIENT & REPLICATION SLAVE
Mag die user ook remote inloggen op master? Of mag hij dat enkel van localhost?

Acties:
  • 0 Henk 'm!

  • AmotaX
  • Registratie: Juli 2004
  • Laatst online: 20-07 22:24

AmotaX

Developer

Topicstarter
@Gomez12: Ik heb die user op master alle rechten gegeven, maar ik kan nergens iets vinden over remote inloggen.

@analog_: In de my.ini kan ik niks vinden over 'interfaces'.

Kan iemand vertellen waar ik dan kan instellen dat een server ook bij de mysql van een andere server kan?

Acties:
  • 0 Henk 'm!

  • Manuel
  • Registratie: Maart 2008
  • Laatst online: 06:33
AmotaX schreef op zondag 17 april 2011 @ 20:33:
@Gomez12: Ik heb die user op master alle rechten gegeven, maar ik kan nergens iets vinden over remote inloggen.

@analog_: In de my.ini kan ik niks vinden over 'interfaces'.

Kan iemand vertellen waar ik dan kan instellen dat een server ook bij de mysql van een andere server kan?
Ik denk dat het makkelijkste is dat je MySQL Workbench installeert en dan de server toevoegt om je hierbij te helpen. Dit staat trouwens allemaal in de MySQL handleiding.

MySQL maakt gebruik van bind-address, als je het op 1 specifiek IP-adres wilt hebben draaien kun je:
bind-address = jouw.ip.adres.hier

Heb je trouwens al geprobeerd om vanaf de slave in te loggen op de master? Indien niet probeer eens iets als dit:
mysql -u gebruikersnaam -p -h ip.van.de.master

offtopic:
Waarom staat dit eigenlijk in Programming? Het heeft niets met programming te maken maar eerder met de configuratie van MySQL. :)

Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 07:55

Creepy

Tactical Espionage Splatterer

Het hoort inderdaad niet in PRG, maar eerder in Serversoftware en Windows Servers. Ik ga je topic echter niet verplaatsen, maar sluiten. Gezien de melding is het vrij duidelijk wat er moet gebeuren: je slave heeft geen toegang tot de MySQL server. Je zult dus de master zo moeten instellen dat MySQL gaat luisten op z'n externe IP en dat de slave ook daadwerkelijk de juiste rechten heeft. Hoe dat moet staat prima uitgelegd in de manual of in de (vele) replication tutorials, dus ik denk dat je er wel uit gaat komen ;)

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney

Pagina: 1

Dit topic is gesloten.