seafile实时备份

seafile备份与恢复 备份与恢复 概述 一般来说,Seafile 备份分为两部分内容: Seafile 资料库数据 数据库 如果你根据我们的手册来安装 Seafile 服务器,你应该有如下目录结构: haiwen # 根目录,haiwen 为示例文件名,如果你安装到其他目录则为相应的目录名 --seafile-server-2.x.x # Seafile 安装包解压缩后目录 --seafile-data # Seafile 配置文件和数据(如果你选择默认方式) --seahub-data # Se 阅读详情

Seafile 实时备份服务器

备份是从主服务器(正在运行生产服务)将数据复制到备份服务器的过程。

备份是保证数据安全的重要步骤。在备份文档中表述的备份步骤有以下几点不足:

  • 备份是在固定的“备份周期”(每天一次或每天几次)中完成的。如果主服务器存储被损坏,则在两个备份周期之间写入的最新数据将丢失。

  • 备份过程会备份数据库和数据目录。在备份服务器中,数据库中的一些条目可能与数据目录不一致。这导致一些库在恢复后被“损坏”。
    实时备份服务器使用与 Seafile 同步客户端类似的同步算法从主服务器检索数据。它的工作原理如下:

  • 每当更新一个资料库时,主服务器都会通知备份服务器检索已更改的数据。使用增量同步算法,该过程快速运行并几乎实时地更新备份服务器。

  • 备份服务器还会在一个固定的时间段主动检查主服务器上的所有资料库。任何新的或更新的库都将同步到备份服务器。这将修复由于之前的实时同步过程中出现的故障引起的任何遗漏的更新数据。

  • 备份服务器始终保持数据库和数据目录的一致性。因此,备份服务器上的任何库都不会处于损坏状态(除非主服务器上的库已经损坏)。

  • 所有资料库的全部历史将被备份。这与桌面客户端不一样,它只与资料库的最新状态同步。
    有两组数据需要备份:

  • Seafile 数据目录和 Seafile 数据库中的资料库核心元数据表。这些数据是 Seafile 中资料库的核心数据结构。它们通过 Seafile 的同步算法同步到备份服务器。在此过程中,元数据表与 Seafile 数据目录保持一致。

  • 通过 mysqldump 备份数据库中的其他所有数据(包括 seafile,ccnet 和 seahub 数据)。但是 mysqldump 不能达到实时备份的效果,您可以通过设置 crontab 任务来周期性自动备份数据库。这些表的延迟备份不会影响 Seafile 资料库数据的完整性。

    配置实时备份服务器

我们假设您已经有一整套的 Seafile 主服务器在运行,而现在您想要配置一套备份服务器。

配置备份服务器有以下几个步骤:

  • 在备份服务器上安装 Seafile 程序。

  • 在主服务器和备份服务器之间配置 Seafile 同步。

  • 通过 mysqldump 周期性的备份数据库中的数据。

    在备份服务器上安装 Seafile

您可以按照这个文档在备份服务器上安装 Seafile。由于实时同步功能只有在 5.1.0 及其以上版本中可用,所以您必须将主服务器上的 Seafile 版本更新到 5.1.0 以上。

当在备份服务器上安装 Seafile 时需要注意:

  • 数据库名称(ccnet,seafile 和 seahub 数据库)应该和主服务器上的相同。

  • 您无需在备份服务器上开启专业版功能,例如 Office 文档预览,全文检索和文件编辑等功能。

  • 您不能在主服务器上启动 Seahub 进程,这意味着通常情况下备份服务器不能对外提供服务。

    配置 Seafile 实时同步

在主服务器上,添加以下配置到 seafile.conf 中:

[backup]backup_url = http://backup-serversync_token = c7a78c0210c2470e14a20a8244562ab8ad509734

在备份服务器上,添加以下配置到 seafile.conf 中:

[backup]primary_url = http://primary-serversync_token = c7a78c0210c2470e14a20a8244562ab8ad509734sync_poll_interval = 3
  • backup_url:备份服务器的访问地址,您可以使用http或https协议;
  • primary_url:主服务器的访问地址。
  • sync_token:主服务器和备份服务器之间共享的一个密钥,它是由系统管理员生成的40个字符的 SHA1。您可以使用 uuidgen | openssl sha1 命令生成一个随机密钥。
  • sync_poll_interval:备份服务器定期轮询主服务器的所有资料库。您可以以小时为单位设置轮询间隔。默认的间隔是1小时,这意味着备份服务器将每小时轮询一次主服务器。如果您有大量的资料库,您应该选择较大的轮询间隔。
    如果您使用https在主服务器和备份服务器之间同步,您必须为您的系统使用正确的 Seafile server 包。如果您使用的是 CentOS,您应该使用没有 “Ubuntu” 后缀的 Seafile 包;如果您使用的是 Debian 或 Ubuntu,您应该使用带有 “Ubuntu” 后缀的 Seafile 包。否则,您可能会在https请求中遇到CA错误。

