mongo-sync

Sync Remote and Local MongoDB Databases 🔥
授权协议 Readme
开发语言 SHELL
所属分类 应用工具、 终端/远程登录
软件类型 开源软件
地区 不详
投 递 者 雷逸仙
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

mongo-sync

Sync Remote and Local MongoDB Databases in Bash. Works with Heroku too!

For all the Rubyists out there, I've converted this in to a Ruby Gem as well.

mongo-sync demo gif

Usage

  • Download / Clone the script

    git clone https://github.com/sheharyarn/mongo-sync.git
    cd mongo-sync
  • Edit config.yml and insert your configuration details

  • Use the script like this:

    ./mongo-sync push [options]		# Push DB to Remote
     ./mongo-sync pull [options]		# Pull DB to Local
  • Options

     -y  # Skip confirmation
     --config alternate-config-file.yml
    

Notes

  • mongo-sync requires mongodump and mongorestore binaries to be installed in your system. If you have mongodb installed, then you probably already have them
  • Pushing/Pulling overwrites the Target DB
  • It's a good idea to keep your config.yml in .gitignore if you're using it inside some other project

TODO

  • Add a --no-overwrite flag+feature that doesn't drop the target db before restoring it, and actually tries to sync it
  • Add a backup command and an --auto-backup feature
  • Add more options for Local DB in config.yml

Contributing

  1. Fork it
  2. Create your feature/fix branch (git checkout -b feature/my-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin feature/my-feature)
  5. Create a new Pull Request

License

Copyright (c) 2015 Sheharyar Naseer

MIT License

Permission is hereby granted, free of charge, to any person obtaininga copy of this software and associated documentation files (the"Software"), to deal in the Software without restriction, includingwithout limitation the rights to use, copy, modify, merge, publish,distribute, sublicense, and/or sell copies of the Software, and topermit persons to whom the Software is furnished to do so, subject tothe following conditions:

The above copyright notice and this permission notice shall beincluded in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OFMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE ANDNONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BELIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTIONOF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTIONWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

  • (一)直接复制data目录(需要停止源和目标的mongo服务) 1.针对目标mongo服务已经存在,并正在运行的(mongo2-->mongo)。 执行步骤: (1).停止源/目标服务器的mongo服务。 mongod --dbpath /usr/local/mongodb/data/db --logpath /usr/local/mongodb/logs/mongodb.log --shutdo

  • # Mongo-Connector 安装及使用文档 ------ > * 工具介绍 > * 安装前准备 > * 安装步骤 > * 命令详解 > * 有可能的坑 > * 其他文档 ------ ###工具介绍 mongo-connector工具创建一个从MongoDB簇到一个或多个目标系统的管道,目标系统包括:Solr,Elasticsearch,或MongoDB簇。 该工具在MongoDB与目标系

  • 我的博文链接:http://www.muyesanren.com/2017/09/14/install-mongo-connector-sync-elasticsearch-mongodb-data/

 相关资料
  • MongoDB README Welcome to MongoDB! Components mongod - The database server. mongos - Sharding router. mongo - The database shell (uses interactive javascript). Utilities install_compass - Installs Mon

  • mongo-hacker 是一个适合黑客使用的 MongoDB 的 Shell 环境。

  • migrate-mongo is a database migration tool for MongoDB running in Node.js Installation $ npm install -g migrate-mongo CLI Usage $ migrate-mongoUsage: migrate-mongo [options] [command] Commands: in

  • Mongo Seeding The ultimate solution for populating your MongoDB database �� Define MongoDB documents in JSON, JavaScript or even TypeScript files. Use JS library, install CLI or run Docker image to im

  • 一个灵活可扩展的 nodejs 的 mongodb 事务处理包,支持出错回滚,事务锁,单文档级锁,ODM 无关。 import mongoTx from 'mongo-tx'import createMongoModel from 'mongo-tx/lib/implements/create-mongo-model'import createMongoLock from 'mongo-tx/li

  • Asyncio Mongo 是 MongoDB 的异步 Python 驱动,基于 Python 的 asyncio。此项目基于 TxMongo。 特性 支持 asyncio (PEP3156) 事件循环 无依赖 连接池