mySQL Replication

Globestern

Registered User
Hi

Ich habe heute die Master / Master Replication zwischen 2er mySQL Server gestartet.
Anleitung dazu war eine CT Ausgabe von anfangs Jahr.

Leider erhalte ich im Errorlog immer folgenden Eintrag:

Code:
100726  8:29:52 [Note] Slave I/O thread: connected to master
'slave_user@asdf:3306',replication started in log 'mysql-bin.000005'
at position 283318
100726  8:29:52 [ERROR] Slave SQL: Error 'Duplicate entry '0' for key
'PRIMARY'' on query. Default database: 'asdf. Query: 'INSERT
INTO `search_requests` (`created_at`, `updated_at`, `category_id`,
`keyword`, `request_count`) VALUES('2010-07-26 06:25:21', '2010-07-26
06:25:21', '0', 'adsfadf.', 1)', Error_code: 1062
100726  8:29:52 [Warning] Slave: Field 'id' doesn't have a default
value Error_code: 1364
100726  8:29:52 [Warning] Slave: Duplicate entry '0' for key 'PRIMARY'
Error_code: 1062
100726  8:29:52 [ERROR] Error running query, slave SQL thread aborted.
Fix the problem, and restart the slave SQL thread with "SLAVE START".
We stopped at log 'mysql-bin.000005' position 285781

hier meine beiden my.cnf:

Code:
#replication
server-id = 2
replicate-same-server-id = 0
log-bin=mysql-bin
log-error=mysql-bin.err
binlog_do_db=asdf
auto-increment-increment = 2
auto-increment-offset = 2
master-connect-retry = 60
relay-log = slave-relay.log
relay-log-index = slave-relay-log.index
expire_logs-days = 20

Code:
#replication
server-id = 1
replicate-same-server-id = 0
log-bin=mysql-bin
log-error=mysql-bin.err
binlog_do_db=asdf
auto-increment-increment = 2
auto-increment-offset = 1
master-connect-retry = 60
relay-log = slave-relay.log
relay-log-index = slave-relay-log.index
expire_logs-days = 20

der Status des slaves ist im Grunde ok, wenn ich die skip times hochstelle (z.B. 50000)

Slave_IO_Running: Yes
Slave_SQL_Running: Yes

Allerdings zählt er die Skips dann einfach runter und repliziert schlussendlich nichts.

Der 2. Server kriegts überigens mit, wenn der 1. Server heruntergefahren wir und reconnected den Slave. Von daher scheint die Connection zu funktionieren.

Kann es evtl sein, dass die DB kein korrektes "Layout" hat? Sprich irgendwelche Primary Keys usw falsch gesetzt bzw. gar nciht gesetzt sind?

Mfg
 
100726 8:29:52 [ERROR] Slave SQL: Error 'Duplicate entry '0' for key
'PRIMARY'' on query. Default database: 'asdf. Query: 'INSERT
INTO `search_requests` (`created_at`, `updated_at`, `category_id`,
`keyword`, `request_count`) VALUES('2010-07-26 06:25:21', '2010-07-26
06:25:21', '0', 'adsfadf.', 1)', Error_code: 1062
100726 8:29:52 [Warning] Slave: Field 'id' doesn't have a default
value Error_code: 1364
100726 8:29:52 [Warning] Slave: Duplicate entry '0' for key 'PRIMARY'
Error_code: 1062

Kann es evtl sein, dass die DB kein korrektes "Layout" hat? Sprich irgendwelche Primary Keys usw falsch gesetzt bzw. gar nciht gesetzt sind?
Steht ja da :) Schau dir die Tabelle "search_requests" an und stelle sicher, dass bspw. ID auf "auto_increment" steht und es keine doppelten Einträge gibt.

Kannst ja mal deine Tabellenstruktur der genannten Tabelle posten.
 
Back
Top