Do not speak Portuguese? Translate this site with Google or Bing Translator
MongoDB exportar e importar um banco de dados

Posted on: February 04, 2021 05:59 PM

Posted by: Renato

Categories: mongodb sql linux

Views: 1466

Opção 1:

mongodump e mongorestore. São duas ferramentas que estão no diretório bin da instalação do MongoDB. Você poderia fazer um script para automatizar o dump de um lado, e restore do outro. Existe um artigo (em inglês) sobre o backup com essas ferramentas aqui. O serviço do banco (mongod) precisa estar ativo nas duas máquinas nesse caso.

Exemplo do mongodump:

  • Linux: mongodump -h localhost --gzip -o /Backups/MongoDB/dados
  • Windows: mongodump /h localhost /gzip /o C:\Backups\MongoDB\dados

O comando acima faz backup de todos os bancos de dados de um servidor MongoDB executando no computador local, na porta padrão (27017). Compacta esse backup e coloca os dados no diretório /Backups/MongoDB/dados. Existem várias opções do comando, vale olhar a documentação. Um simples mongodump já executa o backup de um banco rodando na máquina local, colocando os arquivos em um diretório "dump" dentro do diretório atual.

Exemplos do mongorestore:

  • Linux: mongorestore -h localhost --gzip --dir /Backups/MongoDB/dados
  • Windows: mongorestore /h localhost /gzip /dir C:\Backups\MongoDB\dados

O comando restaura em um servidor executando em localhost, descompactando o resultado (--gzip) presente no diretório /Backups/MongoDB/dados. Estou considerando que você usou os exemplos acima para gerar o backup/dump. Se você usar a opção de gerar o backup em um arquivo, por exemplo, deve usar a opção --archive.

Opção 2

Copiar os arquivos de dados de uma instalação para outra também é uma opção viável. Inclusive é um dos métodos recomendados como backup na documentação do MongoDB.

Não recomendo

Usar o mongoexport e mongoimport pois eles trabalham com saída/entrada de arquivos de texto. Assim você perde informações:

  • Você está convertendo BSON para JSON, o JSON não tem informações tão ricas quanto aos tipos de dados.
  • Os índices que você criou nas collections não são levados no processo. Você precisa recriar eles quando fizer a importação.

5

Share

Donate to Site


About Author

Renato

Developer

Add a Comment
Comments 1 Comments
  • Renato Lucena
    Renato Lucena - há 3 anos
    Outra fonte: https://blog.renatolucena.net/post/mongo-no-docker-com-mongodump-e-mongorestore

Blog Search


Categories

