Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comparez deux bases de données MySQL

Si vous travaillez avec de petites bases de données, j'ai trouvé mysqldump en cours d'exécution sur les deux bases de données avec le --skip-comments et --skip-extended-insert options pour générer des scripts SQL, puis exécuter diff sur les scripts SQL fonctionne plutôt bien.

En sautant les commentaires, vous évitez les différences sans signification telles que l'heure à laquelle vous avez exécuté la commande mysqldump. En utilisant le --skip-extended-insert commande, vous vous assurez que chaque ligne est insérée avec sa propre instruction d'insertion. Cela élimine la situation où un seul enregistrement nouveau ou modifié peut provoquer une réaction en chaîne dans toutes les instructions d'insertion futures. L'exécution avec ces options produit des vidages plus volumineux sans commentaires, ce n'est donc probablement pas quelque chose que vous voulez faire en production, mais pour le développement, cela devrait convenir. J'ai mis des exemples des commandes que j'utilise ci-dessous :

mysqldump --skip-comments --skip-extended-insert -u root -p dbName1>file1.sql
mysqldump --skip-comments --skip-extended-insert -u root -p dbName2>file2.sql
diff file1.sql file2.sql