首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

服务器定时备份

基础概念

服务器定时备份是指通过设定一个固定的时间点或时间间隔,自动对服务器上的数据进行备份。这种备份方式可以确保数据的安全性和完整性,防止因硬件故障、软件错误、人为误操作等原因导致的数据丢失。

相关优势

  1. 自动化:无需人工干预,节省时间和人力成本。
  2. 定期性:确保数据在固定的时间点被备份,减少数据丢失的风险。
  3. 可恢复性:在数据丢失或损坏时,可以快速恢复到备份时的状态。

类型

  1. 全量备份:备份服务器上的所有数据。
  2. 增量备份:仅备份自上次备份以来发生变化的数据。
  3. 差异备份:备份自上次全量备份以来发生变化的数据。

应用场景

  1. 数据库备份:保护重要的数据库数据,防止数据丢失。
  2. 文件系统备份:备份服务器上的重要文件和目录。
  3. 虚拟机备份:备份整个虚拟机的状态和数据。

常见问题及解决方法

问题1:备份任务未按计划执行

原因

  • 定时任务配置错误。
  • 系统时间不正确。
  • 备份脚本或程序存在问题。

解决方法

  1. 检查定时任务的配置,确保时间和命令正确无误。
  2. 校准系统时间,确保其与实际时间一致。
  3. 检查备份脚本或程序,确保其逻辑正确且可执行。

问题2:备份数据不完整或损坏

原因

  • 磁盘空间不足。
  • 网络问题导致数据传输中断。
  • 备份程序存在bug。

解决方法

  1. 检查磁盘空间,确保有足够的空间进行备份。
  2. 检查网络连接,确保备份过程中网络稳定。
  3. 更新或修复备份程序,确保其正常运行。

问题3:备份恢复失败

原因

  • 备份文件损坏。
  • 恢复环境与备份环境不一致。
  • 恢复脚本或程序存在问题。

解决方法

  1. 检查备份文件的完整性,确保其未损坏。
  2. 确保恢复环境与备份环境一致,包括操作系统、软件版本等。
  3. 检查恢复脚本或程序,确保其逻辑正确且可执行。

示例代码(使用Linux的cron进行定时备份)

假设我们要每天凌晨2点对/var/www/html目录进行全量备份,并将备份文件保存到/backup目录下。

  1. 创建备份脚本
代码语言:txt
复制
#!/bin/bash
BACKUP_DIR="/backup"
DATE=$(date +%Y%m%d%H%M%S)
tar -czf $BACKUP_DIR/backup_$DATE.tar.gz /var/www/html
  1. 设置定时任务
代码语言:txt
复制
crontab -e

在打开的编辑器中添加以下行:

代码语言:txt
复制
0 2 * * * /path/to/backup_script.sh

保存并退出编辑器。

参考链接

通过以上步骤,你可以实现服务器定时备份,并解决常见的备份问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

服务器定时备份数据库

在9月份的时候,心血来潮考了考 swoole苦工"滑稽园扛把子" 一下 :  在服务器中,你是如何定时备份数据库的?...发现他答的并不好,只说了如何操作宝塔备份数据库,所以只能本人自己写一篇了 宝塔备份 首先,宝塔备份是一定可以的,而且是无脑型,也很简单: 这样就可以了,简简单单 那有人会说,我不用宝塔,该怎么备份呢?...当然也是可以的 crontab脚本备份 首先我们要了解数据库的备份命令: mysqldump工具备份 备份整个数据库 mysqldump -uroot -hhost -ppassword dbname ...backdb.sql 然后需要了解crontab的写法: 3 * * * *  /home/tioncico/crontab/test.sh 每小时的第3分钟,执行该sh文件 crontab详细说明可以看:linux定时任务...`date +%Y%m%d`.sql.gz 同时可以在定时任务的配置中增加日志输出(比如记录错误信息,记录成功状态): 3 * * * *  /home/tioncico/crontab/test.sh

