sábado, 3 de maio de 2014

Neste post, vamos ver como fazer e restaurar backups utilizando os comandos mongoexport e mongoimport

1. Efetuando um Backup com o mongoexport


A seguir um exemplo simples de como realizar um Backup de seu banco de dados utilizando o comando mongoexport

Antes vamos rever algumas opções :
$ mongoexport
Export MongoDB data to CSV, TSV or JSON files.
 
options:
-h [ --host ] arg mongo host to connect to ( <set name>/s1,s2 for
-u [ --username ] arg username
-p [ --password ] arg password
-d [ --db ] arg database to use
-c [ --collection ] arg collection to use (some commands)
-q [ --query ] arg query filter, as a JSON string
-o [ --out ] arg output file; if not specified, stdout is used



1.1 Exporte todos os documentos (todos os campos) no arquivo "domain-bk.json"
$ mongoexport -d webmitta -c domain -o domain-bk.json
connected to: 127.0.0.1
exported 10951 records

1.2 Exporte todos os documentos apenas com campos  domain e worth.
$ mongoexport -d webmitta -c domain -f "domain,worth" -o domain-bk.json
connected to: 127.0.0.1
exported 10951 records

1.3 Exporte todos os documentos com uma query de consulta , neste caso, só documentos com worth > 100000”  serão exportados.
$mongoexport -d webmitta -c domain -f "domain,worth" -q '{worth:{$gt:100000}}' -o domain-bk.json
connected to: 127.0.0.1
exported 10903 records

1.4 Conecte-se ao servidor remoto como mongolab.com, usando nome de usuário e senha.
$ mongoexport -h id.mongolab.com:47307 -d heroku_app -c domain -u username123 -p password123 -o domain-bk.json
connected to: id.mongolab.com:47307
exported 10951 records

Revisando o arquivo exportado
$ ls -lsa
total 2144
0 drwxr-xr-x 5 mongodbwise staff 170 Apr 10 12:00 .
0 drwxr-xr-x+ 50 mongodbwise staff 1700 Apr 5 10:55 ..
2128 -rw-r--r-- 1 mongodbwise staff 1089198 Apr 10 12:15 domain-bk.json

Nota : Todos os documentos serão exportados pelo mongoexport no formato JSON.

  2. Restaurando um Backup com o mongoimport


A seguir um exemplo simples de como realizar um Backup de seu banco de dados utilizando o comando mongoimport.

Reveja algumas das opções de uso comum.
$ mongoimport
connected to: 127.0.0.1
no collection specified!
Import CSV, TSV or JSON data into MongoDB.
 
options:
-h [ --host ] arg mongo host to connect to ( <set name>/s1,s2 for sets)
-u [ --username ] arg username
-p [ --password ] arg password
-d [ --db ] arg database to use
-c [ --collection ] arg collection to use (some commands)
-f [ --fields ] arg comma separated list of field names e.g. -f name,age
--file arg file to import from; if not specified stdin is used
--drop drop collection first
--upsert insert or update objects that already exist

2.1 Importando todos os documentos do arquivo domain-bk.json” para o database.collection chamado "webmitta2.domain2". OBS.: Todos os bancos de dados ou Collections que não existem serão criadas automaticamente.
$ mongoimport -d webmitta2 -c domain2 --file domain-bk.json
connected to: 127.0.0.1
Wed Apr 10 13:26:12 imported 10903 objects

2.2 Importando todos os objetos de documentos, inserindo ou atualizando os dados que já existem (com base no _id)
$ mongoimport -d webmitta2 -c domain2 --file domain-bk.json --upsert
connected to: 127.0.0.1
Wed Apr 10 13:26:12 imported 10903 objects

2.3 Conecte-se ao servidor remoto - mongolab.com, usando nome de usuário e senha, e importe os documentos do arquivo local domain-bk.json dentro do servidor MongoDB remoto.
$ mongoimport -h id.mongolab.com:47307 -d heroku_app -c domain -u username123 -p password123 --file domain-bk.json
connected to: id.mongolab.com:47307
Wed Apr 10 13:26:12 imported 10903 objects



  1. Referencia => MongoDB Official Doc – Importing and Exporting MongoDB Data

0 comentários:

Postar um comentário

Blog Archive

SmarttNet Solution Provider. Tecnologia do Blogger.

Postagens populares

Twitter MongoDBBrazil

Total de visualizações de página