宝塔面板数据库备份自动上传到对象存储
宝塔面板自带的数据库备份默认只保存在服务器本地,一旦服务器磁盘损坏或误删,备份文件也会一起丢失。
把备份自动上传到对象存储是成本低、可靠性高的异地容灾方案。
下面从零开始,一步步完成配置。
准备工作:确认版本与开通对象存储
开始前请确认你的宝塔面板版本为 7.7 及以上(旧版插件入口可能不同),并已安装 MySQL 或 MariaDB 数据库。
同时,你需要有一个对象存储服务,比如阿里云 OSS、腾讯云 COS、七牛云 Kodo 等。
如果还没有,先去对应云厂商控制台开通,并创建好 Bucket(存储桶)。
创建 Bucket 时注意两点:
- 地域选择离你服务器近的,上传速度更快。
- 读写权限建议设为“私有”,备份文件不应公开访问。
随后在云厂商的访问控制里创建一对 API 密钥(AccessKey ID 和 AccessKey Secret),并授予该 Bucket 的读写权限。
这对密钥相当于账号密码,务必保存好,不要泄露。
安装并配置对象存储插件
登录宝塔面板,在左侧菜单点击 软件商店,搜索“对象存储”或“云存储”。
宝塔官方提供了多款插件,常见的有“宝塔对象存储”和“腾讯云COS”等。
选择与你对象存储服务商匹配的插件,点击 安装。
安装完成后,点击插件右侧的 设置,进入配置页面。
不同插件界面略有差异,但核心填写项一致:
- AccessKey / SecretKey:填入刚才创建的 API 密钥。
- Bucket 名称:你创建的存储桶名字。
- 地域 / Endpoint:根据 Bucket 所在地域填写,例如
oss-cn-hangzhou.aliyuncs.com(阿里云杭州)。 - 存储路径:可自定义,比如
/bt_backup/,方便后续查找。
填写后点击 保存,插件通常会提示“配置成功”或显示连接测试按钮。
建议先点一下 测试连接,确保密钥和网络都没问题。
创建自动备份并上传的计划任务
配置好插件后,回到宝塔面板左侧 计划任务 菜单。
点击 添加任务,按以下方式填写:
- 任务类型:选择“备份数据库”或“备份网站”,这里选“备份数据库”。
- 任务名称:自定义,例如“每日数据库备份上传OSS”。
- 执行周期:根据数据重要程度选择,一般建议每天凌晨低峰期执行一次。
- 备份到:勾选“对象存储”,并选择你刚才配置好的存储插件。
- 保留份数:设置保留最近 7 份或 14 份,避免存储空间无限增长。
保存任务后,可以点击 执行 按钮手动运行一次,观察是否成功。
此时留意任务日志,如果看到“上传成功”或类似提示,说明配置生效。
避坑指南:常见报错与处理
配置过程中容易遇到几个问题,提前了解能省不少时间:
- 上传失败,提示 AccessDenied:检查 API 密钥是否复制错误,或密钥对应的子账号是否有该 Bucket 的读写权限。
- 连接超时:确认服务器能否访问对象存储的外网 Endpoint。如果服务器在国内,选择国内地域的 Bucket 通常更稳定。
- 备份文件过大导致超时:数据库很大时,可先在插件里调大超时时间,或分库备份。
- 插件不显示对象存储选项:确认插件已安装并启用,部分旧版宝塔需要升级面板。
另外,不要将 AccessKey 直接写在脚本里明文保存,尽量通过插件界面配置,减少泄露风险。
验证备份是否真正上传成功
手动执行一次任务后,登录对象存储控制台,进入你设置的 Bucket,查看对应路径下是否有新的备份文件。
文件命名通常包含数据库名和时间戳。
还可以在宝塔计划任务日志中查看每次执行记录,确认没有报错。
如果日志显示成功但控制台没有文件,检查存储路径是否填写了多余的斜杠或空格。
建议每月做一次 恢复演练:从对象存储下载一个备份文件,导入到测试数据库,确保备份文件本身是可用的。
只有恢复成功,备份才有意义。
整个流程的核心就是:插件配好密钥,计划任务勾选对象存储,定期验证文件存在且可恢复。
按这个顺序操作,零基础也能完成宝塔面板数据库备份自动上传到对象存储的部署。