温馨提示×

ThinkPHP项目在Linux下的备份策略

小樊
47
2025-09-12 16:25:11
栏目: 编程语言

一、数据库备份

  • 使用mysqldump工具
    通过mysqldump -u 用户名 -p密码 数据库名 > 备份文件.sql命令备份数据库,可结合crontab设置定时任务(如每天凌晨2点执行),备份文件需存储在安全路径并定期清理过期文件。
  • ThinkPHP命令行工具
    执行php think db:backup生成备份文件,默认存放在runtime/db_backup目录,可通过配置修改路径。

二、文件备份

  • 项目文件打包
    使用tar -czvf 备份文件.tar.gz 项目目录命令压缩项目文件,可通过脚本自动备份到指定路径,结合cron实现定时备份。
  • 配置文件备份
    单独备份config/目录,避免敏感信息泄露,建议加密存储。

三、自动化与安全策略

  • 定时任务(Cron)
    通过crontab -e编辑定时任务,例如:
    0 2 * * * /usr/bin/mysqldump -u root -p密码 数据库名 > /backup/db_$(date +\%F).sql
  • 权限管理
    确保备份脚本有执行权限(chmod +x),备份文件存储目录设置仅授权用户可访问。
  • 安全存储
    敏感数据备份需加密,可通过gpg等工具加密备份文件,或存储至加密云存储。
  • 恢复测试
    定期验证备份文件可用性,通过mysql -u 用户名 -p密码 数据库名 < 备份文件.sql测试数据库恢复。

四、工具推荐

  • Duplicati:支持本地/远程备份,图形化界面管理备份计划。
  • Rsync:增量备份效率高,适合大文件同步。

0