保存配置后,在主服务器和备份服务器上重新启动 Seafile 服务。备份服务器将在重新启动时自动启动备份进程。

注意:不要在备份服务器上启动 Seahub 进程。

备份数据库

使用 mysqldump 备份服务器的 MySQL 数据:

mysqldump -u <user> -p<password> --databases \--ignore-table=<seafile_db>.Repo \--ignore-table=<seafile_db>.Branch \--ignore-table=<seafile_db>.RepoHead \<seafile_db> <ccnet_db> <seahub_db> > dbdump.sql

您应该将 <user>, <password> 替换为您的 MySQL 用户和密码,将 <seafile_db>, <seahub_db> 和 <ccnet_db> 替换为您的 MySQL 中的数据库名。

这三个被忽略的表是与资料库核心数据相关的表,并由 Seafile 备份服务器实时同步。它们保存在备份服务器的seafile数据库中,并与mysqldump进程分开。

您应该设置 crontab 周期性自动运行 mysqldump 进程。

如果希望以更实时的方式备份数据库表(除了使用Seafile同步的3个表),可以将MySQL/MariaDB数据库主从复制的从主节点部署到另一个数据库服务器上。**在 Seafile 备份服务器上运行的数据库不能用作此复制的目标。**否则将导致复制冲突,因为备份服务器上的db也将通过 Seafile 备份进程进行更新。

检查备份状态

在上面的设置之后,您现在应该拥有以下备份数据的布局:

  • 资料库数据由 Seafile 备份服务器备份和管理。根据备份服务器的设置,数据可以存储在外部存储、对象存储或本地磁盘上。
  • 数据库表分为两部分:
    • 3个核心数据库表实时备份到备份节点的MySQL数据库。
    • 其他表通常被转储到带有 mysqldump 的文件中。备份文件存储在主服务器之外的其他地方。
      seaf-backup-cmd.sh 提供 status 命令来查看备份状态。输出如下:
# ./seaf-backup-cmd.sh statusTotal number of libraries: xxxNumber of synchronized libraries: xxxNumber of libraries waiting for sync: xxxNumber of libraries syncing: xxxNumber of libraries failed to sync: xxxList of syncing libraries:xxxxxxList of libraries failed to sync:xxxxxx

有几个原因可能导致库备份失败:

  • 主服务器中的一些数据被损坏。这些数据可能处于最新状态或历史中。由于备份过程同步整个历史,历史中的损坏将导致备份失败。

  • 主服务器运行了 seaf-fsck,它可以将库恢复到旧状态。

    在备份服务器上恢复数据

在主服务器上发生严重数据损坏的不幸情况下,您可以直接在备份服务器上恢复服务。恢复的服务可以直接在备份服务器上运行。

在备份服务器上恢复数据有两个步骤:

  • 将最新的 mysql dump 出的文件导入 Seafile 备份服务器的mysql数据库中。

  • 在 Seafile 备份服务器上启用其他专业版功能特性,并启动seahub进程 ./seahub.sh start。

    第一步:导入mysqldump数据到备份服务中

将最新的mysqldump文件导入备份服务器的数据库:

mysql -u <user> -p<pass> < dbdump.sql

将 <user> 和 <pass> 替换为您的 MySQL 的用户名密码。

第二步:在备份服务器上启动 seahub 进程

将主服务器上的 Seafile 的配置复制到备份服务器,然后在备份服务器上启动seahub进程。

./seahub.sh start

为 Seafile 集群配置备份服务器

如果您的主服务作为一个 Seafile 集群运行,那么在设置备份服务器时需要注意两点:

  • 如果您使用的是MariaDB集群,那么您应该只使用其中一个 MySQL 实例作为主服务器。
  • 您必须更改seafile.conf并在每个 Seafile 节点上设置 backup_url 和sync_token 选项。所有主 Seafile 节点上的配置应该相同。它们都指向同一个备份服务器。
    目前,不能将备份服务部署为集群。也就是说,您只能使用一个节点作为备份服务器。这种支持将来可能会增加。

