一个python命令行工具,它简化了mongodb到amazon s3的备份(mongodump/mongorestore)。

mo2s3的Python项目详细描述


一个python 命令行工具,它将mongodb备份(mongodump/mongorestore)简化为amazon s3

每个命令都会显示stdout/stderr,因此如果出现问题,您可以立即看到它。

您可以自己下载和还原生成的备份,而无需mo2s3(只需下载、untar和mongorestore)。

要求

它使用argparse来解析参数,mongodump/mongorestore/tardemissionboto一起上载/下载到s3。

  • Envoy面向人类的python子进程
  • Boto与aws s3交互
  • Argparse用于分析命令行参数

安装

$ pip install mo2s3

您可以使用mo2s3配置您的aws/mongodb凭据:

$ mo2s3 configure

您还可以编辑~/.mo2s3.cfg

用法

基本用法,mo2s3-h表示帮助。

列出bucket文件

$ mo2s3 list

执行备份

$ mo2s3 backup

$ mo2s3 backup –db mydb

恢复

$ mo2s3 restore –filename mongodump_20120610235933.tgz

$ mo2s3 restore –host anotherhost.com:27017 –db mydb –filename mongodump_mydb_20120611150815.tgz

删除备份

$ mo2s3 delete –filename mongodump_20120610235933.tgz

删除所有备份

$ mo2s3 drop

工作原理

以下是如何执行备份

  1. 在当前目录下运行mongodump
  2. 用tar创建转储的tgz
  3. 用boto上传到s3
  4. 删除所有生成的文件

以及还原

  1. 从S3下载存档文件
  2. 取消对当前目录的还原
  3. Mongorestore the dump
  4. 删除所有下载的文件

许可证(MIT)

版权所有(c)2012 Thomas Sileo

特此免费授予获得本软件副本和相关文档文件(以下简称“软件”)的任何人使用本软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再授权和/或出售本软件副本的权利,并在符合以下条件的情况下,允许向其提供软件的人员这样做:

上述版权声明和本许可声明应包含在软件的所有副本或实质性部分中。

<软件>提供“原样”,无任何担保,明示或默示,包括但不限于适销性、适合特定用途和不侵权的保证。在任何情况下,作者或版权持有人均不对任何索赔、损害或其他责任负责,无论是在合同诉讼、侵权诉讼或其他诉讼中,由软件或软件的使用或其他交易引起的、由软件引起的或与之相关的。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
返回数组无效的java方法   异步Java CompletableFuture获取其请求   java是否可以像RDBMS那样使用视图?   java如何在屏幕上只运行一个片段?   java无法从Vertex jdbc查询中获取结果   java从jtable获取对象的正确方法   java Spring 3数据设备替代方案   Java BigDecimal:四舍五入到客户首选的数字和增量   JAVA主窗口没有出现,我必须左键单击主窗口。java并单击run查看它   Eclipse RCP中的java进程自定义设备事件   JavaEclipse一次又一次地构建代码(没有任何更改)?   java如何实现对象合并