IT技术之家 网络技术 seafile 数据定期备份和恢复教程(seafile 迁移教程)

seafile 数据定期备份和恢复教程(seafile 迁移教程)

一、概述

安装好seafile后,数据备份也是非常重要的,万一机器无法开机或者磁盘损坏就可以使用备份数据进行恢复。

数据备份和恢复教程

特别说明

  1. 脚本一键安装seafile 9推荐阅读:安装 seafile 8.0.11/9.0.16 专业版&企业版 一键安装脚本教程
  2. 如果需要在宝塔下安装或者手动安装的请点击这里查看教程。
  3. 如果是8.0.X老版本,可以升级到 9.0.16版本,———>请点击这里查看教程。
  4. 如果是7.1.X老版本,需要先升级到 8.0.11版本请点击这里查看教程。
  5. 如果是7.0.X老版本,需要先升级到7.1.12版本seafile 7.0.14专业版升级到7.1.12专业版教程
  6. onlyoffice 8 最新魔改版更加流畅,并发量大或者经常使用的强烈推荐。请点击前往查看
  7. 如果需要手动部署微软office Online在线协同编辑的, 请点击这里查看
  8. 数据量很大,想要外挂数据存储的,可以参照NFS挂载,Seafile 企业版挂载群晖NAS网盘教程

需要备份哪些数据?

一般来说,Seafile 备份分为两部分内容:

  • Seafile 资料库

  • 数据库

如果你根据脚本安装的Seafile 服务器,应该有如下目录结构:

#假设安装目录为/opt/seafile
/opt/seafile
  --seafile-server-9.x.x # Seafile 安装包解压缩后目录
  --seafile-data   # Seafile 配置文件和数据(如果你选择默认方式)
  --seahub-data    # Seahub 数据
  --conf           # 包含配置文件

二、seafile 数据定期备份教程

知道了需要备份哪些数据,就简单了,主要分为两步:

  1. 备份数据库;
  2. 备份存放 Seafile 数据的目录;

备份数据库

建议将数据库备份到另一个单独目录或者磁盘,防止磁盘损坏导致备份文件也一并失效。防止备份文件过大,最好设置保留时效,比如30天循环覆盖。

脚本安装的数据库,数据库名称固定位为 ccnet_db, seafile_dbseahub_db

mysqldump 会自动锁表,所以在备份数据库的时候,不需要停掉 Seafile 服务器,直接热备份即可。

#编辑计划任务
crontab -e

#备份数据库
#password 改成自己的密码,默认密码在/opt/seafile/.my.cnf文件中
#/home/backup/database/ 改成自己的备份路径
20 23 * * *  /usr/bin/mysqldump -useafile -ppassword --opt ccnet_db > /home/backup/database/ccnet_db.`date +"\%Y-\%m-\%d-\%H-\%M-\%S"`.sql
40 23 * * *  /usr/bin/mysqldump -useafile -ppassword --opt seafile_db > /home/backup/database/seafile_db.`date +"\%Y-\%m-\%d-\%H-\%M-\%S"`.sql
50 23 * * *  /usr/bin/mysqldump -useafile -ppassword --opt seahub_db > /home/backup/database/seahub_db.`date +"\%Y-\%m-\%d-\%H-\%M-\%S"`.sql

# 清楚过期数据库文件
30 09 * * * 
/usr/bin/find /home/backup/database/ -mtime +30 -name "*.sql" -exec rm -rf {} \

Cron 语法格式

Cron 任务的格式如下:

* * * * * <command-to-execute>
- - - - -
| | | | |  
| | | | +---- 星期几(0 - 7)(0 或 7 代表星期天)
| | | +------ 月(1 - 12)
| | +-------- 日(1 - 31)
| +---------- 小时(0 - 23)
+------------ 分钟(0 - 59)

示例:

  • * * * * *:每分钟执行一次任务
  • 0 5 * * *:每天凌晨 5 点执行任务
  • 0 0 1 * *:每月 1 日的午夜执行任务
  • */5 * * * *:每 5 分钟执行一次任务
  • 0 0 * * 1:每周一的午夜执行任务

有宝塔环境

如果有宝塔环境,那更简单了,直接在计划任务里添加数据备份任务,然后设置保留天数或份数即可。

可以设置一个数据全部备份任务,或者分开备份。

数据全部备份任务

备份 Seafile 数据

这里以安装目录/opt/seafile为例,其他目录参照即可。

所有的数据文件都存储在 /opt/seafile 目录, 备份整个目录即可。可以用 rsync 做定期增量备份。

#将数据备份到 /home/backup/seafile 下。 rsync -az /opt/seafile /home/backup 

加到计划任务crontab示意

10 02 * * 01 /usr/bin/rsync -az  /opt/seafile /home/backup &>/home/rsync.`date +"\%Y-\%m-\%d-\%H-\%M-\%S"`.log

三、恢复还原数据

以下都在备机上面操作,备机安装好seafile。

恢复数据库

#假设数据备份文件分别为ccnet_db.sql、seafile_db.sql、seahub_db.sql
mysql -useafile -ppassword ccnet_db < ccnet_db.sql
mysql -useafile -ppassword seafile_db < seafile_db.sql
mysql -useafile -ppassword seahub_db < seahub_db.sql

恢复 Seafile 资料库数据

之前seafile目录备份到/home/backup/seafile里

  • 移动 /home/backup/seafile 到opt目录即可。

mv /home/backup/seafile  /opt/

恢复测试

最后启动备机上面seafile服务,测试数据是否已经恢复。

buntu18.0.4及以上/Deepin 10

#关闭seafile
service seafile-server stop

#启动seafile
service seafile-server start

Centos8.X

#关闭seafile
systemctl stop seafile
systemctl stop seahub
#启动seafile
systemctl start seafile
systemctl start seahub

更多:

  • 脚本一键安装seafile 9专业版&企业版推荐阅读:

安装 9.0.16 专业版&企业版 一键安装脚本教程

  • onlyoffice 8 最新魔改版更加流畅,并发量大或者经常使用的强烈推荐

请点击前往查看

  • 数据量很大,想要外挂数据存储的,可以参照NFS挂载

Seafile 企业版挂载群晖NAS网盘教程

技术支持

需要安装,支持可以网站底部联系我

 

1、如果您发现本站资源已经失效或无法下载可以评论留言反馈
2、本站提供的软件均为 “试用版” 或者 “免费版”,仅供学习和研究使用
3、友情提醒:内容全部来自网络,安装教程参照压缩包内的Readme.txt编写
4、如有内容不慎侵犯了您的权益,请速与我联系!
如有转载请注明出处:https://www.ittel.cn/archives/45573.html
guest
0 评论
内联反馈
查看所有评论
联系我们

联系我们

QQ:877196754

在线咨询: QQ交谈

邮箱: 877196754@qq.com

工作时间:周一至周日,8:00-21:00
关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部