<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://wiki.blaxeen.com/index.php?action=history&amp;feed=atom&amp;title=Mysql_bascule_master_slave</id>
	<title>Mysql bascule master slave - Historique des versions</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.blaxeen.com/index.php?action=history&amp;feed=atom&amp;title=Mysql_bascule_master_slave"/>
	<link rel="alternate" type="text/html" href="https://wiki.blaxeen.com/index.php?title=Mysql_bascule_master_slave&amp;action=history"/>
	<updated>2026-04-18T13:34:58Z</updated>
	<subtitle>Historique des révisions pour cette page sur le wiki</subtitle>
	<generator>MediaWiki 1.36.1</generator>
	<entry>
		<id>https://wiki.blaxeen.com/index.php?title=Mysql_bascule_master_slave&amp;diff=4405&amp;oldid=prev</id>
		<title>127.0.0.1 : Page créée avec « &lt;pre&gt; &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; contexte &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; la VM sql1.ircem (Master actuellement) est actuellement sur HV2 à SO, pour préparer le future déménagement vers LC (du HV2+FW2)  on... »</title>
		<link rel="alternate" type="text/html" href="https://wiki.blaxeen.com/index.php?title=Mysql_bascule_master_slave&amp;diff=4405&amp;oldid=prev"/>
		<updated>2021-06-15T12:23:21Z</updated>

		<summary type="html">&lt;p&gt;Page créée avec « &amp;lt;pre&amp;gt; &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; contexte &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; la VM sql1.ircem (Master actuellement) est actuellement sur HV2 à SO, pour préparer le future déménagement vers LC (du HV2+FW2)  on... »&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nouvelle page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; contexte &amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;
la VM sql1.ircem (Master actuellement) est actuellement sur HV2 à SO,&lt;br /&gt;
pour préparer le future déménagement vers LC (du HV2+FW2)&lt;br /&gt;
&lt;br /&gt;
on inverse le rôle Master/Slave MySQL entre sql1.ircem (Master actuellement) et sql2.ircem (Slave actuellement) pour réduire le temps d&amp;#039;indisponibilité lors du déplacement et on inverse les ip des eth0&lt;br /&gt;
&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt; contexte &amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt; &lt;br /&gt;
&lt;br /&gt;
Procédure à suivre:&lt;br /&gt;
&lt;br /&gt;
2) Vérification que le slave est bien à jour.&lt;br /&gt;
Se logguer sur le mysql de sql1.ircem, et passer les bases en read only :&lt;br /&gt;
FLUSH TABLES WITH READ LOCK;&lt;br /&gt;
&lt;br /&gt;
Regarder la position du master :&lt;br /&gt;
show master status;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Se logguer sur le mysql de sql2, et vérifier la position du slave :&lt;br /&gt;
show slave status\G;&lt;br /&gt;
&lt;br /&gt;
Si la position du slave est la même que le master (Read_Master_Log_Pos),  le slave est bien à jour, sinon attendre quelques secondes et revérifier.&lt;br /&gt;
&lt;br /&gt;
Quand c&amp;#039;est ok, on arrete alors le service Mysql sur sql1.ircem ET sql2.ircem&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2.1) On va intervertir les ip &amp;quot;mysql&amp;quot; des 2 serveurs, cette ip n&amp;#039;est pas l&amp;#039;ip par laquelle on administre / supervise le serveur&lt;br /&gt;
Sur sql1.ircem :&lt;br /&gt;
ifdown eth0&lt;br /&gt;
&lt;br /&gt;
Sur sql2.ircem&lt;br /&gt;
ifdown eth0&lt;br /&gt;
cp -f /root/eth0.new /etc/sysconfig/network-scripts/ifcfg-eth0&lt;br /&gt;
ifup eth0&lt;br /&gt;
## S assurer que eth0 a bien l ip 10.82.15.136&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sur sql1.ircem&lt;br /&gt;
ifdown eth0&lt;br /&gt;
cp -f /root/eth0.new /etc/sysconfig/network-scripts/ifcfg-eth0&lt;br /&gt;
ifup eth0&lt;br /&gt;
## S assurer que eth0 a bien l ip 10.82.15.137&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2.2) Bascule master / slave &lt;br /&gt;
&lt;br /&gt;
Sur Sql1 :&lt;br /&gt;
cp -rp /var/lib/mysql    /var/lib/mysql.master&lt;br /&gt;
# on supprime tous les fichiers pour ne garder que les bases&lt;br /&gt;
rm -f /var/lib/mysql/*&lt;br /&gt;
# on supprime les binlog&lt;br /&gt;
rm -f /var/log/mariadb/sql*bin*&lt;br /&gt;
# copie du new my.cnf avec les options de slave (l&amp;#039;ancien my.cnf est backupé sur /etc/my.cnf.20210115.master)&lt;br /&gt;
cp /etc/my.cnf.20210115.slave          /etc/my.cnf&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sur Sql2 :&lt;br /&gt;
mv /var/lib/mysql        /var/lib/mysql.slave&lt;br /&gt;
mkdir  /var/lib/mysql&lt;br /&gt;
chown -R mysql:mysql /var/lib/mysql&lt;br /&gt;
# on supprime les binlog&lt;br /&gt;
rm -f /var/log/mysql/sql2*bin*&lt;br /&gt;
# copie du new my.cnf avec les options de master (l&amp;#039;ancien my.cnf est backupé sur /etc/my.cnf.20210115.slave)&lt;br /&gt;
cp /etc/my.cnf.20210115.master       /etc/my.cnf&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Depuis sql1 on va copier les bases vers sql2 lancer la commande :&lt;br /&gt;
scp -rp /var/lib/mysql/* root@10.82.16.134:/var/lib/mysql/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La configuration au niveau du user replicadmin a deja été faite dans la base mysql pour autoriser les connexions depuis les ip 10.82.15.136 &amp;amp; 10.82.15.137&lt;br /&gt;
&lt;br /&gt;
On démarre mysql sur les 2 sql.&lt;br /&gt;
&lt;br /&gt;
Sur SQL2, on vérifie le status du master (la position ne doit pas changer vu que les sites sont en maintenance)&lt;br /&gt;
SHOW MASTER STATUS;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sur SQL1, on definit le status du slave (adapter le MASTER_LOG_FILE &amp;amp; MASTER_LOG_POS à ce qu à retourné le show master status sur sql2 )&lt;br /&gt;
SLAVE STOP;&lt;br /&gt;
CHANGE MASTER TO MASTER_HOST=&amp;#039;10.82.15.136&amp;#039;, MASTER_USER=&amp;#039;replicadmin&amp;#039;, MASTER_PASSWORD=&amp;#039;4a8d13as&amp;#039;, MASTER_LOG_FILE=&amp;#039;XXXXXX&amp;#039;, MASTER_LOG_POS=XXX;&lt;br /&gt;
START SLAVE;&lt;br /&gt;
SHOW SLAVE STATUS\G&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Software]]&lt;/div&gt;</summary>
		<author><name>127.0.0.1</name></author>
	</entry>
</feed>