管理实时备份服务器

seaf-backup-cmd.sh 脚本是管理备份服务器的工具。seaf-backup-cmd.sh 脚本提供以下命令:

手动触发资料库同步

您可以使用 sync 命令手动触发资料库的备份:

# ./seaf-backup-cmd.sh sync <library id>

该命令将被阻塞,直到备份完成。

处理备份错误

sync 命令的 —force 选项可以用来强制执行失败的备份。备份失败通常是由主服务器上的资料库的数据损坏引起的。—force 选项要求备份跳过损坏的对象并完成备份。

当发现备份错误时,请执行以下两个步骤:

  • 在主服务器上为失败的资料库运行 seaf-fsck。Fsck将修复资料库的任何损坏到最新的状态。
  • 在备份服务器上运行 seaf-backup-cmd.sh sync —force 。
文件随时多版本备份:seafile 的安装配置和使用 个人博客导航页(点击右侧链接即可打开个人博客):大牛带你入门技术栈 作为体制内办公的一员,是不是天天抱怨电脑破旧卡滞,经常蓝屏崩溃,文档版本混乱,经常损坏打不开?这里推荐一个局域网内的文档同步多版本备份的软件seafile。先介绍如何安装,再介绍如何使用。 安装前的准备工作 本人办公的局域网内有一台多功能服务器,centos7的,安装了杂七杂八的服务器软件,我觉得多一个 seafile... 阅读详情

相关推荐

开源网盘神器:用OnlyOffice实现文档在线预览与编辑的完整教程

本文详细介绍了如何将开源办公套件OnlyOffice深度集成到Nextcloud、Seafile等开源网盘中,实现媲美商业软件的文档在线预览与编辑功能。教程涵盖生产环境部署、安全配置、性能优化及与主流网盘的无缝对接,帮助团队构建自主可控、高效安全的文档协作平台,显著提升团队协作效率。

weixin_29209805的博客 176

seafile 备份

seafile

weixin_54898062的博客 1255

Obsidian多端同步方案全对比:从官方Sync到自建云,11种方式一次讲透

在多设备协作日益频繁的今天,笔记与知识库的跨终端同步成为知识管理的基础需求。Obsidian作为一款本地优先的Markdown笔记工具,将数据以纯文本形式保存在用户本地,这种设计赋予了数据高度的可控性与开放性,但也使得多设备间的文件一致性必须依赖外部同步机制。理解同步与备份的本质区别、实时性与冲突处理的权衡,是构建可靠工作流的前提。无论是追求省心的官方云服务,还是强调隐私的自建方案,亦或是基于Git的版本管理,都在不同维度上满足特定场景的需求。本文系统拆解11种主流Obsidian同步方式,从原理、费用、移

weixin_32927133的博客 212

旧电脑通过dockers部署seafile笔记

2023年11月。

whj7605的专栏 1774

docker下部署seafile

Docker+seafile部署文档 seafile官网地址:Seafile - 开源的企业私有网盘 私有云存储软件 企业维基 知识管理 docker官网地址:Empowering App Development for Developers | Docker 新建虚拟机,虚拟配置50G+110G硬盘,IP:192.168.107.205 因为后期要对seafile进行扩容,所以硬盘格式选择了LVM格式 配置硬盘格式为LVM格式并挂载: 一、查看磁盘信息: fdisk -l 二、对磁盘进行

Yangsaanpi的博客 2915

docker部署seafile

因为最近需要进行书籍pdf同步备份,因此使用docker搭建了seafile服务。 [kg@kgserver seafile]$ cat docker-compose.yml version: "3" services: seafile: image: seafileltd/seafile:6.3.3 container_name: seafile ...

邓汝泉专栏 4009

Seafile数据库备份终极指南:全量与增量备份策略详解

Seafile作为一款高性能的文件同步和共享平台,其数据库备份策略对于保障企业数据安全至关重要。本文将为您详细介绍Seafile数据库集群的全量备份与增量备份方法,帮助您建立完善的备份体系。 ## 🛡️ 为什么需要Seafile数据库备份? 数据是企业的核心资产,Seafile数据库中存储着用户信息、文件元数据、权限设置等关键数据。一旦发生数据丢失或损坏,将直接影响业务运营。通过合理的备份策

