为出海而探索,为选择多想一步。CROSSBORDER GEEK / K8N.COM
K8N跨境极客CrossBorder Geek

教程

网站自动备份入门:文件与数据库定时备份怎么做

网站挂了可以重建,数据没了就真的没了。备份是 上性价比最高的一道保险:成本是几分钟配置,收益是出问题时能按时恢复。这篇用最朴素的思路,把"数据库 + 文件 + 异地存放 + 定时"四件事讲清楚。

网站定时备份示意图 AI 操作示意图·以官网实际界面为准

1. 先搞清要备份什么

一个网站的数据分两半:

  • 数据库:文章、用户、订单、配置,全部在这里;
  • 网站文件:代码、上传的图片、主题、日志等。

只备份文件不备份数据库,等于备份了一半;只备份数据库不备份文件,恢复时依然抓瞎。两个都要。

另外记住一条:备份必须存在别处。放在同一台机器上,机器故障时备份跟着一起没,等于白做。

2. 数据库备份:mysqldump

MySQL 自带的 mysqldump 是最常用的数据库备份工具,它把数据库导出成一条条 SQL 语句,之后随时可以原样导回。基本用法:

mysqldump -u 用户名 -p 数据库名 > backup.sql

几个实用参数(以 MySQL 官方手册为准):

  • --single-transaction:对 InnoDB 表做一致性备份,导出过程中不锁表、不影响线上读写,是日常备份的推荐搭配;
  • --routines:连存储过程、函数一起导出;
  • 导出后顺手压缩,能省不少空间:
mysqldump --single-transaction --routines -u 用户名 -p 数据库名 | gzip > backup-$(date +%Y%m%d).sql.gz

验证:导完先 ls -lh 看文件大小是否正常,再试一次 mysql < backup.sql 导入到临时库,确保文件不是空的。

3. 网站文件备份:打包 + 加密

文件部分,最直接的办法是把整个站点目录打成 tar 归档,再放到备份目录:

tar -czf site-files-$(date +%Y%m%d).tar.gz /var/www/你的站点目录

要点:

  • 排除缓存、日志这类可再生目录,只打"丢了找不回"的东西;
  • 压缩比不够满意就换 xz,体积更小、速度更慢;
  • 如果文件里有敏感数据,用 restic 这类带加密的备份工具,比裸归档更稳妥——restic 支持增量备份、全程加密、可验证恢复,一个二进制文件就能跑,官方称"把备份做对"。

备份三步流程插画 AI 操作示意图·以官网实际界面为准

4. 推到异地:rclone 与备份保留策略

本机备好了,还得送一份出去。rclone 是支持 70+ 云存储的命令行工具,配置一次后,把备份目录同步到 S3、云盘或任意对象存储:

rclone copy /var/backups 远端:你的桶名/backups

三个原则:

  1. 每天至少推一次,和定时任务绑在一起;
  2. 保留多份:按天保留 7 份、按月保留 3 份之类,别让旧备份被覆盖掉;
  3. 定期抽查:从云端拉一次备份试恢复,别等要用的时候才发现是坏的。

5. 定时自动化:cron

一切都手动做等于没做。Linux 的 cron 让服务器自己干活,在 crontab 里加一行,比如每天凌晨 2 点先导数据库、再打包文件:

0 2 * * * /opt/backup.sh >/dev/null 2>&1

把数据库导出、文件打包、推到异地写进同一个脚本,加一行 set -e(脚本里任一命令失败就退出,避免"半套备份")。cron 的格式和细节以系统 crontab 手册为准(man 5 crontab)。

6. 最后一步:演练恢复

备份的价值在于能恢复。每季度至少做一次完整演练:在另一台机器上把最新的 SQL 导入、文件解包,确认站点能跑起来。恢复不了数据的备份,只是心理安慰。

数据中心机房巡检实拍

小结

一套合格的网站备份长这样:mysqldump 导数据库 → tar 打包文件 → rclone 推到异地 → cron 每天自动执行 → 季度恢复演练。别追求复杂方案,把这五步跑通,99% 的数据丢失场景都兜得住。

官方资料

资料核对日期:2026-10-25

最近一周热门文章

按近 7 天访问热度排序,热度积累前优先展示新文章。

当前栏目最新文章

教程 · 继续阅读同栏目的新内容

一起交流

0 条留言

还没有留言,来分享你的想法吧。

LEAVE A NOTE

你的经验,也很重要。

无需注册或登录。请勿公开邮箱密码、证件、银行卡号或其他敏感信息。

更多阅读
K8N · CrossBorder Geek

给出海玩家、独立开发者、跨境博主与外贸人的选型笔记。

关于这个博客 ↗