MYSQL
De TwisterWiki
Réaliser des dumps
mysqldump --extended-insert=FALSE --add-drop-table --user=$USER --password=$PASS $DATABASE > dump.sql mysqldump --extended-insert=FALSE --add-drop-table --no-data --user=$USER --password=$PASS $DATABASE > dump_schema.sql
Basculer un slave en master et le master en slave
- faire passer le master en "read only"
mysql -u root -p mysql> use DATABASE; mysql> flush tables with read lock;
- stopper le slave
mysql -u root -p mysql> stop SLAVE;
- noter la position du serveur en slave
mysql -u root -p mysql> show master status\G
- sur le master (passage en slave)
mysql> CHANGE MASTER TO MASTER_HOST=, MASTER_USER='replic', MASTER_PASSWORD='PASSWORD', MASTER_PORT=3306 ,MASTER_LOG_FILE='FILE', MASTER_LOG_POS=POS;
- repasser le slave en "read write"
mysql> use DATABASE; mysql> unlock tables;
- Une fois toute ces opération réalisée le master est devenu le slave
Il reste à supprimer le fichier /var/lib/mysql/master.info
mysql -u root -p mysql> stop SLAVE;
rm /var/lib/mysql/master.info
mysql -u root -p mysql> start SLAVE;
Documentation sur MySQL
Identifier les tables en innodb
use information_schema SELECT CONCAT(`TABLE_SCHEMA`,".",`TABLE_NAME`) FROM TABLES WHERE ENGINE = "InnoDB";