Comment déplacer des données de Postgres vers MySQL s'exécutant sur le RDS d'Amazon?
-
08-07-2019 - |
Question
Je dois déplacer une base de données avec un schéma Django de Postgres vers MySQL, qui s'exécute sur le RDF . Je peux générer à nouveau les tables à l'aide de manage.py, mais je cherche toujours un moyen de migrer sur toutes les données de ligne. Est-ce que quelqu'un connaît un moyen propre de le déplacer? Y a-t-il des pièges à surveiller avec le RDF d'Amazon?
La solution
Django possède également les dumpdata et commandes loaddata dans le fichier manage.py. Le processus serait
- syncdb dans MySQL pour préparer les tables
- dumpdata à partir de PostgreSQL
- loaddata de la commande précédente dans la nouvelle instance MySQL
Autres conseils
Si vous sauvegardez votre base de données Postgresql et que vous choisissez la commande "Insérer des commandes". Si vous le souhaitez, vous obtiendrez un fichier texte contenant des instructions SQL qui, en théorie, peuvent être exécutées sur une autre base de données SQL, dans ce cas MySQL. En pratique, cela dépendra des types de base de données que vous utilisez car tous les types de données Postgresql et MySQL ne sont pas directement mappés.
Ce qui me tient à coeur avec le système RDS d’Amazon, c’est l’affirmation selon laquelle il y aura une fenêtre de 4 heures chaque semaine où la base de données devra être supprimée pour les correctifs et la maintenance. La difficulté avec les bases de données relationnelles est de les rendre tolérantes aux pannes avec la réplication et la mise en cluster. Pour le moment, le RDS d'Amazon ne résout aucun de ces problèmes et semble utiliser simplement une instance EC2 pour héberger un serveur MySQL, ce qui est possible depuis longtemps sans RDS.
Personnellement, j’aime la direction prise par RDS et j’attends avec impatience le jour où je pourrai traiter une base de données relationnelle comme une boîte noire sans avoir à vous soucier de la tolérance aux pannes et de l’évolutivité, comme le fait maintenant le produit Amazon SimpleDB.