« DBMS/MySQL/ResetSlave » : différence entre les versions

De TartareFR
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Ligne 53 : Ligne 53 :
</noinclude>
</noinclude>
<includeonly>
<includeonly>
* Arrêt de la réplication<syntaxhighlight lang="sql">STOP SLAVE;</syntaxhighlight>
* Arrêt de la réplication et remise à zéro de la réplication<syntaxhighlight lang="sql">STOP SLAVE;RESET SLAVE;</syntaxhighlight>
* Reset de l'esclave<syntaxhighlight lang="sql">RESET SLAVE;</syntaxhighlight>
* Suppression et création de la base<syntaxhighlight lang="sql">DROP DATABASE;CREATE DATABASE</syntaxhighlight>
* Suppression de la base<syntaxhighlight lang="sql">DROP DATABASE</syntaxhighlight>
* Création de la base<syntaxhighlight lang="sql">CREATE DATABASE</syntaxhighlight>
* Import des dumps<syntaxhighlight lang="bash">mysql <base> < /tmp/<base>.sql</syntaxhighlight>
* Import des dumps<syntaxhighlight lang="bash">mysql <base> < /tmp/<base>.sql</syntaxhighlight>
* Recalage de la réplication<syntaxhighlight lang="sql">CHANGE MASTER TO MASTER_HOST='<master host>',MASTER_USER='<user>',MASTER_PASSWORD='***',</syntaxhighlight><syntaxhighlight lang="sql">MASTER_LOG_FILE='mysql-bin.000001',MASTER_LOG_POS=106;</syntaxhighlight>
* Recalage de la réplication<syntaxhighlight lang="sql">CHANGE MASTER TO MASTER_HOST='<master host>',MASTER_USER='<user>',MASTER_PASSWORD='***',</syntaxhighlight><syntaxhighlight lang="sql">MASTER_LOG_FILE='mysql-bin.000001',MASTER_LOG_POS=106;</syntaxhighlight>

Version du 10 avril 2014 à 10:07

Arrêt et reset de la réplication

Arrêt de la réplication

STOP SLAVE;
Query OK, 0 rows affected, 1 warning (0.00 sec)

Reset de l'esclave

RESET SLAVE;
Query OK, 0 rows affected (0.01 sec)

Import des dumps

Suppression et création des bases

for base in BASE_B2PWEB_VITRINE BASE_BDF BASE_DEBUG BASE_STATISTIQUES BASE_TRAITEMENT CITIES session
do
  echo $base
  mysql -e "DROP DATABASE $base"
done

Import des dumps

for base in BASE_B2PWEB_VITRINE BASE_BDF BASE_DEBUG BASE_STATISTIQUES BASE_TRAITEMENT CITIES \
session
do
  echo $base
  mysql $base < /tmp/$base.sql
done

Remise en fonction de la réplication

Recalage de la réplication

CHANGE MASTER TO MASTER_HOST='IP_DU_MAITRE', MASTER_USER='myslave', MASTER_PASSWORD='bre2005bis', 
MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=106;

Redémarrage de la réplication

START SLAVE;

Et on vérifie la réplication

SHOW SLAVE STATUS \G


Important.png
Skip duplicate entries
Si le dump a été pris à chaud, il peut y avoir des duplicate entries. Il est alors nécessaire de lancer le deamon <app>mk-slave-restart</app> afin de ne pas les intégrer automatiquement.
Le daemon peut s'appeler <app>pt-slave-restart</app> si le dépôt percona est en place