MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment mongodump depuis OpenShift et mongorestore localement sur MongoDB 2.4.9 ?

Lisez d'abord la documentation relative à vos versions, sauvegardez, assurez-vous que la solution ci-dessous est pertinente pour votre scénario, etc.

http://docs.mongodb.org/v2.4/reference/ programme/mongodump/
http://docs.mongodb.org/v2. 4/reference/program/mongorestore/

COMMENCER la mise à jour du 20/11/18

Je devais simplement revoir ces étapes, ce qui suit peut être utile à d'autres :

01) Pour afficher toutes les variables d'environnement MongoDB, à partir de l'ordinateur local, exécutez :

oc exec mongodb-XX-XXXXX env 

(tiré des commentaires ici )

02) Pour effectuer le vidage, accédez au terminal du pod dans la console openshift et entrez ceci :

mongodump --host MONGODB_SERVICE_HOST:MONGODB_SERVICE_PORT --username admin --password "MONGODB_ADMIN_PASSWORD"

en remplaçant les noms de variables par les valeurs réelles affichées lors de l'exécution de la commande précédente.

J'ai dû utiliser le nom d'utilisateur admin plutôt que la valeur de la variable d'environnement pour MONGODB_USER .

03) Si vous souhaitez compresser le dossier de vidage, faites-le depuis le terminal du pod dans la console :

tar czf my_dump.tar.gz dump

(tiré des commentaires ici )

04) Pour télécharger le dossier, à partir du terminal PC local, procédez comme suit :

oc rsync mongodb-20-XXXXX:/opt/app-root/src/dump /c/Users/Your-Directory

(extrait de documents officiels et article de blog ici )

FIN de la mise à jour du 20/11/18

Entrée SSH

rhc ssh [app-name]
cd app-root/repo/

Vérifiez quelle version de mongodump vous avez :

mongodump --version
mongodump version 2.4.9

mongodump

La commande ci-dessous videra *TOUTES* les bases de données.

mongodump --host $OPENSHIFT_MONGODB_DB_HOST:$OPENSHIFT_MONGODB_DB_PORT --username $OPENSHIFT_MONGODB_DB_USERNAME --password $OPENSHIFT_MONGODB_DB_PASSWORD  

Dossier de vidage zip

zip -r dump.zip dump

Quitter SSH

exit

Télécharger via SCP

(Remplacez la variable d'environnement ci-dessous par la valeur réelle).

scp [email protected]:~/app-root/repo/dump.zip /var/www/html

Revenez en SSH et supprimez les fichiers de vidage

rhc ssh [app-name]
cd app-root/repo/
rm -r dump 
rm -r dump.zip

En ligne de commande locale, allez dans le répertoire où vous avez téléchargé le fichier zip :

cd /var/www/html

Décompressez le dossier de vidage

unzip dump.zip -d dump

Voyez quelle version de mongorestore vous avez et que tout est compatible :

mongorestore --version
mongorestore version 2.4.9

À ce stade, j'ai supprimé toutes mes bases de données locales * correspondantes * dans RockMongo afin que le processus de restauration les crée à partir de zéro.

mongostore

mongorestore dump

L'hôte et le port par défaut utilisés sont localhost et 27017 .