OUTROS (16) Variados (109) PHP (133) Laravel (171) Black Hat (3) front-end (29) linux (114) postgresql (39) Docker (28) rest (5) soap (1) webservice (6) October (1) CMS (2) node (7) backend (13) ubuntu (56) devops (25) nodejs (5) npm (3) nvm (1) git (8) firefox (1) react (7) reactnative (5) collections (1) javascript (7) reactjs (8) yarn (0) adb (1) Solid (2) blade (3) models (1) controllers (0) log (1) html (2) hardware (3) aws (14) Transcribe (2) transcription (1) google (4) ibm (1) nuance (1) PHP Swoole (5) mysql (31) macox (4) flutter (1) symfony (1) cor (1) colors (2) homeOffice (2) jobs (3) imagick (2) ec2 (1) sw (1) websocket (2) markdown (1) ckeditor (1) tecnologia (14) faceapp (1) eloquent (14) query (4) sql (40) ddd (3) nginx (9) apache (4) certbot (1) lets-encrypt (3) debian (12) liquid (1) magento (2) ruby (1) LETSENCRYPT (1) Fibonacci (1) wine (1) transaction (1) pendrive (1) boot (1) usb (1) prf (1) policia (2) federal (1) lucena (1) mongodb (4) paypal (1) payment (1) zend (1) vim (4) ciencia (6) js (1) nosql (1) java (1) JasperReports (1) phpjasper (1) covid19 (1) saude (1) athena (1) cinnamon (1) phpunit (2) binaural (1) mysqli (3) database (42) windows (6) vala (1) json (2) oracle (1) mariadb (4) dev (12) webdev (24) s3 (4) storage (1) kitematic (1) gnome (2) web (2) intel (3) piada (1) cron (2) dba (18) lumen (1) ffmpeg (2) android (2) aplicativo (1) fedora (2) shell (4) bash (3) script (3) lider (1) htm (1) csv (1) dropbox (1) db (3) combustivel (2) haru (1) presenter (1) gasolina (1) MeioAmbiente (1) Grunt (1) biologia (1) programming (22) performance (3) brain (1) smartphones (1) telefonia (1) privacidade (1) opensource (3) microg (1) iode (1) ssh (3) zsh (2) terminal (3) dracula (1) spaceship (1) mac (2) idiomas (1) laptop (2) developer (37) api (5) data (1) matematica (1) seguranca (2) 100DaysOfCode (9) hotfix (1) documentation (1) laravelphp (10) RabbitMQ (3) Elasticsearch (1) redis (2) Raspberry (4) Padrao de design (4) JQuery (1) angularjs (4) Dicas (43) Kubernetes (3) vscode (2) backup (1) angular (3) servers (2) pipelines (1) AppSec (1) DevSecOps (4) rust (1) RustLang (1) Mozilla (1) algoritimo (1) sqlite (1) Passport (2) jwt (5) security (2) translate (1) kube (2) iot (1) politica (2) bolsonaro (1) flow (1) podcast (1) Brasil (1) containers (3) traefik (1) networking (1) host (1) POO (2) microservices (2) bug (1) cqrs (1) arquitetura (3) Architecture (4) sail (3) militar (1) artigo (1) economia (1) forcas armadas (1) ffaa (1) autenticacao (2) autorizacao (2) authentication (4) authorization (3) NoCookies (1) wsl (4) memcached (1) macos (2) unix (2) kali-linux (1) linux-tools (5) apple (1) noticias (2) composer (1) rancher (1) k8s (1) escopos (1) orm (1) jenkins (4) github (5) gitlab (3) queue (1) Passwordless (1) sonarqube (1) phpswoole (1) laraveloctane (1) Swoole (1) Swoole (1) octane (1) Structurizr (1) Diagramas (1) c4 (1) c4-models (1) compactar (1) compression (1) messaging (1) restfull (1) eventdrive (1) services (1) http (1) Monolith (1) microservice (1) historia (1) educacao (1) cavalotroia (1) OOD (0) odd (1) chatgpt (1) openai (3) vicuna (1) llama (1) gpt (1) transformers (1) pytorch (1) tensorflow (1) akitando (1) ia (1) nvidia (1) agi (1) guard (1) multiple_authen (2) rpi (1) auth (1) auth (1) livros (2) ElonMusk (2) Oh My Zsh (1) Manjaro (1) BigLinux (2) ArchLinux (1) Migration (1) Error (1) Monitor (1) Filament (1) LaravelFilament (1) replication (1) phpfpm (1) cache (1) vpn (1) l2tp (1) zorin-os (1) optimization (1) scheduling (1) monitoring (2) linkedin (1) community (1) inteligencia-artificial (2) wsl2 (1) maps (1) API_KEY_GOOGLE_MAPS (1) repmgr (1) altadisponibilidade (1) banco (1) modelagemdedados (1) inteligenciadedados (4) governancadedados (1) bancodedados (2) Observability (1) picpay (1) ecommerce (1) Curisidades (1) Samurai (1) KubeCon (1) GitOps (1) Axios (1) Fetch (1) Deepin (1) vue (4) nuxt (1) PKCE (1) Oauth2 (2) webhook (1) TypeScript (1) tailwind (1) gource (2)

New Articles



Get Latest Updates by Email