备份任务必须拆分为“网站”和“数据库”两个独立计划,因宝塔底层不支持自动合并备份;WordPress等站点需同步备份/www/wwwroot/及对应MySQL库,参数、路径、时机均不可混用。
备份任务必须拆成“网站”和“数据库”两个独立计划
宝塔不会把网站文件和数据库自动打包进同一个压缩包,哪怕你设了同一时间、同一存储路径,也得手动建两个任务:一个选
,另一个选
。这是底层逻辑决定的,不是配置遗漏。
常见错误现象:只建了一个“备份网站”任务,结果恢复时发现数据库丢了——因为数据库根本没被触发备份
使用场景:WordPress 站点必须同时备份
和对应 MySQL 库,缺一不可
参数差异:
任务里选的是站点名(如
),
任务里选的是库名(如
),二者不能混用
性能影响:高频备份(比如每小时)会显著增加磁盘 IO,小内存机器可能卡在
阶段,建议数据库至少间隔 6 小时以上
云存储插件不是“开了就能用”,必须先完成认证和连通性验证
你在计划任务里看到的
、
、
这些选项,全依赖后台插件已安装+配置成功+测试通过。任一环节断掉,任务就静默失败,面板日志里甚至不报错。
常见错误现象:“备份到 COS” 任务执行后,COS 控制台空空如也,宝塔任务日志只显示“执行成功”,实际没传上去
实操建议:
和
必须来自 CAM 子用户(非主账号),且该子用户仅绑定
策略;地域
(如
)必须和存储桶创建时选的一致
连通性验证:插件设置页点击
后,页面应自动跳转至文件列表;若为空白,手动新建一个测试文件夹再删掉,确认能操作才算通
FTP 特别坑点:FTP 路径填
,不是
或
;密码含
、
等特殊字符时,宝塔插件不支持 URL 编码,直接换密码
上传延迟是硬需求,Shell 脚本任务必须比备份任务晚至少 5 分钟
宝塔的
任务只是生成本地压缩包,不负责上传;而官方插件提供的上传能力(如
)只能作用于已存在的文件。如果上传任务和备份任务设在同一时间,大概率上传脚本找不到刚生成的
文件。
使用场景:你设了网站备份在
执行,那上传任务就得设成
或更晚;数据库同理
实操命令示例:
—— 注意路径中
要和你在面板里配置的站点名完全一致,包括大小写
兼容性影响:部分老版本 COS 插件(如
)不支持带日期变量的动态路径,得先固定命名再上传,否则报
替代方案:如果多个站点要统一管理,建议放弃插件上传,改用
+ 自定义 Shell 脚本,可控性更强
异地容灾真正在意的不是“有没有传上去”,而是“能不能快速验证和还原”
很多用户做完所有配置,以为万事大吉,直到某天真要恢复才发现:COS 里的备份包打不开、数据库导入报错、或者根本找不到对应日期的文件。异地容灾的核心是可验证性,不是自动化本身。
实操建议:每月手动点一次计划任务旁的
按钮,然后立刻去 COS 控制台下载最新备份包,用
或
快速校验完整性
容易忽略的点:
和
是两套逻辑——前者管本地目录下留几个文件,后者管远程存储(如 COS)是否自动清理;两者默认不联动,得分别设置
关键细节:宝塔备份生成的
包里,网站备份不含 Nginx 配置,数据库备份不含用户权限语句;真要完整还原,还得单独备份
和用
导出系统库
备份网站备份数据库/www/wwwroot/your-site/备份网站example.com备份数据库wp_examplemysqldump腾讯云COS阿里云盘FTP存储空间SecretIdSecretKeyQcloudAccessForCOSBatchRoleregionap-beijing保存backup/backupftp://xxx/backup$@备份网站cos.pl upload.zip02:0002:05/www/server/panel/plugin/cos/cos.pl upload /www/backup/site/example.com_$(date +\%Y\%m\%d).zip /backup/example.comv5.2file not foundcoscmd执行unzip -tzcat xxx.sql.gz | head -20保留份数保留天数.zip/www/server/panel/vhost/mysqldump --all-databases --skip-lock-tables