主要功能:
- 对计算机数据定时自动完成备份打包,并且可限制备份数量以防止过量冗余,并且通过核心控制台,对数据库进行增删查改等操作,来创建查询修改启动关闭任务,每个任务可指定源数据包和目标路径还有备份数量,还可以通过核心控制台进行手动备份
声明:
- 开源协议采用:Apache License2.0
可商用,修改,分发,但必须注明作者来源和修改内容以及协议,侵权必究! - 第一个试行版本,如若发生错误或异常,可发信至此QQ邮箱2676796446@qq.com反馈问题,感谢您的反馈
- 高中生的处女作,欢迎广大用户批评指正
- 该版本以及后续版本都将免费开源,但请保留出处,给我在源码中留个名儿就行,非常感谢!
注意:
若存入数据库的源路径和目标路径有误可能会造成自动备份失败,若路径存在但不是你需要的路径则会存储到该路径,增加寻找的不便,创建任务时请再三确认,若键入路径不存在(键入时就不存在或键入后,人为对路径做了更改导致系统找不到路径)系统会自动跳过此任务直到下一轮备份周期时再备份,请再下一轮备份开始前在数据库进行路径纠正
由于某些未知错误,程序退出发生问题,需要按下Ctrl+C再键入6后回车退出,有时Ctrl+C也会直接退出,总之退出的方法千千万,不影响功能使用
关于文件结构
关于数据库
本数据自动备份控制系统
属于轻量级系统,因此采用sqlite数据库存储备份任务数据初始数据表结构如下:
id | name | old_path | new_path | retain_num | status |
---|---|---|---|---|---|
1 | '八月' | 'None' | 'None' | 2 | '-------------' |
2 | 'Horon_Lee' | 'None' | 'None' | 2 | '-------------' |
3 | '九夏' | 'None' | 'None' | 2 | '-------------' |
测试及特性
经过实测,28GB的文件夹跨盘备份需要11min,同盘备份需要4min,具体速度主要由硬盘读写速度决定
支持所有格式的文件,不存在不兼容问题,因为此备份程序,是将数据的二进制存储码直接塞进压缩包,不存在编码和解码,自然不存在数据类型导致的备份失败情况
经强化试验测试,程序稳定不易崩溃(除非发生我未想到的用户操作失误),死循环不停备份数据,不间断备份,程序依旧稳定。
由于采用并发线程开发,主程序和自动备份程序为不同线程,并且线程间并不存在通信行为,因此不加互斥锁也可互不干扰,线程间不会影响彼此的运行响应速度
功能文件及文件结构
文件可删,仅有一些预处理语句,方便对数据库进行修改,而非必需要在控制台修改 执行自动备份程序 - 数据备份周期固定为一天,可对run.py文件中变量ti修改以更改周期,初始为60×60×24(s)
数据转压缩包然后存入指定路径 - <manage.py>主程序————控制台,通过它来实现对数据库的增删查改,和手动备份
为主程序提过数据库的增删查改等自定义函数,包括:冒泡排序,给新任务分配ID,向数据库注入新任务,数据库任务删除,数据查询,修改数据,关闭全部任务,启动全部任务
修改间隔时间方式:
23 ti = 60*60*24
改为:
23 ti = #填入你想要的数字或算式,单位为秒
开源文件链接
捐赠
感谢大佬捐赠!!!!!!!
后期优化企划
修复内容:
- 修复备份文件数量的bug
更新内容:
- 增加软件启动自检功能,包括所需文件自检,环境自检等
- 图形化操作,制作图形化界面
- 文件结构优化
- 调用关系优化
评论 (0)