gitblog_00485的博客 703

seafile安装和数据备份(基于docker)

seafile安装和数据备份(基于docker),在云服务器上用docker-compose的方式安装seafile,之后用定时任务进行数据备份同步到别的一台服务器上

从Seafile 12.0升级到Seafile 13.0

从 Seafile 12.0 Docker 升级到 Seafile 13.0 Docker 的记录。

wbsu2004的博客 6978

Verilog使用inout信号的方法

在FPGA的设计过程中,有时候会遇到双向信号(既能作为输出,也能作为输入的信号叫双向信号)。比如,IIC总线中的SDA信号就是一个双向信号,QSPI Flash的四线操作的时候四根信号线均为双向信号。在Verilog中用关键字inout定义双向信号,这里总结一下双向信号的处理方法。  实际上,双向信号的本质是由一个三态门组成的,三态门...

qq_41687938的博客 1万+

QTabWidget动态标签页管理:从代码创建到UI设计的实战指南

本文深入探讨了QTabWidget动态标签页管理的实战技巧,涵盖从纯代码创建到UI设计器布局的两种核心方法。详细讲解了如何动态添加、插入、关闭标签页,并管理其内容与生命周期。文章还提供了标签页精细化控制、界面优化(如设置图标、样式表)以及构建简易多文档编辑器的进阶实战案例,帮助开发者灵活应对数据监控、多文档编辑等复杂界面需求。

omega的博客 864

Obsidian多设备同步方案横评:六大主流方案对比与最优选型实践

本地优先的Markdown笔记工具Obsidian,凭借纯文本存储和强大插件生态广受青睐,但多设备间的文件同步始终是高频使用者的痛点。一个合格的同步方案需要兼顾延迟、冲突处理与平台覆盖,否则就会频繁打断记录节奏。围绕这些核心诉求,主流方案各有优劣:官方Sync体验最佳但成本较高,Git方案适合桌面端技术用户,网盘同步易产生冲突覆盖,Syncthing私密但配置门槛高,自建服务维护成本大。而Remotely Save插件配合Cloudflare R2对象存储,以极低成本和接近实时的体验,成为兼顾移动端与多平台

weixin_28835551的博客 274

图像标注神器:完全开源免费的多功能标注工具Labelme详解

Labelme是MIT开发的免费开源图像标注工具,支持多边形、矩形等多种标注类型,适用于目标检测、分割等计算机视觉任务。提供Windows可执行文件和Python安装两种方式,可输出JSON格式并转换为COCO等标准数据集。具有跨平台、功能全面、社区活跃等优势,能显著提升标注效率,是AI视觉项目的重要数据准备工具。

数字人生 526

Seafile备份革命:5分钟掌握增量与差异备份实战技巧

你是否还在为团队数据备份占用大量存储空间而发愁?是否遇到过全量备份耗时过长导致业务中断的问题?本文将带你解锁Seafile备份脚本的高级功能,通过增量备份与差异备份技术,实现存储空间节省70%+、备份速度提升5倍的实战效果。读完本文,你将能够: - 区分增量备份与差异备份的核心差异 - 使用Seafile CLI工具构建自动化备份脚本 - 通过差异算法分析实现数据变化精准捕获 - 部署企业级备份监...

gitblog_00177的博客 370

【WorkBuddy从入门到精通实战教程】第 4 章 快速完成第一个 WorkBuddy 任务

