文件系统和数据库备份构建方法。

praekelt.recipe.backup的Python项目详细描述


praekelt.recipe.backup

文件系统和数据库备份构建方法。

创建bin/脚本,使用该脚本可以轻松创建任何路径和/或数据库的备份。使用rsync创建增量完整备份,请参见:Do-It-Yourself Backup System Using Rsync

注意:此配方正在积极开发中,尚未在生产环境中进行全面测试。风险自负。

使用量

buildout.cfg中添加一个部分,如下所示:

[buildout]
parts = backup

[backup]
recipe = praekelt.recipe.backup
prefix = foobar
local_storage_path = /var/backups

运行构建将在bin/目录中添加与备份部分同名的备份脚本。在这种情况下bin/backup。生成的脚本将在本地的/var/backups中创建以字符串foobar为前缀的构建路径的时间戳备份。

选项

前缀
备份目录名的前缀字符串。必需。
源路径
递归备份的路径。默认为构建目录。
数据库引擎
要备份的数据库类型。支持的选项:mysql或postgres。
数据库名称
要备份的数据库的名称。
数据库用户名
要备份的数据库的用户名。
数据库密码
要备份的数据库的密码。
本地计数
要保留在本地的备份数。创建新备份时,旧备份将被删除。默认为3。
本地存储路径
存储备份的本地路径。请确保运行备份脚本的用户对此路径具有适当的权限。必需。
远程主机
要在其上镜像本地备份的远程主机的主机名。
远程存储路径
存储备份的远程路径。确保运行备份脚本的用户对此路径具有适当的权限(通过rsync)。

注意:rsync功能仅限于基于密钥的身份验证。确保为无密码远程身份验证正确设置密钥。

完整示例

以下示例演示了所有可用选项:

[buildout]
parts = backup

[backup]
recipe = praekelt.recipe.backup
prefix = foobar
local_count = 2
local_storage_path = /var/backups
source_path = /var/foobar

remote_host = www.my-backup-server.com
remote_storage_path = /var/backups/foobar

database_engine = postgres
database_name = foobar_db
database_username = db_username
database_password = db_password

生成的脚本将在本地的/var/backups中创建以字符串foobar为前缀的带时间戳的备份文件夹。备份将包含在/var/foobar中找到的所有文件以及名为foobar_db的postgres数据库的数据库转储。每个创建的备份的副本将通过rsync发送到www.my-backup-server.com,并存储在/var/backups/foobar路径中。只有最新的两个备份将在本地保留。旧备份将自动删除。

更改日志

0.0.3

  1. 完成重构以使用rsync。

0.0.2

  1. 取消引用符号链接。

0.0.1

  1. 初始版本

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

推荐PyPI第三方库


热门话题
java是一种计算数组中某种元素数量的有效方法   java在查找StripesResources时遇到问题。类路径中的属性   java声音池“AudioFlinger无法创建曲目,状态:12”   java Oracle:Unique约束违反了异常,但我的数据实际上并没有违反它   如何在Java中找出两个日期之间的天数差异   安卓在Java中将方法作为参数传递给另一个方法   java如何使用私钥对字符串进行签名   java如何在使用ByteBuddy实现OpenTracing时避免NoClassDefFoundError   java getText()。toString()常量和资源类型不匹配   java Log4j是DailRollingFileAppender和RollingFileAppender的组合   我在Java中向Jasper报表的子报表添加数据源时遇到问题   java stdrandom shuffle方法的工作原理   java将歌曲从文件夹显示到jlist   Java/抽象类   Java图形:复合   Java列表<int[]>未正确填充