MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Как да правите mongodump от OpenShift и mongorestore локално на MongoDB 2.4.9?

Първо прочетете документацията, свързана с вашите версии, архивирайте, уверете се, че решението по-долу е подходящо за вашия сценарий и т.н.

http://docs.mongodb.org/v2.4/reference/ програма/mongodump/
http://docs.mongodb.org/v2. 4/reference/program/mongorestore/

ЗАПОЧНЕТЕ актуализация на 20/11/18

Току-що трябваше да прегледам отново тези стъпки, следното може да е полезно за други:

01) За да видите всички променливи на средата на MongoDB, изпълнете от локален компютър:

oc exec mongodb-XX-XXXXX env 

(събрани от коментари тук )

02) За да извършите дъмпа, отидете на терминала на pod в конзолата на openshift и въведете това:

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

замяна на имената на променливите с действителните стойности, показани от изпълнението на предишната команда.

Трябваше да използвам потребителското име admin вместо стойността на променливата на средата за MONGODB_USER .

03) Ако искате да компресирате папката за дъмп, направете това от pod terminal в конзолата:

tar czf my_dump.tar.gz dump

(събрани от коментари тук )

04) За да изтеглите папката от терминал на локален компютър, направете следното:

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

(взето от официални документи и публикация в блог тук )

Край на 20/11/18 актуализация

SSH In

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

Проверете каква версия на mongodump имате:

mongodump --version
mongodump version 2.4.9

mongodump

Командата по-долу ще изхвърли *ВСИЧКИ* бази данни.

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

Папка за изхвърляне на Zip

zip -r dump.zip dump

Излезте от SSH

exit

Изтегляне чрез SCP

(Заменете променливата на средата по-долу с действителната стойност).

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

SSH обратно и изтриване на дъмп файлове

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

В локалния команден ред отидете в директорията, където сте изтеглили zip файла:

cd /var/www/html

Разархивирайте папката за изхвърляне

unzip dump.zip -d dump

Вижте каква версия на mongorestore имате и че всичко е съвместимо:

mongorestore --version
mongorestore version 2.4.9

На този етап изтрих всички мои локални *съответстващи* бази данни в RockMongo, така че процесът на възстановяване да ги създаде от нулата.

mongorestore

mongorestore dump

Използваният хост и порт по подразбиране е localhost и 27017 .




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. как да създадете динамични ключове на документи в mongodb

  2. MongoDB не може да анализира заявка (2dsphere):две условия

  3. Необходимо е да се направи .toArray(), за да се получи изход от mongodb .find() на име на ключ, а не на стойност

  4. заявка, връщаща броя на елементите във вградената колекция на mongodb

  5. Форматирайте датата в изхода на заявката на mongodb в shell