Repository | License | Star | CreatedAt | UpdatedAt | Description |
---|---|---|---|---|---|
jeessy2/backup-x | MIT | 284 | 2021-11-13 | 2023-12-15 | 带Web界面的数据库/文件备份增强工具 |
noovertime7/gin-mysqlbak | MIT | 38 | 2022-06-21 | 2023-02-06 | 一款分布式高性能的备份系统,支持 MySQL、ElasticSearch 备份,多集群任务统一,数据集中存储 |
gobackup/gobackup | MIT | 1284 | 2017-09-06 | 2024-03-13 | 一款专为应用服务器设计的备份工具,用于定期将您的数据库、文件备份到云存储 |
Hellager/mission-backup | Apache-2.0 | 109 | 2021-10-28 | 2024-03-22 | 简单好用的备份软件 |
restic/restic | BSD-2-Clause | 23420 | 2014-04-27 | 2024-03-27 | Restic 是一款快速、高效且安全的备份程序。它支持多系统。 |
jeessy2/backup-x:
带Web界面的数据库/文件备份增强工具。原理:执行自定义shell命令输出文件,增强备份功能。同时支持: 文件、mysql、postgres
- 支持自定义命令
- 支持执行shell输出的文件备份,原理上支持各种数据库/文件备份
- 支持备份周期设置,几分钟到一年的备份周期也可以
- 支持多个项目备份,最多16个
- 支持备份后的文件另存到对象存储中 (在也不怕删库跑路了)
- 可设置备份文件最大保存天数
- webhook通知
- 支持加密关键信息(v1.3.0+)
gobackup:
GoBackup 是一个类似 backup/backup 的一站式备份工具,为中小型服务器/个人服务器而设计,配合 Crontab 以实现定时备份的目的。
使用 GoBackup 你可以通过一个简单的配置文件,一次(执行一个命令)将服务器上重要的(数据库、配置文件)东西导出、打包压缩,并备份到指定目的地(如:本地路径、FTP、云存储...)。
功能特点
-
一键式自动化备份,简化繁琐备份工作。
-
简单无依赖安装,一个 bin + 一个配置文件,一次性部署,持续零维护备份。
-
支持多种数据库源。
-
支持多种打包存储格式。
-
支持普通文件、文件夹打包备份。
-
良好的可扩展性,未来支持丰富的数据源、存储方式等等。
配置
models:
my_backup:
schedule:
cron: "10 1 * * *"
storages:
local:
type: local
path: /data/backups
databases:
postgresql:
type: postgresql
host: 192.168.1.1
port: 5866
database: test
username: highgo
password: ******
执行备份
Restic
Restic 是一款 GO 语言开发的开源免费且快速、高效和安全的跨平台备份工具。Restic 使用加密技术来保证你的数据安全性和完整性,可以将本地数据加密后传输到指定的存储。Restic 同样支持增量备份,可随时备份和恢复备份。Restic 支持大多数主流操作系统,比如:Linux、macOS、Windows 以及一些较小众的操作系统 FreeBSD 和 OpenBSD 等。
Restic优势
Restic 每次备份都会生成一个快照,记录当前时间点的文件结构,可以找回特定时间点的文件。通常可以实现在不清理快照时同一个文件的版本记录。
Restic 配置信息直接写在仓库,只要有仓库密码,在任何安装了Restic的计算机上都可以操作仓库。
Restic 面向的是文件备份和加密,文件先加密再传输备份,而且是增量备份,即每次只备份变化的部分。
Restic 可以备份数据到不同的类型的数据仓库如本地存储、SFTP、Minio等。
Restic 支持多种操作系统。
Restic 备份与恢复操作相对简单。
Restic 可实现备份验证,因此restic使您可以轻松验证所有数据是否可以恢复。
Restic 可实现备份数据加密,假设存储备份数据的位置不是受信任的环境(例如,系统管理员等其他人能够访问您的备份的共享空间)。
Restic 备份时可实现重复文件的去重以达到节省备份空间的目的
设置环境变量 RESTIC_PASSWORD
$ export RESTIC_PASSWORD=123456
$ restic -r s3:http://192.168.10.254:9000/restic snapshots
通过选项或环境变量使用密码指定文件的路径--password-file,RESTIC_PASSWORD_FILE
#创建密码文件
$ cat pass
123456
#使用参数
$ restic -r s3:http://192.168.10.254:9000/restic snapshots --password-file pass
#使用变量
$ export RESTIC_PASSWORD_FILE=/root/pass
$ restic -r s3:http://192.168.10.254:9000/restic snapshots
配置在需要密码时通过选项或环境变量调用的程序--password-command,RESTIC_PASSWORD_COMMAND
#使用参数
$ restic -r s3:http://192.168.10.254:9000/restic snapshots --password-command 'echo 123456'
#使用变量
$ export RESTIC_PASSWORD_COMMAND='echo 123456'
$ restic -r s3:http://192.168.10.254:9000/restic snapshots