36 479
modifications
(→Fixing) |
|||
* Utiliser les mêmes versions de MySQL sur eux peut aider.
===
Par défaut, la réplication stoppe en cas d'erreur (provenant du réseau ou d'une requête).
<source lang=bash>
▲In this case, you'll get a trace in the system log (typically <code>/var/log/syslog</code>):
Oct 15 21:11:19 builder mysqld[4266]: 101015 21:11:19 [ERROR] Slave: Error 'Table 'mybase.form'
doesn't exist' on query. Default database: 'mybase'. Query:
'INSERT INTO `form` (`form_id`,`timestamp`,`user_id`) VALUES ('abed',1287172429,0)',
Error_code: 1146
</source>
La meilleure façon et de relancer la réplication entièrement.
On peut aussi tenter de réparer, par exemple faire sauter à MySQL la commande <code>1</code> :
<source lang=sql>
STOP SLAVE;
SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
START SLAVE;
</source>
Attention en définissant ce nombre car il contient toutes les commandes, pas seulement les erreurs.
Une autre façon est d'utiliser les outils Maatkit :
* mk-slave-restart (
* mk-table-checksum (
* mk-table-sync (
▲* mk-slave-restart (to restart replication on slave it there are more errors and <code>SQL_SLAVE_SKIP_COUNTER</code> can't help)
▲* mk-table-checksum (to perform checksumming of tables on master and slave)
▲* mk-table-sync (to sync slave with master based on stats generated by mk-table-checksum)
=== Uninstalling ===
|
modifications