Créditos Kevin |
Instalação do MongoDB Tools
Importe a public key dos repositórios do MongoDB
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
Será necessário instalar o repositório referente a versão mais atualizada do seu sistema. O respositório do Ubuntu 16.04 também funciona para as versões mais recentes do Debian 8/9.
Ubuntu 12.04
echo "deb [ arch=amd64 ] http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
Ubuntu 14.04
echo "deb [ arch=amd64 ] http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
Ubuntu 16.04
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
Instalação do mongo-tool
sudo apt-get update
sudo apt-get install -y mongodb-org-tools
Ambiente de teste
Para esse exemplo estarei utilizando dois containers Docker servindo o MongoDB. O mongo_production, mapeado na porta 27017 do host será o host de produção, no qual iremos fazer backup das informações e o container mong_restore será o container onde iremos aproveitar para fazer o restore do mesmo.
Container de produção
docker run -d -p 27017:27017 --name mongo_production mongo
Container de restore
docker run -d -p 27016:27017 --name mongo_restore mongo
Adicionando algumas informações para o exemplo:
Vamos fazer o download de um dataset de exemplo que contem algumas informações mockadas de restaurantes. Você pode fazer o download do mesmo diretamente do link raw do Github.
wget https://raw.githubusercontent.com/mongodb/docs-assets/primer-dataset/primer-dataset.json
Importando um dataset com mongoimport
O mongoimport é um utilitário de restore de arquivos JSON exportados de uma base Mongo para dentro de uma collection.
mongoimport --help
Principais opcões
--host hostname do servidor mongo (default: 127.0.0.1)
--port porta onde o serviço do mongo está escutando (default: 27017)
--collection nome da collection onde os registros vão ser importados
--db nome do banco de dados que a collection pertence
--user usuário de autenticação
--pass senha do usuário para autenticação
--file caminho para o arquivo contendo os dados
--drop dropa a collection antiga antes de inserir os novos registros
--verbose verbose mode
--quiet quiet mode
Exemplo:
mongoimport --host 176.45.98.12 --port 27017 --collection restaurants --db stores --file primer-dataset.json -v --drop
Realizando o Backup de uma collection usando mongodump
Para realizar o backup de uma collection, utilizaremos a ferramenta mongodump. O mongodump irá gerar uma pasta, onde irá guardar o nome da collection, os dados em formato BSON e um JSON contendo todas as metadatas da collection que fizemos Backup. A interface da ferramenta é identica ao mongoimport.
mongodump --help
Principais opções
--host hostname do servidor mongo (default: 127.0.0.1)
--port porta onde o serviço do mongo está escutando (default: 27017)
--collection nome da collection onde os registros vão ser importados
--db nome do banco de dados que a collection pertence
--user usuário de autenticação
--pass senha do usuário para autenticação
--out caminho para o backup
--verbose verbose mode
--quiet quiet mode
Vamos realizar o Backup da collection restaurants de dentro da database stores e mandar o mesmo para a pasta chamada backup. Confira o exemplo:
mongodump --host production --collection restaurants --db stores --out backup
Restaurando um Backup com mongorestore
mongorestore --help
As principais opções também são parecidas.
--host hostname do servidor mongo (default: 127.0.0.1)
--port porta onde o serviço do mongo está escutando (default: 27017)
--collection nome da collection onde os registros vão ser importados
--db nome do banco de dados que a collection pertence
--user usuário de autenticação
--pass senha do usuário para autenticação
--verbose verbose mode
--quiet quiet mode
Vamos passar o caminho para a pasta de backup e informar o servidor de Backup no parâmetro --host
mongorestore --host restore --port 27017 --drop backup/
Os arquivo de dump é gerado em formato (Binary JSON), um formato especifico de representação de objetos inicialmente utilizado pelo MongoDB. É possivel realizar a exportação desses dados em formato JSON default, identico ao arquivo que importamos. Para isso, utilizaremos a ferramenta mongoexport.
mu online servers! in addition to main bonus potential and a fantastic game backdrop which makes the sport a number of amusing to play, this WMS-designed on-line online game will furnish you get entry to feasible winnings which make you sense as wealthy!!
ResponderExcluir