Page 1 of 1

ständig neue binlogs..

Posted: 2007-10-15 04:15
by kolibri
hallo zusammen..

ich habe vor in den nächsten tagen meinen ersten replikations-slave zu starten..

dafür habe ich bereits eine kopie der tabellen auf den slave gelegt das binlogging des masters eingeschaltet und alle vorbereitungen dazu getroffen..

folgendes problem.. bei jedem stop/start oder restart des servers wird ein neues bin-logfile nach folgendem schema angelegt: <host>-bin.00001 <host>-bin.00002 usw..

das problem für mich ist nun.. wenn ich den master stop und starte oder restarte, dann muss ich den slave wieder neu verbinden, dafür vorher beim master einen befehlsblock

Code: Select all

FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;
UNLOCK TABLES;
ausführen, um den offset der daten im binlog herauszufinden, was natürlich dazu führt, daß in dieser (wenn auch kurzen zeit) der server nicht benutzbar ist!

aus diesem grund möchte ich das erstellen von forlaufenden logs vermeiden und den server (wenns möglich ist?) dazu bewegen alles in ein log zu schreiben..

IST das möglich? wenn nein, wie komme ich an die offset-daten von logs mit niedrigeren nummern als dem aktuellen binlog um die banken auf dem slave konsistent zu halten?

ich hoffe daß ich mich nicht allzu kompliziert ausgedrückt habe..

Re: ständig neue binlogs..

Posted: 2007-10-26 06:15
by kolibri
niemand ne idee???? :(

Re: ständig neue binlogs..

Posted: 2007-10-26 07:01
by aubergine
Welches "Offset an Daten"?

Re: ständig neue binlogs..

Posted: 2007-10-26 10:27
by kolibri
aubergine wrote:Welches "Offset an Daten"?
spalte "position" im show master status;

hab ich mich wirklich SO unverständlich ausgedrückt?? :(

Re: ständig neue binlogs..

Posted: 2007-10-26 15:53
by aubergine
Was ich nicht verstehe ist die Sache dass der Slave sich doch die Binlog Position andauernd speichert.

Der Master weiß wiederum durch sein index File welche Binlogs es gibt und ist dementsprechend in der Lage diese Rückwirkend zu versenden, je nachdem wie lange du die Logs vorhälst.

Wo ist da nun das genaue Problem?

Re: ständig neue binlogs..

Posted: 2007-10-26 16:28
by wichtel
Irgenwie scheint der Beitragseröffner das System noch nicht wirklich verstanden zu haben.

Denn, wenn der Master neu gestartet wird, braucht man beim Slave garnichts machen. Denn wenn die Verbindung nicht vorhanden ist, versucht der Slave den Server immer wieder zu erreichen.. Wenn der Master dann wieder da ist, geht automatisch da weiter, wo aufgehört wurde.

Der Slave weiss immer was er schon vom Master bekommen hat und speichert das in einer Datei ab und übermittelt diese Infos an den Server.

Was die bin.logs angeht kannst Du dazu in der my.cnf entsprechende Angaben machen über die Grösse und nach wie vielen Tagen die Daten nicht mehr gebraucht werden, dann werden sie automatisch gelöscht.

Lieben Gruss aus Finnland

Andy alias wichtel

Re: ständig neue binlogs..

Posted: 2007-10-26 20:45
by kolibri
aubergine wrote:Was ich nicht verstehe ist die Sache dass der Slave sich doch die Binlog Position andauernd speichert.

Der Master weiß wiederum durch sein index File welche Binlogs es gibt und ist dementsprechend in der Lage diese Rückwirkend zu versenden, je nachdem wie lange du die Logs vorhälst.

Wo ist da nun das genaue Problem?
daß GENAU das nicht passiert!!!! er nimmt nur das aktuellste binlog, die alten lässt er aussen vor!!!!

Re: ständig neue binlogs..

Posted: 2007-10-26 20:49
by kolibri
wichtel wrote:Irgenwie scheint der Beitragseröffner das System noch nicht wirklich verstanden zu haben.

Denn, wenn der Master neu gestartet wird, braucht man beim Slave garnichts machen. Denn wenn die Verbindung nicht vorhanden ist, versucht der Slave den Server immer wieder zu erreichen.. Wenn der Master dann wieder da ist, geht automatisch da weiter, wo aufgehört wurde.

Der Slave weiss immer was er schon vom Master bekommen hat und speichert das in einer Datei ab und übermittelt diese Infos an den Server.

Was die bin.logs angeht kannst Du dazu in der my.cnf entsprechende Angaben machen über die Grösse und nach wie vielen Tagen die Daten nicht mehr gebraucht werden, dann werden sie automatisch gelöscht.

Lieben Gruss aus Finnland

Andy alias wichtel
tja..
soweit hab ich das system schon sehrwohl verstanden.. wenns denn auch mal funktionieren würde!!!
beim neustart des masters wird ein neues binlog erstellt und dann ist schicken mit datenübertragung zwischen slave und master.. ich gehe ganz stark davon aus, wegen dem neuen binlog.. denn wenn ich eine neue verbindung händisch herstelle (wie oben beschrieben), holt er sich die fehlenden daten die in zwischenzeit gekommen sind..

jedoch ohne mein zutun (wie du so schön gesagt hast, man brauch ja nix tun) passiert GARNIX!!!!!

Re: ständig neue binlogs..

Posted: 2007-10-26 20:53
by Joe User
Wie und Wo hast Du die Replikation genau konfiguriert?

Re: ständig neue binlogs..

Posted: 2007-10-26 21:05
by kolibri
Joe User wrote:Wie und Wo hast Du die Replikation genau konfiguriert?
bin strikt hiernach gegangen...
http://dev.mysql.com/doc/refman/5.1/de/ ... howto.html

Re: ständig neue binlogs..

Posted: 2007-10-26 21:52
by Joe User

Re: ständig neue binlogs..

Posted: 2007-10-26 22:19
by kolibri
nein ich dachte das

Code: Select all

mysql> CHANGE MASTER TO
    -> MASTER_HOST='master_host_name',
    -> MASTER_USER='replication_user_name',
    -> MASTER_PASSWORD='replication_password',
    -> MASTER_LOG_FILE='recorded_log_file_name',
    -> MASTER_LOG_POS=recorded_log_position;
reicht aus.. :(
dann werd ich das mal versuchen und wieder bericht erstatten.. shit.. :(
jetzt ist mir auch klar, warum der sich die daten erst nach erneuter händischer verbindung holt!!!