抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

上一篇杜老师分享了 MySQL 备份脚本,在留言中,有小伙伴推荐了 GoBackup 数据库备份工具。简单了解之后发现这款工具确实不错,简单易用,一次部署后能持续运行数年无需任何维护,存储成本低且安全可靠。

工具特性

  • 没有依赖关系。

  • 多数据库支持。

  • 支持多种存储类型。

  • 将路径或文件归档到压缩包。

  • 将大型备份文件拆分为多个部分。

  • 作为守护程序运行以按计划进行备份。

  • 用于管理备份的 Web UI。

支持类型

支持的数据库类型如下:

编号名称
1MySQL
2PostgreSQL
3Redis
4MongoDB
5SQLite
6Microsoft SQL Server
7InfluxDB
8MariaDB

存储类型

支持存储类型如下:

编号名称
1本地
2FTP
3SFTP
4SCP - Upload via SSH copy
5Amazon S3
6Aliyun OSS
7Google Cloud Storage
8Azure Blob Storage
9Backblaze B2 Cloud Storage
10Cloudflare R2
11DigitalOcean Spaces
12QCloud COS
13UCloud US3
14Qiniu Kodo
15Baidu BOS
16MinIO
17Huawei OBS
18Volcengine TOS
19UpYun
20WebDAV

通知途径

备份通知类型如下:

编号名称
1Mail (SMTP)
2Webhook
3Discord
4Slack
5Feishu
6DingTalk
7GitHub (Comment on Issue)
8Telegram
9AWS SES
10Postmark
11SendGrid

安装配置

执行下面安装命令,即可使用 gobackup 进行数据库备份:

1
curl -sSL https://gobackup.github.io/install | sh

创建并编辑配置文件/etc/gobackup/gobackup.yml,模板内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
models:
gitlab_app:
databases:
gitlab_db:
type: postgresql
database: gitlab_production
username: gitlab
password:
gitlab_redis:
type: redis
mode: sync
rdb_path: /var/db/redis/dump.rdb
invoke_save: true
storages:
s3:
type: s3
bucket: my_app_backup
region: us-east-1
path: backups
access_key_id: $S3_ACCESS_KEY_Id
secret_access_key: $S3_SECRET_ACCESS_KEY
compress_with:
type: tgz

使用方法

如需备份,使用下面命令即可:

1
gobackup perform

如需命令完整路径,可调用/usr/local/bin/gobackup。分享一个实例配置文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
models:
my_backup:
before_script: |
echo "Before script"
after_script: |
echo "After script"
schedule:
# At 04:05 on Sunday.
cron: "5 4 * * sun"
storages:
local:
type: local
path: /path/to/backups
databases:
mysql:
type: mysql
host: localhost
port: 3306
database: my_database
username: root
password: password
other_backup:
# At 04:05 on every day.
schedule:
every: "1day",
at: "04:05"
storages:
local:
type: local
path: /path/to/backups
databases:
mysql:
type: mysql
host: localhost
port: 3306
database: my_database
username: root
password: password

该工具支持 Web UI,如需启动可执行下面的命令:

1
gobackup start

访问 http://IP:2703 就行了:

评论