摘要:WorkBuddy任务创建指南详细说明了从新建任务到结果验收的全流程。操作步骤包括:选择工作目录、设置模式(Craft/Ask/Plan)、指定AI模型、输入任务说明(需包含目标/输入/动作/约束/输出/验收6要素),可选配Skill等高级设置。文中提供三个入门示例:A)文件整理需保持原文件并生成分类方案;B)会议纪要要求结构化输出且所有内容有原文依据;C)Word转PPT需遵循品牌规范并控制页数。特别强调首次操作应在演练目录测试,处理真实数据前需确认授权范围,输出文件需检查涉密信息并按规范共享。(1

企鹅码农的专属播客,分享10多年的实战案例和经验解读,包含YOLO、RT-DETR、AI等各个工作领域。 1292

华为OD机考双机位C卷 - 池化资源共享 (Java & Python& JS & C/C++ & GO )

华为OD机考双机位C卷 - 池化资源共享 (OD上机考试双机位C卷)。提供Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。

算法大师! 1070

新一代文件管理平台Seafile

Seafile 是一个开源云存储系统,具有隐私保护和团队合作功能。

wbsu2004的博客 7824

在MATLAB和Simulink中设计并仿真一个智能建筑能效优化系统

智能建筑能效优化是现代建筑管理的重要组成部分,旨在通过智能化手段降低能源消耗、减少碳排放并提高居住舒适性。通过Simulink进行智能建筑能效优化仿真,可以验证控制策略的有效性、优化系统设计并降低开发成本。以下是如何在MATLAB和Simulink中设计并仿真一个智能建筑能效优化系统的详细步骤。通过上述步骤,我们成功设计并实现了基于Simulink的智能建筑能效优化仿真。该系统能够模拟复杂的建筑环境,验证能效优化策略的有效性,并通过优化设计提高建筑的能源利用效率和居住舒适性。

xiaoheshang_123的博客 137

Seafile Docker镜像使用教程

Seafile 是一个开源的文件同步和共享解决方案,旨在帮助团队高效地管理和共享文件。Seafile Docker 镜像是一个基于 Docker 容器技术构建的 Seafile 服务器镜像,它使得部署和运维 Seafile 服务器变得更加简单和高效。 ## 2. 项目快速启动 以下是基于 Docker 快速部署 Seafile 服务的步骤: 首先,确保您的系统已经安装了 Docker。 `

gitblog_00037的博客 1001

Open3D 体素下采样【2026最新版】

体素滤波,博客长期更新,本文最近更新时间为:2026年4月11日。

点云侠的博客 37万+

OpenHarmony AI系列:神经网络处理单元(NPU)驱动架构与实现详解

NPU(Neural Processing Unit,神经网络处理单元)是专门为神经网络计算设计的硬件加速器。在OpenHarmony系统中,NPU驱动是通过NNRT(Neural Network Runtime,神经网络运行时)框架实现的,它作为中间桥梁连接上层AI推理框架和底层NPU硬件,实现AI模型的跨芯片推理计算。

m0_67505153的博客 665

Seafile安装记录

Seafile安装记录 创建相关目录 cd /home mkdir haiwen cd haiwen mkdir installed 下载安装包 官网地址:https://www.seafile.com/download/ 在系统中下载安装包: cd /home/haiwen wget http://seafile-downloads.oss-cn-shanghai.aliyuncs.com...

windangle的博客 353

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

破局企业数据备份困境:Seafile三大备份策略深度测评与场景适配指南

你是否还在为以下备份难题焦头烂额?全量备份占用服务器90%存储空间、增量备份恢复时需串联12个历史版本、差异备份同步延迟导致数据不一致?本文将通过Seafile的底层实现原理,对比三大备份策略的技术特性与适用场景,帮你构建兼顾性能与安全性的企业级数据保护方案。读完本文你将获得:3种备份策略的核心差异解析、基于Rabin算法的块级同步原理、6大行业场景的最优配置方案,以及通过Seafile CLI实...

gitblog_00710的博客 1110

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

迁移本地Seafile到docker

My blog:迁移本地Seafile到docker 由于一开始为ubuntu分配的磁盘空间太少,只有一百多G,后期越来越不够用了,而且环境也有些乱,所以打算重新迁移到新的磁盘上。其它的都好说,就是Seafile有些担心,需要配置的东西太多了。但是最后终于成功了,虽然踩了不少坑,但是当完成以后发现还是很简单的。 源机器: 系统:ubuntu 19.10 使用的haiwen脚本安装:https...

MedeMede 1162

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

我的seafile网盘,多端同步我做主

我最喜欢的是:seafile可以把文件缓存下来,即使服务不在家,在外面也可以离线访问。

站在知识源头搞技术 1539

seafile数据的备份与恢复

seafile数据备份包括MySQL数据备份与seafile,seahub数据备份两个部分。所以在备份的时候需要注意这一点。 我的存储底层用glusterfs数据共享,为了防止一台服务器宕机以后另一台不能用。 今天下午模拟了一下宕机效果,没啥问题,数据都还在。 目前还没有对seafile和glusterfs进行进一步的研究。此处先说一下备份需要注意什么。 1.MySQL的数据备份 m...

weixin_30249203的博客 1754
上一篇: seafile备份与恢复
下一篇: Windows 下部署 Seafile 服务器
我怎么又饿了呀
博客等级 码龄8年 5151粉丝 345原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值