Section courante

A propos

Section administrative du site

 En ligne  Utilisation  Services  Tutoriel  Programmation  Annexe  Aide 
Index
Vue par services
Introduction
Ligne de commande Amazon (AWS CLI)
Apprentissage machine
Base de données
CDN
Certificat
Conteneur
Courriel
Déploiement
Entrepôt de données
Équilibreur de charge
Fonctions événementielle
IDE Web
Identité et accès utilisateur
Intelligence artificielle
Machine virtuelle
Mégadonnées
Médical
Mise en réseau et diffusion de contenu
NoSQL
Pare-feu
Productivité des entreprises
Reconnaissance faciale
Serveur de fichiers
Serveur de nom de domaines
Service Web d'API
Surveillance
Traitement du langage naturel
VPC
VPN
Amazon Personalize
Amazon SageMaker
Amazon ElastiCache
RDS
Amazon CloudFront
ACM
AWS Certificate Manager
Amazon Elastic Container Registry
Amazon Elastic Container Service
Amazon Elastic Kubernetes Service
AWS Elastic Beanstalk
SES
AWS CodeBuild
AWS CodeDeploy
AWS CodePipeline
Amazon Redshift
Load Balancer
AWS Lambda
Cloud9
IAM
Amazon Polly
Amazon QuickSight
EC2
Lightsail
Amazon Athena
Amazon EMR
Amazon Managed Streaming for Apache Kafka
Amazon Comprehend Medical
AWS Direct Connect
Amazon DocumentDB
Amazon DynamoDB
Security Groups
WAF
Amazon WorkDocs
Amazon WorkSpaces
Amazon Rekognition
Amazon FSx
Amazon Glacier
S3
Route 53
Amazon API Gateway
AWS AppSync
Amazon CloudWatch
AWS CloudTrail
Amazon Comprehend
Amazon Virtual Private Cloud
AWS VPN
Les premiers pas
Les opérations
Créer un utilisateur ayant uniquement le droit de modifier certaines des entrées de noms de domaines dans Route 53
Comment augmenter la taille d'un disque existant dans AWS
Synchronisation de base de données
AWS SDK for Delphi
AWS SDK for PHP
AWS SDK for .NET
Boto3 (AWS SDK for Python)
AMI Amazon Linux
Référence des codes d'erreurs AWS
Référence des termes (vocabulaire)
Préface
Notes légal
Dictionnaire
Recherche

Synchronisation de base de données

La synchronisation de base de données, soit l'opération consistant à mettre à jour une base de données de style développement avec la base de données du système de production, varie considérablement d'une technologie à l'autre. Toutefois, il n'y a pas de service AWS proprement dédié à cette opération. Vous devrez donc, développer un script à cet effet.

Synchronisation de base de données Aurora DB sous Linux

Pour effectuer le synchronisation d'une base de données Aurora DB d'un serveur de production vers un serveur de développement, vous devez utiliser des commandes Linux en lignes de commandes. Vous devez tout d'abord vous connectez à votre instance EC2 en utilisant une commande SSH ressemblant à ceci sur votre serveur de production :

ssh -i "maclef.pem" ec2-user@ec2-xx-xx-xx-xx.ca-central-1.compute.amazonaws.com

Ensuite, vous tapez la commande suivante afin de déterminer quel est le mot de passe actuellement utiliser par le serveur de production. S'il s'agit d'un WordPress classique, on peut facilement obtenir l'information avec une commande comme ceci :;

grep "DB_PASSWORD" /var/www/html/projet/wp-config.php

S'il s'agit plutôt d'un Symfony 1 de PHP, vous devrez plutôt utiliser la commande suivante :

grep "password" /var/www/html/projet/config/databases.yml

Une fois le mot de passe obtenu, copier-le dans le presse-papier. Déplacer vous dans un répertoire ayant beaucoup d'espace disque de disponible, comme par exemple le dossier «/tmp»  et tapez une commande d'exportation de la base de données Aurora DB :

cd /tmp
mysqldump -p -u monutilisateur prd_projet --host=prd-projet-rds.cxxx1x1xxx1x.ca-central-1.rds.amazonaws.com > export-production-20191228.sql

Il vous demandera un mot de passe, vous collerez celui contenu dans votre presse-papier. Ensuite, vous pouvez télécharger le fichier «export-production-20191228.sql» à l'aide d'un logiciel comme FileZilla ou MobaXTerm ou à l'aide de la commande en ligne commande scp. Maintenant, que vous avez vos donnée de la base de données de production sur votre poste de travail. Vous pouvez maintenant effectuer le même processus mais à l'envers sur le serveur de développement. Ainsi, vous commencez par transférer le fichier export-production-20191228.sql sur le serveur de développement dans un dossier /tmp. Vous vous connectez en SSH sur le serveur de développement :

ssh -i "maclef.pem" ec2-user@ec2-xx-xx-xx-xx.ca-central-1.compute.amazonaws.com

Ensuite, vous tapez la commande suivante afin de déterminer quel est le mot de passe actuellement utiliser par le serveur de production. S'il s'agit d'un WordPress classique, on peut facilement obtenir l'information avec une commande comme ceci :

grep "DB_PASSWORD" /var/www/html/projet/wp-config.php

S'il s'agit plutôt d'un Symfony 1 de PHP, vous devrez plutôt utiliser la commande suivante :

grep "password" /var/www/html/projet/config/databases.yml

Une fois le mot de passe obtenu, copier-le dans le presse-papier. Vous maintenant vous connectez à votre base de données en utilisant la commande suivante 

mysql -u dev_utilisateur -p -h dev-projet-rds.cxxx1x1xxx1x.ca-central-1.rds.amazonaws.com

Vous entrez votre mot de passe contenu dans le presse-papier. Vous êtes maintenant en mode ligne de commande MySQL. Vous sélectionnez d'abord votre base de données destinataire et vous indiquez le fichier MySQL à importer :

  1. use dev_projet;
  2. source /tmp/export-production-20191228.sql

Voir également

Référence des opérations

PARTAGER CETTE PAGE SUR
Dernière mise à jour : Samedi, le 28 décembre 2019