当前位置: 首页 > 软件库 > 管理和监控 > 数据备份 >

backup-x

数据库/文件备份工具
授权协议 MIT
开发语言 Google Go HTML/CSS
所属分类 管理和监控、 数据备份
软件类型 开源软件
地区 不详
投 递 者 能文华
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

backup-x 是一款带 Web 界面的数据库/文件备份增强工具。

原理:执行自定义 shell 命令输出文件,增强备份功能。

同时支持: 文件、mysql、postgres...

  •  支持自定义命令
  •  支持执行shell输出的文件备份,原理上支持各种数据库/文件备份
  •  支持备份周期设置,几分钟到一年的备份周期也可以
  •  支持多个项目备份,最多16个
  •  支持备份后的文件另存到对象存储中 (再也不怕删库跑路了)
  •  可设置备份文件最大保存天数
  •  webhook通知

docker 中使用

  • 运行 docker 容器(/opt/backup-x-files可替换为主机的目录)
    docker run -d --name backup-x --restart=always \
      -p 9977:9977 \
      -v /opt/backup-x-files:/app/backup-x-files \
      jeessy/backup-x
    
  • 登录 http://your_docker_ip:9977 并配置

系统中使用

  • 下载并解压https://github.com/jeessy2/backup-x/releases

  • 安装服务

    • Mac/Linux: ./backup-x -s install
    • Win(打开cmd): .\backup-x.exe -s install
    • 自定义参数 ./backup-x -s install -l 127.0.0.1:9977 -d /Users/name
      • -l 监听地址(默认监听:9977
      • -d 自定义备份目录地址(默认当前运行目录)
  • [可选] 服务卸载

    • Mac/Linux: ./backup-x -s uninstall
    • Win(打开cmd): .\backup-x.exe -s uninstall
  • 登录 http://127.0.0.1:9977 并配置

    avatar

备份脚本参考

  • postgres

    说明 备份脚本
    备份单个 PGPASSWORD="password" pg_dump --host 192.168.1.11 --port 5432 --dbname db-name --user postgres --clean --create --file #{DATE}.sql
    备份全部 PGPASSWORD="password" pg_dumpall --host 192.168.1.11 --port 5432 --user postgres --clean --file #{DATE}.sql
    还原 psql -U postgres -f 2021-11-12_10_29.sql
  • mysql/mariadb

    说明 备份脚本
    备份单个 mysqldump -h192.168.1.11 -uroot -p123456 db-name > #{DATE}.sql
    备份全部 mysqldump -h192.168.1.11 -uroot -p123456 --all-databases > #{DATE}.sql
    还原 mysql -uroot -p123456 db-name <2021-11-12_10_29.sql
  • 文件

    说明 备份脚本
    tar压缩备份 tar -zcvf #{DATE}.tar.gz /home/projects
    还原 tar -zxvf 2021-11-12_10_29.tar.gz

webhook

  • 支持webhook, 备份更新成功或不成功时, 会回调填写的URL

  • 支持的变量

    变量名 说明
    #{projectName} 项目名称
    #{fileName} 备份后的文件名称
    #{fileSize} 文件大小 (MB)
    #{result} 备份结果(成功/失败)
  • RequestBody为空GET请求,不为空POST请求

  • Server酱: https://sc.ftqq.com/[SCKEY].send?text=#{projectName}项目备份#{result},文件名:#{fileName},文件大小:#{fileSize}

  • Bark: https://api.day.app/[YOUR_KEY]/#{projectName}项目备份#{result},文件名:#{fileName},文件大小:#{fileSize}

  • 钉钉:

    • 钉钉电脑端 -> 群设置 -> 智能群助手 -> 添加机器人 -> 自定义
    • 只勾选 自定义关键词, 输入的关键字必须包含在RequestBody的content中, 如:项目备份
    • URL 中输入钉钉给你的 Webhook地址
    • RequestBody 中输入 {"msgtype": "text","text": {"content": "#{projectName}项目备份#{result},文件名:#{fileName},文件大小:#{fileSize}"}}

说明

  • 从 backup-db 发展而来,发现不仅仅支持数据库备份,所以改名 backup-x,备份届的 iphone-x
  • innobackupex是xtrabackup的软连接。 xtrabackup 使用C语言编译的备份工具,可以完整备份MySQL数据库,支持MyISAM、InnoDB和XtraDB存储引擎。 在备份的时候,备份工具主要执行两个任务来完成备份: ① 在后台启动一个日志拷贝线程。这个线程会监视InnoDB日志文件,当日志文件发生改变时,这个线程会将发生变化的数据块拷贝到备份目录下一个名为xtrabac

  • 当我们使用RMAN执行restore时,有时会碰到RMAN-06023: no backup or copy of datafile X found to restore 报错分析 这个报错的意思是,当数据库执行restore database/datafile时,找不到可用于restore指定文件的备份文件,有时候明明备份文件在指定目录里,就是无法用于restore,我们只要了解相关的原理,问题

  • 做网站最重要的是什么?数据!数据,是网站之本,备份,是每一个站长都应该重视的事情。但同时,备份也是一件繁琐和重复的事情。所以,这些事情,肯定能做到自动化的。 下面来介绍一下这个一键备份脚本 backup.sh。     总结一下 backup.sh 特点: 1、支持 MySQL/MariaDB/Percona 的数据库全量备份或选择备份; 2、支持指定目录或文件的备份; 3、支持加密备份文件(需安

  • ################################################################################## 冷备份(offline backup) : shutdown 一停二拷三启动 mkdir -p /home/oracle/coldbk/ select 'cp -v '||name||' /home/oracle/coldbk/' f

 相关资料
  • cPanel的这个功能对您的网站非常有用。 我们可以使用备份功能将我们的网站转移到新主机。 如果我们在网站文件或数据库中进行更改,我们可以创建网站备份。 因此,如果将来编辑时网站出现任何错误,我们可以随时恢复原状。 如果托管服务提供商出现任何问题,您将始终拥有该网站的副本。 cPanel Backup会创建整个网站或网站的一部分的压缩副本。 cPanel备份中有两种类型的备份。 完全备份 完全备份

  • 本文向大家介绍MySQL数据库备份以及常用备份工具集合,包括了MySQL数据库备份以及常用备份工具集合的使用技巧和注意事项,需要的朋友参考一下 一、数据库备份种类 按照数据库大小备份,有四种类型,分别应用于不同场合,下面简要介绍一下: 1.1完全备份 这是大多数人常用的方式,它可以备份整个数据库,包含用户表、系统表、索引、视图和存储过程等所有数据库对象。但它需要花费更多的时间和空间,所以,一般推荐

  • 主要内容:备份一个数据库,备份多个数据库,备份所有数据库数据库的主要作用就是对数据进行保存和维护,所以备份数据是数据库管理中最常用的操作。为了防止数据库意外崩溃或硬件损伤而导致的数据丢失,数据库系统提供了备份和恢复策略。 保证数据安全的最重要的一个措施就是定期的对数据库进行备份。这样即使发生了意外,也会把损失降到最低。 数据库备份是指通过导出数据或者复制表文件的方式来制作数据库的副本。当数据库出现故障或遭到破坏时,将备份的数据库加载到系统,从而使数据库

  • 和RDBMS一样,OrientDB也支持备份和恢复操作。 在执行备份操作时,它将使用ZIP算法将当前数据库的所有文件转换为压缩的zip格式。 通过启用自动备份服务器插件,可以自动利用此功能(备份)。 但是,根据必须知道何时使用备份以及何时使用导出的过程,对数据库进行备份或导出数据库是相同的。 在进行备份时,它会创建一个数据库的一致副本,所有进一步的写入操作都会被锁定并等待完成备份过程。 在这个操作

  • 问题内容: 如何通过使用PHP代码备份mysql数据库并将其下载为.sql文件 问题答案: 一个非常简单的解决方案将是(第一个示例):http : //www.php-mysql- tutorial.com/wikis/mysql-tutorials/using-php-to-backup-mysql- databases.aspx 自然,这只会对表进行数据转储。 您可以使用以下代码: http:

  • 在本章中,我们将研究Joomla中的Website backup 。 它允许备份文件,文件夹并在Joomla中重新打开它。 网站备份 以下是用于备份Joomla网站的简单步骤 - Step (1) - 单击Joomla管理员中的System → Global Configuration 。 您将看到以下屏幕。 Step (2) - 接下来,单击左侧边栏上的EJB - Easy Joomla Bac

  • 您可以使用cPanel备份向导逐步备份和还原cPanel网站。 为非高级用户创建了cPanel备份向导,以简化备份和还原过程。 要使用cPanel备份向导,请单击备份向导链接打开此界面,该链接可在cPanel主页的“文件”部分下找到。 进入备份向导后,您可以通过下面显示的类似界面创建备份或还原备份 - 要使用此备份向导,有3个重要步骤 - 如果您需要下载您网站的备份 Step 1 - 选择备份。

  • 在本章中,我们将研究Drupal中的Site Backup 。 它有助于备份文件和数据库文件。 Drupal中的备份文件 Drupal中的备份数据库 Drupal中的备份文件 要获取Drupal的备份文件,您需要在系统上安装FileZilla Client。 以下是Drupal中文件备份的简单步骤 - Step 1 - 打开FileZilla Client,如以下屏幕所示。 Step 2 - 输入