La documentation AWS contient ceci page qui parle d'importation et d'exportation de données à partir du serveur MySQL, mais il s'agit principalement d'importation. La seule chose que je vois dans leur documentation est un moyen d’exporter des données 5.6 à l’aide de la réplication, qui est documentée ici . Je me demandais s'il existait un moyen plus simple d'exporter des données à l'aide de mysqldump et de le charger dans une base de données locale. La base de données que je souhaite exporter n’est pas énorme, elle peut atteindre 1 Go. La taille n’est donc pas un problème.
Sûr.
Effectuez le vidage du serveur RDS distant:
mysqldump -h rds.Host.name -u remote_user_name -p remote_db > dump.sql
Lorsque vous êtes invité à entrer un mot de passe, indiquez le mot de passe pour l'utilisateur = nom_utilisateur_distant (serveur distant).
Téléchargez-le sur votre instance mySql locale:
mysql -u local_user_name -p local_db < dump.sql
Aussi, si vous possédez un ec2
serveur dans la même région, je suggère de faire un cliché. Compressez le fichier puis scp
le sur votre ordinateur local. En règle générale, la version compressée du fichier est beaucoup plus petite et vous pouvez le transférer plus rapidement.
Pour exporter une base de données depuis RDS
mysqldump -h rds.Host.name -u nom_utilisateur_distant -p remote_db> remote_db.sql
Lorsque vous êtes invité à entrer un mot de passe, indiquez le mot de passe.
Pour importer une base de données sur RDS
mysql -h rds.Host.name -u nom_utilisateur_distant -p remote_db <remote_db.sql
Lorsque vous êtes invité à entrer un mot de passe, indiquez le mot de passe.
Le meilleur moyen d’exporter des données à partir de RDS est de créer une nouvelle instance EC2 pour se connecter et vider mysql.
Installer Docker
Sudo yum update -y
Sudo Amazon-linux-extras installe le menu fixe
Amazon Linux.
Sudo yum install docker
Démarrez le service Docker.
Début du docker de service Sudo
Ajoutez l'utilisateur ec2 au groupe de menus pour que vous puissiez exécuter les commandes de Docker sans utiliser Sudo.
Sudo usermod -a -G docker ec2-user
Déconnectez-vous et reconnectez-vous pour récupérer les nouvelles autorisations du groupe de menus fixes. Pour ce faire, fermez la fenêtre de votre terminal SSH actuelle et reconnectez-vous à votre instance dans une nouvelle. Votre nouvelle session SSH disposera des autorisations appropriées pour le groupe de menus fixes.
info docker
docker run -it --network some-network --rm mysql mysql -h some-mysql -u exemple-utilisateur -p
mysqldump -h Host -u nom_utilisation -P 3306 -p --databases nom_base | gzip> nom_base.gz
docker cp conteneur_id:/home/home/ec2-user/sql_backup
Une autre option très simple consiste à utiliser MySql Workbench. Dans la barre d'outils, sélectionnez "Base de données" et "Exportation de données". Sélectionnez les bonnes options, le fichier cible ... et vous avez terminé! Facile le fait!