3.8K20
  • VUTLR定时创建快照(Take Snapshot)备份服务器

    vultr服务器定时备份是需要另付费的,价格为服务器费用的20%。今天就教大家利用vultr的API来实现免费的定时备份功能。...由于目前VULTR快照(Snapshot)创建是限时免费的,而且功能也很强,几乎是100%还原(连密码都会备份还原)。...复制API key 和 服务器ID 连接到服务器,将任务添加到crontab定时执行即可 详细步骤 开启API 打开API开启地址:https://my.vultr.com/settings/#settingsapi...---- 获取服务器ID 其实这个很简单,点击需要备份服务器,查看网址,?SUBID后面的一串字符就是服务器ID。 例如:https://my.vultr.com/subs/?...---- 设置crontab定时任务 PS:以下内容全是在服务器进行,需要用Xshell或者其他sftp连接工具连接到服务器后,执行命令。

    1.7K40

    VUTLR定时创建快照(Take Snapshot)备份服务器

    本文目录 具体思路 详细步骤 开启API 获取服务器ID 设置crontab定时任务 一行命令 vultr服务器定时备份是需要另付费的,价格为服务器费用的20%。...今天就教大家利用vultr的API来实现免费的定时备份功能。 由于目前VULTR快照(Snapshot)创建是限时免费的,而且功能也很强,几乎是100%还原(连密码都会备份还原)。 ? ?...---- 获取服务器ID 其实这个很简单,点击需要备份服务器,查看网址,?SUBID后面的一串字符就是服务器ID。 例如:https://my.vultr.com/subs/?...---- 设置crontab定时任务 PS:以下内容全是在服务器进行,需要用Xshell或者其他sftp连接工具连接到服务器后,执行命令。...但是,我们的目的绝不是在服务器端用命令来创建快照(Snapshot),我们想要执行定时任务,就要用到crontab命令。

    2.2K50

    mysql定时备份任务

    简介 在生产环境上,为了避免数据的丢失,通常情况下都会定时的对数据库进行备份。而Linux的crontab指令则可以帮助我们实现对数据库定时进行备份。.../var/backups/mysql/$(date +%Y%m%d_%H%M%S).sql 备份文件,后面是文件名的格式 如果你没什么要求,单纯的只是想要备份,那么上面那个命令就可以帮你进行定时备份...如:晚上8点进行定时备份,但是却在晚上9点drop database,那么晚上8点到晚上9点这一个小时之内的数据却没有备份到。这时候就要使用binlog日志了。...晚上8点进行定时备份,但是却在晚上9点drop database,那么晚上8点到晚上9点这一个小时之内的数据却没有备份到。。...总结 因为mysql定时备份是在生产环境上必须的任务。是很常用的。所以我就迫不及待的写博客。当然也很感谢我同事的帮助。这篇文章已经写了三天了,因为我也是在不断地试错,不断的更新文章。

    1.9K20

    MySQL定时备份方案

    本片文章介绍的方案是利用Linux自身的crontab定时任务功能,定时执行备份数据库的脚本。...技术要点: 数据库备份dump命令 shell脚本 Linux定时任务crontab 数据备份dump 数据库都有一个导出数据库内数据和结构的命令,就是备份。.../加脚本名称 chmod命令参数含义-- + 代表添加某些权限 x 代表可执行权限 定时任务crontab crontab是Linux自带的一个定时任务功能,我们可以利用它每天凌晨执行一次dump_mysql.sh...crontab用法: crontab -l 查看定时任务列表 crontab -e 编辑(新增/删除)定时任务 运行crontab -e命令,打开一个可编辑的文本,输入00 01 * * * /app/...内容解释: 00 01 * * * /app/dump_mysql.sh 分两部分看, 第一部分00 01 * * * 是定时任务的周期,第二部分/app/dump_mysql.sh到时间做的事情。

    1.8K10

    如何定时备份 MongoDB oplog

    脚本逻辑 我写了一个小脚本,每隔5分钟执行1次,用于备份MongoDB实例的oplog,脚本逻辑如下: 1 检测是否存在last_oplog_ts文件 如果文件不存在则创建,并写入rs.printReplicationInfo...3 执行oplog备份 如果第一次mongodump执行失败,间隔60s后再次尝试,如果还失败则退出 对备份出的oplog目录进行打包压缩。...每次执行脚本都会用当前的oplog first event time和其进行比较,这个差值t1可以粗略看做oplog的"可用容量":即按照当前oplog生成速度,上次oplog备份后生成的oplog,将在...如果t1小于阈值,则更新临时文件并执行1次oplog备份。 oplog本身是幂等的,每个备份文件的时间段即便有重叠,在重放的时候也能保证数据完整。 3.

    1.5K20

    GitLab定时备份及恢复

    参考 Gitlab备份、迁移、恢复和升级 背景 项目中使用linux服务器作为Gitlab仓储,需要每天自动定时备份(数据备份到windows上),防止服务器磁盘损坏造成数据数据丢失。...GitLab备份操作 gitlab-rake gitlab:backup:create 执行之后会默认在/var/opt/gitlab/backups文件夹下产生备份文件 [root@master...gitlab_backup.tar 1596532193_2020_08_04_13.1.4_gitlab_backup.tar 2.配置linux访问windows免密登录 方便Shell脚本scpGitLab备份文件...配置Linux定时任务 crontab -e 0 1 * * * /opt/gitlabscp.sh 如此配置可设置每天凌晨1点,定时从gitlab服务器向windows主机导出备份文件 注意:...linux 的crontab cron表达式最小单位为分钟 5.gitlab恢复 停止相关服务 gitlab-ctl stop unicorn gitlab-ctl stop sidekiq 修改备份文件权限

    1.5K40

    Linux VPS定时备份服务器网站数据到Github私人仓库

    然后就可以拿来折腾下了,让其充分发挥下作用,这里我们可以用来备份下网站或者服务器一些数据,方法就大概说下。...1、配置Git SSH密钥 由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以必须要让github仓库认证你SSH key,在操作之前,需要先在服务器上生成SSH key。...3、配置本地仓库 由于博主是用来备份网站,所以需要备份文件夹为/home/www.zalou.cn,也就是把该文件夹定为本地仓库,使用命令: #进入需要备份的文件夹 cd /home/www.zalou.cn...4、初次备份 #进入备份的文件夹 cd /home/www.zalou.cn #把目录下所有文件更改状况提交到暂存区,包括增,删,改。...然后可以看到仓库的备份文件了。 5、设置定时备份 在根目录先新建一个bash脚本: nano ~/gitback.sh 代码如下: #!

    4.8K41

    Linux VPS定时备份服务器网站数据到Github私人仓库

    然后就可以拿来折腾下了,让其充分发挥下作用,这里我们可以用来备份下网站或者服务器一些数据,方法就大概说下。...1、配置Git SSH密钥 由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以必须要让github仓库认证你SSH key,在操作之前,需要先在服务器上生成SSH key。...3、配置本地仓库 由于博主是用来备份网站,所以需要备份文件夹为/home/www.moerats.com,也就是把该文件夹定为本地仓库,使用命令: #进入需要备份的文件夹 cd /home/www.moerats.com...4、初次备份 #进入备份的文件夹 cd /home/www.moerats.com #把目录下所有文件更改状况提交到暂存区,包括增,删,改。...然后可以看到仓库的备份文件了。 5、设置定时备份 在根目录先新建一个bash脚本: nano ~/gitback.sh 代码如下: #!

    4.1K00

    Mysql数据库定时备份

    Mysql数据库定时备份 背景 首先我不是DBA,我只是个后端开发,有一个自己的网站,突然有一天,听到有个同学说,他们数据库被黑了,别人黑完删库跑路了,请教我怎么恢复,同学是非开发人员,其实我很想说我也不会...我快速百度了下怎么恢复,网上教我们的手段一般有: 数据库备份了么? 同学说没有,pass。 日志开启了么? 同学说没有,pass。 你数据库是MyIsam,看看黑客有没有把文件转移?...所以,我赶紧把我的mysql数据库备份了一下,用最简单的方式。 内容过于简单,可能会引起部分人群不适。...简单备份 mysqldump -u root -p feiyun > feiyun.sql.20190507 这里,feiyun 是数据库名,-u 是指定用户名, -p是输入密码 , -> 重定向到文件...定时备份 cron中添加一个作业 # crontab –e 0 1 * * * /root/dump/backup.sh 每天1点执行下backup.sh backup.sh: #!

    3.8K30
    领券