加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 我可以使用bazaar提交一个大文件,还是有更好的方法来

发布时间:2020-12-20 13:25:03 所属栏目:Python 来源:网络整理
导读:Bazaar根据可用的虚拟内存限制它可以提交的文件大小(根据 open bug). 我想在版本控制下放一个数据库(作为mysqldump文本文件).数据库是3 GB,我正在使用64GB内存的服务器.我不明白为什么这会是一个问题.当我尝试提交时,我收到错误中报告的错误: bzr: ERROR: e
Bazaar根据可用的虚拟内存限制它可以提交的文件大小(根据 open bug).

我想在版本控制下放一个数据库(作为mysqldump文本文件).数据库是3 GB,我正在使用64GB内存的服务器.我不明白为什么这会是一个问题.当我尝试提交时,我收到错误中报告的错误:

bzr: ERROR: exceptions.OverflowError: requested number of bytes is more than a Python string can hold

有没有办法在bazaar版本控制下获得此文件?

我对bazaar的偏好是我熟悉它,但我计划将转储自动化并作为cron作业签入,因此任何合适的版本控制系统都可以.

到目前为止,我提出了两个选项,直到出现更好的解决方案.目前,我保留每周转储备份的副本,此时存储不是问题.否则,我可以保留第一个转储,区分原始版本和新版本的转储,以及版本控制.这将记录更改,但不可能返回到先前的状态.我对此并不满意,除非有一种直接的方法可以恢复.

mysqldump mydb > mydb_base.sql
touch mydb_diff
bzr add mydb_diff
bzr commit -m 'first commit'

然后在cron脚本中

mysqldump mydb > mydb.sql
diff mydb_base.sql mydb.sql > mydb_diff
bzr commit -m "`date +%Y.%m.%d-%H.%M` mydb diff" mydb_diff

解决方法

虽然我喜欢Bazaar,但我不建议您将它用于此目的,除非您确实需要无限期地保留每个版本的数据.如果您只需要固定数量的过去版本(例如10)或仅需要一段固定时间(例如2年),那么我建议您使用像 rdiff-backup这样的增量备份工具.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读