精华内容
下载资源
问答
  • Rsync 实现服务器数据备份

    万次阅读 2021-05-20 09:03:30
    Rsync 是 Linux 系统下的数据镜像备份工具 ...

    Rsync 是 Linux 系统下的数据镜像备份工具,使用快速增量备份工具 Remote Sync 可以远程同步,可以在不同主机之间进行同步,可实现全量备份与增量备份,保持链接和权限,传输前执行压缩,因此非常适合用于架构集中式备份或异地备份等应用。
           官方网站:https://rsync.samba.org/

    与 SCP 的比较:scp 无法备份大量数据,类似 Windows 的复制。而 rsync 边复制,边统计,边比较。

    • Rysnc 特性和优点
    • 可以镜像保存整个目录树和文件系统。
    • 可以很容易做到保持原来文件的属性、权限、时间、软硬链接等等。
    • 无须特殊权限即可安装。
    • 快速:第一次同步时 rsync 复制全部内容,但在下一次只传输修改过的文件。
    • 压缩传输:rsync 在传输数据的过程中可以实行压缩及解压缩操作,因此可以使用更少的带宽。
    • 安全性:可以使用 scp、ssh 等方式来传输文件,当然也可以通过直接的 socket 连接。选择性保持:符号连接,硬链接,文件属性,权限,时间等。
    • 常见备份分类
    • 完整备份:每次都备份所有数据。
    • 差异备份:每次备份和第一次完全备份相比的“差异”部分数据。

    • 增量备份:除第一次备份以外,每次只备份增长数据。

    • RSYNC 原理
      运行模式和端口:
      采用 C/S 模式(客户端/服务器模式)[ 实际上是一个点到点的传输,直接使用 rsync 命令即可完成 ]
      rsync 监听的端口:873
    • 四个名词的解释:
      发起端:负责发起 rsync 同步操作的客户机叫做发起端,通知服务器我要备份你的数据。
      备份源:负责响应来自客户机 rsync 同步操作的服务器叫做备份源,需要备份的服务器。
      服务端:运行 rsyncd 服务,一般来说,需要备份的服务器。
      客户端:存放备份数据。

    • 数据同步方式:
    • 推 push:一台主机负责把数据传送给其他主机,服务器开销很大,比较适合后端服务器少的情况。
      拉 pull:所有主机定时去找一台主机拉数据,可能就会导致数据缓慢。
    • 从 数据源服务器 往 备份服务器  push (推,相当于备份操作)

    • 从 数据源服务器 往 备份服务器  pull   (拉,相当于还原操作)

    • 推:目的主机配置为 rsync 服务器,源主机周期性的使用 rsync 命令把要同步的目录推过去(需要备份的机器是客户端,存储备份的机器是服务端)。
      拉:源主机配置为 rsync 服务器,目的主机周期性的使用 rsync 命令把要同步的目录拉过来(需要备份的机器是服务端,存储备份的机器是客户端)。
      两种方案,rsync 都有对应的命令来实现。
      rsync 命令示例说明 push 和 pull

    • CentOS 7 系统之前 xinetd 管理 Rsync 工作原理

    • 使用 rsync 来同步是先通过 xinetd 监听 873 号端口,如果 rsync 进来的是 873 号端口,那么xinetd 就会通知它所管辖的 rsync 服务来做回应,接下来就是 rsync 俩服务于之间的通讯。
    • rsync 命令的基本用法:
      格式:rsync 【选项】 源文件 目标文件

    • 常见的选项:
      -a,--archive(存档) 归档模式,表示以递归的方式传输文件,并且保持文件属性,等同于加了参数-rlptgoD
      -v:显示 rsync 过程中详细信息。

      -r,–recursive 对子目录以递归模式处理
      -l,--links 表示拷贝链接文件
      -p , --perms 表示保持文件原有权限
      -t , --times 表示保持文件原有时间
      -g , --group 表示保持文件原有属用户组
      -o , --owner 表示保持文件原有属主
      -D , --devices 表示块设备文件信息
      -z , --compress 表示压缩传输
      -H 表示硬连接文件
      -A 保留 ACL 属性信息
      -P 显示传输进度
      --delete 删除那些目标位置有而原始位置没有的文件

      例: rsync --delete /原始位置(要同步的数据) username@192.168.2.2:/目标位置

    • --password-file=/etc/rsync.passwd   从文件读取用户名、密码


    • 实验环境 

    • 数据服务器 CentOS 8.3.2011   192.168.2.2

      备份服务器  CentOS 7.8.2003  192.168.2.3
    • iptables、selinux 均为关闭状态,firewalld 已经添加 873 端口

    • 备份(push) C8 的 /usr/share/nginx/html/ 目录下所有文件到 C7 的/bak/databak

    • sudo rsync -avP --delete /usr/share/nginx/html/ root@192.168.2.3:/bak/databak  PS:注意这里的斜杠,不然会将 html 目录一同备份!

    • -a,--archive(存档) 归档模式,表示以递归的方式传输文件,并且保持文件属性,等同于加了参数-rlptgoD
      -z , --compress 表示传输前压缩
      -P 显示传输进度
      --delete 删除那些目标位置有而原始位置没有的文件,保障源文件和目标文件一致

    • 在备份服务器端查看文件数量、大小及权限是否一致

    • 移除 C8 服务器端的文件,从 C7 pull 还原

    • 执行 还原 (pull)操作
    • rsync -avzP root@192.168.2.3:/bak/databak/ /usr/share/nginx/html/ 
    • PS:注意这里的斜杠,不然会将 databak 目录一同还原!

    • 不加 / 会将 html 一同备份


    • 使用 ssh 密钥实现无交互备份。做成脚本,将 C8 的数据,定期备份到 C7 上
    • 首先实现 ssh 密钥无密码登陆

    • 编写 shell 脚本 实现自动备份

    • 加入 crontab 计划任务


    • 安装  Rsync 服务,实现非系统用户备份

    • 需要关闭 selinux,否则即使创建/etc/rsyncd.conf 文件之后去启动服务也不会生效。

    • centos6/8 系统使用如下方法启动 rsync

    • yum -y install xinetd rsync
      vim /etc/rsyncd.conf

    • #Rsync server
      uid = root                         #运行进程的身份
      gid = root                         #运行进程的组
      address =192.168.2.2
      port = 873 
      use chroot = yes                   #是否锁定家目录
      max connections = 100              #最大连接数
      timeout = 600                      #超时时间
      log file = /var/log/rsyncd.log     #日志文件
      ignore errors                      #忽略错误
      read only = false                  #设置服务端文件读写权限
      hosts allow = 192.168.2.0/24       #*代表所有
      hosts deny = 0.0.0.0/32
      [wwwroot] 
      path = /usr/share/nginx/html/
      comment = used for web-data root 
      list = yes 
      auth users = rsyncuser 
      secrets file = /etc/rsync.passwd

    • vim /etc/rsync.passwd
      rsyncuser:password123

    • 必须更改密码文件权限为600或者400!

    • chmod 600 /etc/rsync.passwd

    • 临时开启 rsync 服务

    • rsync --daemon --config=/etc/rsyncd.conf
      netstat -antpu|grep 873

    • 配置 rsync 开机自启动

    • vim /etc/xinetd.d/rsync

    # default: off
    #  description: rsyncserver 
    #  allows crc checksumming etc.
    service rsync

    {
           
    disable     = no
            flags           =IPv4
            socket_type     =stream
            wait            = no
            user            = root
            server          = /usr/bin/rsync
           
    server_args     = --daemon --config=/etc/rsyncd.conf
            log_on_failure  +=USERID                                                                                                                                                               
    }

    • systemctl enable xinetd --now

    • 重启验证

    • 测试

    • 在 C7 上 安装 rsync 从 C8 pull 数据 

    • 创建密码文件
    • vim /etc/rsync.passwd 
      password123
    • 注意文件权限必须为 600或者400
    • chmod 600 /etc/rsync.passwd

    • rsync -avzP rsyncuser@192.168.2.2::wwwroot /bak/databak/ --delete --password-file=/etc/rsync.passwd

    • 测试 
    • 删除 C8 上的源文件,从 C7 恢复


    • rsync+sersync 实现数据实时同步

    • C8 安装 sersync、C7 安装 rsync 服务
      sersync 服务器(数据源,源机器):C8    192.168.2.2
      rsync 客户端(备份端,目标机器):C7     192.168.2.3
    • 特点

    • sersync 可以记录被监听目录中发生变化的(增,删,改)具体某个文件或目录的名字。
    • rsync 在同步时,只同步发生变化的文件或目录(每次发生变化的数据相对整个同步目录数据来说很小,rsync 在遍历查找对比文件时,速度很快),因此效率很高。
    • 同步过程和原理

    • 用户实时的往 sersync 服务器上写入更新文件数据。
    • 此时需要在同步主服务器(C8)上配置 sersync 服务。
    • 在另一台服务器(C7)开启 rsync 守护进程服务,以同步拉取来自 sersync 服务器上的数据。
    • 或者在另一台服务器(C7)开启 rsync 守护进程服务,使 sersync  (C8) push 文件过来,生产环境一般采取此种方式。

    • 将解压好的文件夹更名
    • mv ./GNU-Linux-x86 ./sersync
    • 进入文件夹备份原始文件
    • cd sersync/
    • cp confxml.xml confxml.xml.bak

    • 编辑 配置文件
    • vim confxml.xml
    • 修改配置文件中的以下内容:
      <sersync>
       <localpath watch="/usr/share/nginx/html">          #本地同步数据目录。
       <remote ip="192.168.2.3" name="wwwroot"/>     #备份服务器IP地址以及 rsync 模块名称.
      <rsync>
       <commonParams params="-artuz"/>
       <auth start="true" users="rsyncuser" passwordfile="/etc/rsync.passwd"/>   #认证部分(rsync 密码认证)
       <userDefinedPort start="false" port="874"/><!-- port=874 --> <timeout start="false" time="100"/><!-- timeout=100 -->
       <ssh start="false"/>

    • 开启 sersync 守护进程同步数据。
      /home/gf/sersync/sersync2 -d -r -o /home/gf/sersync/confxml.xml
    • -d  在后台运行
    • -r   先执行一遍完整同步
    • -o  指定配置文件

    • 然后在 C7 上安装、启动 rsyncd

    • yum -y install xinetd rsync
    • systemctl enable xinetd --now
    • vim /etc/xinetd.d/rsync
    • # default: off
      #  description: rsyncserver 
      #  allows crc checksumming etc.
      service rsync

      {
              disable     = no
              flags           =IPv4
              socket_type     =stream
              wait            = no
              user            = root
              server          = /usr/bin/rsync
          server_args     = --daemon --config=/etc/rsyncd.conf
          log_on_failure  +=USERID
      }

    • 编辑 /etc/syncd.conf

    • 修改 C8 和 C7 的 /etc/rsync.passwd

    • 注意该文件的属性必须是 600,名称必须一样!!

    • 编写脚本监控服务运行

    • 在 C8 的/usr/share/nginx/html 目录 增加、删除、或改目录文件。
      查看 C7 /web-back 目录的变化
      watch ls -l

    • 设置 sersync 监控开机自动执行
      编辑 rc.local 文件,在最后添加一行。

    • vim /etc/rc.d/rc.local
      /home/gf/sersync/sersync2 -d -r -o /home/gf/sersync/confxml.xml   #设置开机自动运行脚本。
      chmod 755 /etc/rc.d/rc.local     #添加执行权限。

    • 重启验证

    • 使用脚本监控 sersync 是否正常运行
      vim /opt/check_sersync.sh       #编辑脚本,添加以下代码。
      #!/bin/sh
      sersync="/home/gf/sersync/sersync2"
      confxml="/home/gf/sersync/confxml.xml"
      status=$(ps aux |grep 'sersync2'|grep -v 'grep'|wc -l)
      if [[ $status -eq 0 ]]; then
      $sersync -d -r -o $confxml &
      else
      exit 0;
      fi

    • 加入计划任务

    • 重启验证


    rsync 常见错误与解决方法整理

    • rsyncd.log日志文件里面或.err文件里面查看
    • 注意windows下面我们需要给SvcwRsync用户,管理同步目录的所有权限,基本上这样就可以了
    • 问题一:
    • @ERROR: chroot failed
    • rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]
    • 原因:
    • 服务器端的目录不存在或无权限,创建目录并修正权限可解决问题。
    • 问题二:
    • @ERROR: auth failed on module tee
    • rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]
    • 原因:
    • 服务器端该模块(tee)需要验证用户名密码,但客户端没有提供正确的用户名密码,认证失败。
    • 提供正确的用户名密码解决此问题。
    • 问题三:
    • @ERROR: Unknown module ‘tee_nonexists'
    • rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]
    • 原因:
    • 服务器不存在指定模块。提供正确的模块名或在服务器端修改成你要的模块以解决问题。
    • 问题1:
    • 在client上遇到问题:
    • rsync -auzv --progress --password-file=/etc/rsync.pas root@192.168.133.128::backup /home/
    • rsync: could not open password file "/etc/rsync.pas": No such file or directory (2)
    • Password:
    • @ERROR: auth failed on module backup
    • rsync error: error starting client-server protocol (code 5) at main.c(1506) [Receiver=3.0.7]
    • 遇到这个问题:client端没有设置/etc/rsync.pas这个文件,而在使用rsync命令的时候,加了这个参数--
    • password-file=/etc/rsync.pas
    • 问题2:
    • rsync -auzv --progress --password-file=/etc/rsync.pas root@192.168.133.128::backup /home/
    • @ERROR: auth failed on module backup
    • rsync error: error starting client-server protocol (code 5) at main.c(1506) [Receiver=3.0.7]
    • 遇到这个问题:client端已经设置/etc/rsync.pas这个文件,里面也设置了密码111111,和服务器一致,但是
    • 服务器段设置有错误,服务器端应该设置/etc/rsync.pas ,里面内容root:111111 ,这里登陆名不可缺少
    • 问题3:
    • rsync -auzv --progress --password-file=/etc/rsync.pas root@192.168.133.128::backup /home/
    • @ERROR: chdir failed
    • rsync error: error starting client-server protocol (code 5) at main.c(1506) [Receiver=3.0.7]
    • 遇到这个问题,是因为服务器端的/home/backup 其中backup这个目录并没有设置,所以提示:chdir failed
    • 问题4:
    • rsync: write failed on "/home/backup2010/wensong": No space left on device (28)
    • rsync error: error in file IO (code 11) at receiver.c(302) [receiver=3.0.7]
    • rsync: connection unexpectedly closed (2721 bytes received so far) [generator]
    • rsync error: error in rsync protocol data stream (code 12) at io.c(601) [generator=3.0.7]
    • 磁盘空间不够,所以无法操作。
    • 可以通过df /home/backup2010 来查看可用空间和已用空间
    • 问题5:网络收集问题
    • 1、权限问题
    • 类似如下的提示:rsync: opendir "/kexue" (in dtsChannel) failed: Permission denied (13)注意查看同步的目录权限是否为755
    • 2、time out
    • rsync: failed to connect to 203.100.192.66: Connection timed out (110)
    • rsync error: error in socket IO (code 10) at clientserver.c(124) [receiver=3.0.5]
    • 检查服务器的端口netstat –tunlp,远程telnet测试。
    • 可能因为客户端或者服务端的防火墙开启 导致无法通信,可以设置规则放行 rsync(873端口) 或者直接关闭防火墙。
    • 还有一种在同步过程中可能会提示没有权限 (将同步目录加上SvcwRsync全部权限即可,更简单的方法就是将SvcwRsync设为管理员即可)
    • 3、服务未启动
    • rsync: failed to connect to 10.10.10.170: Connection refused (111)
    • rsync error: error in socket IO (code 10) at clientserver.c(124) [receiver=3.0.5]
    • 启动服务:rsync --daemon --config=/etc/rsyncd.conf
    • 4、磁盘空间满
    • rsync: recv_generator: mkdir "/teacherclubBackup/rsync……" failed: No space left on device (28)
    • *** Skipping any contents from this failed directory ***
    • 5、Ctrl+C或者大量文件
    • rsync error: received SIGINT, SIGTERM, or SIGHUP (code 20) at rsync.c(544) [receiver=3.0.5]
    • rsync error: received SIGINT, SIGTERM, or SIGHUP (code 20) at rsync.c(544) [generator=3.0.5]
    • 说明:导致此问题多半是服务端服务没有被正常启动,到服务器上去查查服务是否有启动,然后查看下 /var/run/rsync.pid 文件是否存在,最干脆的方法是杀死已经启动了服务,然后再次启动服务或者让脚本加入系统启动服务级别然后shutdown -r now服务器
    • 6、xnetid启动
    • rsync: read error: Connection reset by peer (104)
    • rsync error: error in rsync protocol data stream (code 12) at io.c(759) [receiver=3.0.5]
    • 查看rsync日志
    • rsync: unable to open configuration file "/etc/rsyncd.conf": No such file or directory
    • xnetid查找的配置文件位置默认是/etc下,根据具体情况创建软链接。例如:
    • ln -s /etc/rsyncd/rsyncd.conf /etc/rsyncd.conf
    • 或者更改指定默认的配置文件路径,在/etc/xinetd.d/rsync配置文件中。
    • Rsync configure:
    • 配置一:
    • ignore errors
    • 说明:这个选项最好加上,否则再很多crontab的时候往往发生错误你也未可知,因为你不可能天天去看每时每刻去看log,不加上这个出现错误的几率相对会很高,因为任何大点的项目和系统,磁盘IO都是一个瓶颈
    • Rsync error:
    • 错误一:
    • @ERROR: auth failed on module xxxxx
    • rsync: connection unexpectedly closed (90 bytes read so far)
    • rsync error: error in rsync protocol data stream (code 12) at io.c(150)
    • 说明:这是因为密码设置错了,无法登入成功,检查一下rsync.pwd,看客服是否匹配。还有服务器端没启动rsync 服务也会出现这种情况。
    • 错误二:
    • password file must not be other-accessible
    • continuing without password file
    • Password:
    • 说明:这是因为rsyncd.pwd rsyncd.sec的权限不对,应该设置为600。如:chmod 600 rsyncd.pwd
    • 错误三:
    • @ERROR: chroot failed
    • rsync: connection unexpectedly closed (75 bytes read so far)
    • rsync error: error in rsync protocol data stream (code 12) at io.c(150)
    • 说明:这是因为你在 rsync.conf 中设置的 path 路径不存在,要新建目录才能开启同步
    • 错误四:
    • rsync: failed to connect to 218.107.243.2: No route to host (113)
    • rsync error: error in socket IO (code 10) at clientserver.c(104) [receiver=2.6.9]
    • 说明:防火墙问题导致,这个最好先彻底关闭防火墙,排错的基本法就是这样,无论是S还是C,还有ignore errors选项问题也会导致
    • 错误五:
    • @ERROR: access denied to www from unknown (192.168.1.123)
    • rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
    • rsync error: error in rsync protocol data stream (code 12) at io.c(359)
    • 说明:此问题很明显,是配置选项host allow的问题,初学者喜欢一个允许段做成一个配置,然后模块又是同一个,致使导致
    • 错误六:
    • rsync error: received SIGINT, SIGTERM, or SIGHUP (code 20) at rsync.c(244) [generator=2.6.9]
    • rsync error: received SIGUSR1 (code 19) at main.c(1182) [receiver=2.6.9]
    • 说明:导致此问题多半是服务端服务没有被正常启动,到服务器上去查查服务是否有启动,然后查看下 /var/run/rsync.pid 文件是否存在,最干脆的方法是杀死已经启动了服务,然后再次启动服务或者让脚本加入系统启动服务级别然后shutdown -r now服务器
    • 错误七:
    • rsync: read error: Connection reset by peer (104)
    • rsync error: error in rsync protocol data stream (code 12) at io.c(604) [sender=2.6.9]
    • 说明:原数据目录里没有数据存在
    • rsync 错误与解决方法整理补充篇

    • 查看系统日志
    • 命令:cat /var/log/messages
    • 问题一:
    • @ERROR: auth failed on module bachup
    •  rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]
    • 原因:服务器端该模块(backup)需要验证用户名密码,但客户端没有提供正确的用户名密码,认证失败。  提供正确的用户名密码解决此问题。 

    • 问题二:110错误 -time out
    • rsync: failed to connect to 203.100.192.66: Connection timed out (110) 
    • rsync error: error in socket IO (code 10) at clientserver.c(124) [receiver=3.0.5]
    • 原因:
    • 检查服务器的端口netstat –tunlp,远程telnet测试。 可能因为客户端或者服务端的防火墙开启 导致无法通信,可以设置规则放行 rsync(873端口) 或者直接关闭防火墙。 
    • 在这里博主是重启过服务器,然后就报110了,直接开启rsync服务就行。
    • 命令:service rsyncd start
    • 问题三:113错误 -防火墙
    • rsync: failed to connect to 218.107.243.2: No route to host (113) rsync error: error in socket IO (code 10) at clientserver.c(104) [receiver=2.6.9]
    • 原因:
    • 防火墙问题导致,这个很简单,关闭防火墙就可以。不过博主还是被困在这里几个小时,因为linux防火墙分两种:
    • -iptable和-firewall
    • 认识到这个问题首先查看系统的防火墙种类,查看防火墙状态即可
    • service iptable status
    • firewall-cmd --state
    • 确定防火墙种类后再按对应方法将防火墙关闭即可。
    • 问题四:1516错误
    • @ERROR: auth failed on module backup
    • rsync error: error starting client-server protocol (code 5) at main.c(1516) [Receiver=3.0.9]

    • 解决:这个问题错误差别很大,可查看系统日志查看错误,再搜索解决方法。
    • 注意:一般这种情况都建立在可以连通的基础。去服务端查看系统日志,可以查看相关错误。
    • 命令:cat /var/log/massages
    • cat /var/log/rsyncd.log
    展开全文
  • 几种常见数据备份方案

    万次阅读 2014-10-31 14:41:40
    今天,我们不了多备份,而是想和大家简单聊聊常见数据备份方案。    综述     Host-Based备份方式:     Host-Based是传统的数据备份的结构这种结构中磁带库直接接在服务器上,而且只为该服务器提供...

    最近一直在使用木浪科技的多备份进行网站的备份,这是一款全新的互联网产品,感觉在便捷性和有效性方面都好于传统的数据备份方案。向大家推荐。

    今天,我们不了多备份,而是想和大家简单聊聊常见的数据备份方案。

     

      综述 

     

      Host-Based备份方式

     

      Host-Based是传统的数据备份的结构这种结构中磁带库直接接在服务器上,而且只为该服务器提供数据备份服务。在大多数情况下,这种备份大多是采用服务器上自带的磁带机,而备份操作往往也是通过手工操作的方式进行的。 

     

      Host-Based备份结构的优点是数据传输速度快,备份管理简单;缺点是不利于备份系统的共享,不适合于现在大型的数据备份要求。 

     

      LAN-Based备份方式

     

      LAN-Based备份,在该系统中数据的传输是以网络为基础的。其中配置一台服务器作为备份服务器,由它负责整个系统的备份操作。磁带库则接在某台服务器上,在数据备份时备份对象把数据通过网络传输到磁带库中实现备份的。 

     

      LAN-Based备份结构的优点是节省投资、磁带库共享、集中备份管理;它的缺点是对网络传输压力大。 

     

      LAN-Free备份方式

     

      LAN-FreeServer-Free的备份系统是建立在SAN(存储区域网)的基础上的,其结构如下图所示。基于SAN的备份是一种彻底解决传统备份方式需要占用LAN带宽问题的解决方案。它采用一种全新的体系结构,将磁带库和磁盘阵列各自作为独立的光纤结点,多台主机共享磁带库备份时,数据流不再经过网络而直接从磁盘阵列传到磁带库内,是一种无需占用网络带宽 (LAN-Free) 的解决方案。 

     

      目前随着SAN技术的不断进步,LAN-Free的结构已经相当成熟,而Server-Free的备份结构则不太成熟。 

     

      LAN-Free的优点是数据备份统一管理、备份速度快、网络传输压力小、磁带库资源共享;缺点是投资高。 

     

      利用IBM Tivoly Storage Manager软件,配合IBM LTO等磁带库产品,可以实现以上各种备份方式。 

     

          数据备份方式的选择 

     

      目前数据备份主要方式有:LAN 备份、LAN Free备份和SAN Server-Free备份三种。LAN 备份针对所有存储类型都可以使用, LAN Free备份和SAN Server-Free备份只能针对SAN架构的存储。 

     

      基于LAN备份 

     

      传统备份需要在每台主机上安装磁带机备份本机系统,采用LAN备份策略,在数据量不是很大时候,可采用集中备份。一台中央备份服务器将会安装在 LAN 中,然后将应用服务器和工作站配置为备份服务器的客户端。中央备份服务器接受运行在客户机上的备份代理程序的请求,将数据通过 LAN 传递到它所管理的、与其连接的本地磁带机资源上。这一方式提供了一种集中的、易于管理的备份方案,并通过在网络中共享磁带机资源提高了效率。 

     

      LAN-Free备份 

     

      由于数据通过LAN传播,当需要备份的数据量较大,备份时间窗口紧张时,网络容易发生堵塞。在SAN环境下,可采用存储网络的LAN-Free 备份,需要备份的服务器通过SAN连接到磁带机上,在LAN-Free备份客户端软件的触发下,读取需要备份的数据,通过SAN备份到共享的磁带机。这种独立网络不仅可以使 LAN 流量得以转移,而且它的运转所需的 CPU 资源低于 LAN 方式,这是因为光纤通道连接不需要经过服务器的 TCP/IP 栈,而且某些层的错误检查可以由光纤通道内部的硬件完成。在许多解决方案中需要一台主机来管理共享的存储设备以及用于查找和恢复数据的备份数据库。 

     

      SAN Server-Free备份 

     

      LAN Free备份对需要占用备份主机的CPU资源,如果备份过程能够在SAN内部完成,而大量数据流无需流过服务器,则可以极大降低备份操作对生产系统的影响。SAN Server-Free备份就是这样的技术。 

     

      目前主流的备份软件,如IBM Tivoli Veritas,均支持上述三种备份方案。三种方案中,LAN备份数据量最小,对服务器资源占用最多,成本最低;LAN free备份数据量大一些,对服务器资源占用小一些,成本高一些;SAN Server-free备份方案能够在短时间备份大量数据,对服务器资源占用最少,但成本最高。中小客户可根据实际情况选择。 

     

      传统备份:黔驴技穷无奈何 

     

      在传统的备份模式下,每台主机都配备专用的存储磁盘或磁带系统,主机中的数据必须备份到位于本地的专用磁带设备或盘阵中。这样,即使一台磁带机 (或磁带库)处于空闲状态,另一台主机也不能使用它进行备份工作,磁带资源利用率较低。另外,不同的操作系统平台使用的备份恢复程序一般也不相同,这使得备份工作和对资源的总体管理变得更加复杂。 

     

      后来,产生一种克服专用磁带系统利用率低的改进办法:即磁带资源由一个主备份/恢复服务器控制,而备份和恢复进程由一些管理软件来控制。主备份服务器接收其他服务器通过局域网或广域网发来的数据,并将其存入公用磁盘或磁带系统中。这种集中存储的方式极大地提高了磁带资源的利用效率。但它也存在一个致命的不足:网络带宽将成为备份和恢复进程中的潜在瓶颈。 

     

         有没有一种更先进的解决方案,在备份的时候尽可能减小对系统资源的消耗,同时又保证系统的高可用性和灵活性呢

     

      LAN-free备份:平平常常第一招儿 

     

      办法之一采用LAN-free技术。所谓LAN-free,是指数据不经过局域网直接进行备份,即用户只需将磁带机或磁带库等备份设备连接到 SAN中,各服务器就可把需要备份的数据直接发送到共享的备份设备上,不必再经过局域网链路。由于服务器到共享存储设备的大量数据传输是通过SAN网络进行的,局域网只承担各服务器之间的通信(而不是数据传输)任务。 

     

      2种常见的实施手段 

     

      LAN-free有多种实施方式。通常,用户都需要为每台服务器配备光纤通道适配器,适配器负责把这些服务器连接到与一台或多台磁带机(或磁带库)相连的SAN上。同时,还需要为服务器配备特定的管理软件,通过它,系统能够把块格式的数据从服务器内存、经SAN传输到磁带机或磁带库中。 

     

      还有一种常用的LAN-free实施办法,在这种结构中,主备份服务器上的管理软件可以启动其他服务器的数据备份操作。块格式的数据从磁盘阵列通过SAN传输到临时存储数据的备份服务器的内存中,之后再经SAN传输到磁带机或磁带库中。 

     

      LAN-free备份不足之处 

     

      “人无完人”,LAN-free技术也存在明显不足。首先,它仍旧让服务器参与了将备份数据从一个存储设备转移到另一个存储设备的过程,在一定程度上占用了宝贵的CPU处理时间和服务器内存。还有一个问题是,LAN-free技术的恢复能力差强人意,它非常依赖用户的应用。许多产品并不支持文件级或目录级恢复,映像级恢复就变得较为常见。映像级恢复就是把整个映像从磁带拷回到磁盘上,如果您需要快速恢复某一个文件,整个操作将变得非常麻烦。 

     

      此外,不同厂商实施的LAN-free机制各不相同,这还会导致备份过程所需的系统之间出现兼容性问题。 

     

      LAN-free的实施比较复杂,而且往往需要大笔软、硬件采购费。 

     

          无服务器备份:锦上添花第二招儿 

     

      另外一种减少对系统资源消耗的办法是采用无服务器(Serverless)备份技术。它是LAN-free的一种延伸,可使数据能够在SAN结构中的两个存储设备之间直接传输,通常是在磁盘阵列和磁带库之间。这种方案的主要优点之一是不需要在服务器中缓存数据,显著减少对主机CPU的占用,提高操作系统工作效率,帮助企业完成更多的工作。 

     

      2种常见的实施手段 

     

      与LAN-free一样,无服务器备份也有几种实施方式。通常情况下,备份数据通过名为数据移动器的设备从磁盘阵列传输到磁带库上。该设备可能是光纤通道交换机、存储路由器、智能磁带或磁盘设备或者是服务器。数据移动器执行的命令其实是把数据从一个存储设备传输到另一个设备。实施这个过程的一种方法是借助于SCSI-3的扩展拷贝命令,它使服务器能够发送命令给存储设备,指示后者把数据直接传输到另一个设备,不必通过服务器内存。数据移动器收到扩展拷贝命令后,执行相应功能。 

     

      另一种方法就是利用网络数据管理协议(NDMP)。这种协议实际上为服务器、备份和恢复应用及备份设备等部件之间的通信充当一种接口。在实施过程中,NDMP把命令从服务器传输到备份应用中,而与NDMP兼容的备份软件会开始实际的数据传输工作,且数据的传输并不通过服务器内存。NDMP的目的在于方便异构环境下的备份和恢复过程,并增强不同厂商的备份和恢复管理软件以及存储硬件之间的兼容性。 

     

      无服务器备份的优势 

     

      无服务器备份与LAN-free备份有着诸多相似的优点。如果是无服务器备份,源设备、目的设备以及SAN设备是数据通道的主要部件。虽然服务器仍参与备份过程,但负担大大减轻,因为它的作用基本上类似交警,只用于指挥,不用于装载和运输,不是主要的备份数据通道。 

     

      无服务器备份技术具有缩短备份及恢复所用时间的优点。因为备份过程在专用高速存储网络上进行,而且决定吞吐量的是存储设备的速度,而不是服务器的处理能力,所以系统性能将大为提升。此外,如果采用无服务器备份技术,数据可以数据流的形式传输给多个磁带库或磁盘阵列。 

     

      至于缺点,虽然服务器的负担大为减轻,但仍需要备份应用软件(以及其主机服务器)来控制备份过程。元数据必须记录在备份软件的数据库上,这仍需要占用CPU资源。 

     

      与LAN-free一样,无服务器备份可能会导致上面提到的同样类型的兼容性问题。而且,无服务器备份可能难度大、成本高。最后,如果无服务器备份的应用要更广泛,恢复功能方面还有待更大改进。 

     

      平衡利弊再定夺 

     

      前面我们讨论了光纤通道环境下的LAN-free和无服务器备份技术,由于有些结构集成了基于IP的技术,譬如iSCSI,特别是随着将来IP存储技术在存储网络中占有的强劲优势,LAN-free和无服务器备份技术应用的解决方案将会变得更为普遍。 

     

      LAN-free和无服务器备份并非适合所有应用。如果您拥有的大型数据存储库必须7×24随时可用,无服务器备份或许是不错的选择。但必须确保您已经清楚恢复过程需要多长时间,因为低估了这点会面临比开始更为严重的问题。 

     

      另一方面,如果您拥有的大小适中的数据库可以容忍一定的停机时间,那么传统的备份和恢复技术也许是您比较不错的选择。

    展开全文
  • 数据备份与恢复、系统备份与恢复

    万次阅读 2018-04-17 22:56:58
    数据备份与恢复、系统备份与恢复一、数据备份与恢复1、什么是备份备份,即另外准备一– 为应付文件、数据丢失或损坏等可能出现的意外情况,将电子计算机存储设备中的数据复制到大容量存储设备中2、备份对象的类别...

    数据备份与恢复、系统备份与恢复

    一、数据备份与恢复

    1、什么是备份

    备份,即另外准备一

    – 为应付文件、数据丢失或损坏等可能出现的意外情况,将电子计算机存储设备中的数据复制到大容量存储设备中

    2、备份对象的类别

    系统备份

    – 针对整个操作系统进行备份

    – 当操作系统损坏或者无法启动时,能通过备份快速恢复

    数据备份

    – 针对用户的数据文件、应用软件、数据库进行备份

    – 当这些数据丢失或损坏时,也能通过备份恢复

    3、数据冷备份

    • 什么是冷备份

    – 指需要备份的文档不被占用的情况下执行备份的方式

    – 比如将数据库软件关闭,对数据库资料做备份

    • 冷备份的优缺点

    – 优点:简单快速、容易恢复到某个时间点、方便维护

    – 缺点:只能恢复到某个时间点、备份期间数据不便正常使用

    4、数据热备份

    • 什么是热备份

    – 指执行备份时不影响被备份文档正常使用的的方式

    – 比如数据库软件正运行,对数据库资料做备份

    • 热备份的优缺点

    – 优点:备份时间短、不影响数据使用、可达秒级恢复

    – 缺点:所有操作都会同步,包括“删除”

    二、Win10数据备份与还原

    1、Win10文件备份

       ① 开始 -- 设置 -- 更新和安全 -- 备份 -- 转到备份和还原

    -- 设置备份

       ② 指定保存的位置、需要备份的内容

       ③ 检查、保存设置并运行备份

       ④ 等待备份完成

    2、Win10文件备份还原

       ① 开始 -- 设置 -- 更新和安全 -- 备份 -- 转到备份和还原

    -- 还原我的文件

           ② 浏览文件夹 -- 找到并添加此前的备份 -- 选择要还原的位置(原始位置或其他位置)-- 执行还原操作

        3、专用数据恢复

               使用第三方的专用数据恢复软件,能针对删除、格式化、重分区

    等深度损坏执行恢复操作,比如EasyRecovery易恢复、FinalDate

    超级恢复、360文件恢复器、金山数据恢复等

    三、系统备份与恢复

         1、备份Win10系统

         1)常见的系统备份工具

           大都是基于Symantec的Ghost克隆技术实现

           -- U深度一键还原精灵

           -- 一键还原Onekey、一键ghost 等等

    2、一键还原工作方式

    1)U深度一键还原精灵、一键还原Onekey -- 在现有的Win10环境中运行,图形操作为主;

    2)一键ghost

        -- 硬盘版,为Win添加启动项,可支持独立运行环境

        -- U盘版,通过提前制作好的独立U盘启动

    3、制作Win10备份镜像


        等待备份过程


        检查备份结果

    实际备份过程中会执行压缩处理

    备份文件小远小于系统盘的数据大小。


       4、恢复Win10系统

       1)准备好系统备份(实现一键还原的前提条件)

            -- 提前制作了可用的系统备份文件(通常为.gho格式)

            -- 有些一键还原工具支持自定义备份位置


        2)恢复Win10操作系统(执行一键还原操作)

             -- 根据提示选择备份位置

             -- 确认后重启执行

        3)等待恢复过程


        4)确认恢复结果

             恢复完成后

             -- 系统盘C:\数据会还原到备份时的状态

             -- 后增加的数据都会丢失(还原有风险,操作需谨慎!!!!

    、磁盘及文件系统

    1、基本磁盘

    -- 传统磁盘,默认是基本磁盘

    -- 磁盘大小固定扩展不方便,数量受限

    2、动态磁盘(卷)windows 2000及其以后的操作系统支持动态磁盘,

    比基本磁盘有较强的可扩展性高可靠性高读写性能

    基本磁盘概述

    1、主分区:引导操作系统

    (基本磁盘最多建立3个主分区,只有一个主分区处于激活状态)

    2、扩展分区不能直接存储文件需要细分多个逻辑分区)。

       “扩展分区 + 主分区”数量不超过4个

    3、逻辑分区:在扩展分区内部划分逻辑分区(不能直接启动操作系统)

    4、基本磁盘的管理操作

       鼠标右击此电脑 -- 管理 -- 存储 -- 磁盘管理 -- 选中磁盘的未分配空间 --

    右键操作(新建简单卷)-- 选择大小 -- 确定

       选中磁盘的已建立的分区 -- 右击 -- 格式化

    1)创建主分区    2)创建展分区     3)创建逻辑分区

    六、动态磁盘

    1、鼠标右击基本磁盘 -- 转换为动态磁盘

    (除非删除所有简单卷,否则动态磁盘不能转为基本磁盘)

    2、新建简单卷

    3、扩展简单卷

    4、新建跨区卷

    需要至少两块动态磁盘

    容量是组成跨区卷的所有磁盘空间总和

    5、新建带区卷

    1成员容量大小是相同的;(2数据被均匀以带区形式跨磁盘交替分配

    3需要至少两块动态磁盘;(4容量是组成带区卷所有磁盘空间总和

    6、新建镜像卷

    1具备故障转换功能     2在两个物理磁盘上复制数据的容错卷

    3只需两块大小相同的磁盘;(4容量是组成镜像卷所有磁盘空间和的一半

    7、修复镜像卷

    步骤:

    ① 关机取出故障磁盘换入新磁盘② 启动计算机, 存储— 磁盘管理;

    ③ 初始化磁盘转换成动态磁盘

    ④ 右击之前镜像盘盘符— 选择删除镜像—选择丢失 — 删除镜像 — 确定

    右击失败的镜像卷—添加镜像

    8、新建RAID-5卷

    数据分散写入硬盘并建立一份奇偶校验数据信息

    具有较高磁盘利用率、读写性和可靠性

    至少需要三块磁盘空间相同的硬盘

    容量为磁盘数量-1

    9、修复RAID-5卷

    步骤:

    关机取出故障磁盘换入新磁盘

    启动计算机,管理工具— 计算机管理— 存储 — 磁盘管理

    初始化磁盘转换成动态磁盘

    右击之前RAID-5卷—修复卷

    、五种动态磁盘类型的对比

           

     

     

     

     

     

    建立扩展分区 -- 也可用命令敲击

    ① 执行Win + R --- Cmd 命令

    ② diskpart

    ③ select disk + 磁盘区(1、2、3)

    ④ Create partition extended size = 磁盘大小(如300M)

    ⑤ Exit

    展开全文
  • 同步两个数据库中的数据,在navicat中两种常见方法。一种是数据同步,这种方法在笔者之前的博客中已介绍;而另一种是数据库还原。 数据同步之前navicat会一步步的比对两个库中的数据,所以数据同步相比数据库...

     

    同步与还原

     

    同步两个数据库中的数据,在navicat中有两种常见的方法。一种是数据同步 ,这种方法在笔者之前的博客中已有介绍;而另一种是数据库还原。

    数据同步之前navicat会一步步的比对两个库中的数据,所以数据同步相比数据库还原会慢不少

     

     

    如何还原数据库备份

     

    1.新建备份

    首先找到一个指定的数据库,新建一个备份

     

     

    2.选择本地要还原的数据库备份文件

     

     

    3.配置还原信息,开始还原

    展开全文
  • mysqldump 常用备份选项,只备份数据或结构的方法常见选项: --all-databases, -A: 备份所有数据库 --databases, -B: 用于备份多个数据库,如果没有该选项,mysqldump 把第一个名字参数作为数据库名,后面...
  • 常常在工作中被问及,你们备份...但是,无论如何,备份数据是需要磁盘空间进行存储的,在备份项目的设计过程中,必然会有备份存储库的容量设计。通常这个设计会直接关系到用户的存储成本、存储效率以及备份的可用...
  • 此页面显示如何手动触发自动备份,键/值备份和还原操作,以确保您的应用程序正确保存和恢复数据。 一、备份如何运行 该部分介绍了Android备份框架中的各种功能,以及它们如何与支持自动备份和键/值备份的应用程序...
  • 几种常见存储备份系统

    千次阅读 2010-01-14 13:29:00
    几种常见存储备份系统常见数据备份系统主要Host-Base、LAN-Base和基于SAN结构的LAN-Free、Server-Free等多种结构。Host-Based备份方式: Host-Based是传统的数据备份的结构,这种结构中磁带库直接接在服务器上,...
  • MySQL数据备份和恢复

    千次阅读 多人点赞 2020-08-22 12:31:46
    常见备份方法4. MySQL完全备份(1) 物理冷备份与恢复(2) mysqldump备份与恢复(3) MySQL物理冷备份及恢复5. mysqldump备份数据库(1) mysqldump命令对单个库进行完全备份(2) 单库备份的示例(3) mysqldump命令对多个...
  • 数据备份是数据安全的基础,完整的备份和有效的恢复手段是应对一切突发状况的重要保障。同时数据备份也对数据的重新利用,发挥数据更大价值,有着重大的作用。 而数据备份的重点是对数据库的备份。定期对数据库...
  • Linux服务器数据备份恢复策略

    千次阅读 2009-06-18 23:56:00
    Linux服务器数据备份恢复策略一、Linux 备份恢复基础1、什么是备份最简单的讲,备份数据的过程就是拷贝重要的数据到其他的介质之上(通常是可移动的),以保证在原始数据丢失的情况下可以恢复数据。一次备份可能是简 ...
  • 某电力企业数据备份方案解析

    千次阅读 2011-11-30 21:28:14
    本文主要讨论某电力企业业务管理系统中的数据备份实现技术和相关的方式、策略等,同时,对SmallWorld的备份做了一定探讨。 某电力企业数据备份方案解析   “9.11”事件除了造成人员伤亡以外,另一个结果...
  • SQL Server三种常见备份

    千次阅读 2019-05-17 11:29:00
    本期月报是SQL Server数据库备份技术系列文章的开篇,介绍三种常见的SQL Server备份方法的工作方式、使用T-SQL语句和使用SSMS IDE创建备份集三个层面,介绍SQL Server的三种常见备份的工作原理和使用方法。三种常见...
  • 常见的数据库都会提供备份机制,以解决在数据库无法使用的情况下通过备份来恢复数据减少损失。 Elasticsearch 虽然良好的容灾性,但以下原因,其依然需要备份机制: 1) 数据灾备:在整个集群无法正常工作时,可以...
  • 银行数据备份策略

    千次阅读 2012-12-27 00:07:11
    城市商业银行各项业务有着不同的数据类型,按数据结构可分为结构化数据和非结构化数据: 结构化数据即行数据,存储在数据库里,可以用二维表结构来逻辑表达实现的数据。城市商业银行信息系统中运行Oracle、Informix、...
  • Redis数据备份与恢复

    千次阅读 2016-08-04 10:50:07
    RDB方式的持久化是通过快照(snapshotting)完成的,当符合一定条件时Redis会自动将内存中的所有数据进行快照并存储在硬盘上。进行快照的条件可以由用户在配置文件中自定义,由两个参数构成:时间和改动的键的个数。...
  • Fundebug是这样备份数据

    千次阅读 2018-09-27 09:16:08
    摘要: 数据还是要备份的,万一删库了呢? 本文代码仓库: fundebug-mongodb-backup 引言 今年8月,腾讯云竟然把客户前沿数据数据弄没了,Fundebug在第一时间进行了一些简单的技术分析: 一方面,腾讯云对这件...
  • MySQL数据备份与恢复

    千次阅读 多人点赞 2021-05-12 20:34:24
    逻辑备份:从数据库中“导出”数据另存而进行的备份,逻辑备份与存储引擎无关 1.3 备份时需要考虑的因素 持锁多久 备份过程的时长 备份负载 恢复过程的时长 1.4 备份什么 数据 二进制日志、InnoDB的
  • Redis的数据备份与恢复

    万次阅读 2018-07-31 11:54:43
    Redis数据备份与恢复 持久化 1.RDB方式(默认) RDB方式的持久化是通过快照(snapshotting)完成的,当符合一定条件时Redis会自动将内存中的所有数据进行快照并存储在硬盘上。进行快照的条件可以由用户在配置文件...
  • WordPress备份方法

    千次阅读 2012-05-17 10:24:06
    WordPress的数据库包含了你博客里所有的文章、评论和链接,如果数据库突然损坏,那你将丢失你写的所有东西,造成数据库损坏的原因由很多,有些不是人力所能控制的,我们能做的就是备份数据备份真的很重要。...
  • Z-Blog博客备份方法

    2014-11-10 14:40:57
    俗话说“不怕一万,只怕万一”,站长多多少少都碰到过网站数据丢失的问题,“数字灾难”随时都可能发生,如果说一天博客瞬间消失殆尽,到那个... Z-Blog博客备份方法  1、整站备份  先在zbolg后台直接进行数据
  • [数据库] Navicat for MySQL定时备份数据库及数据恢复

    万次阅读 热门讨论 2017-04-19 14:14:54
    在做数据库修改或删除操作中,可能会导致数据错误,甚至数据库奔溃,而有效的定时备份能很好地保护数据库。本篇文章主要讲述Navicat for MySQL定时备份数据库和数据恢复等功能,同时可以定时播放电影等设置,希望对...
  • 几种常见的存储备份系统

    千次阅读 2008-08-26 11:02:00
    缺点是不利于备份系统的共享,不适合于现在大型的数据备份要求。 LAN-Based备份方式: LAN-Based备份,在该系统中数据的传输是以网络为基础的。其中配置一台服务器作为备份服务器,由它负责整个系统的备份操作。磁带...
  • mysql使用脚本定时进行数据备份

    千次阅读 2019-05-17 11:52:29
    按照数据库状态划分 热备 热备份(Hot Backup)是指在数据库运行中直接备份,对正在运行的数据库没有任何影响。 冷备 ...1.是非常快速的备份方法(只需拷贝文件) 2.容易归档(简单拷贝即可) 3....
  • 第二章 数据备份和恢复技术2.1 数据备份的重要性及数据失效的原因2.1.1数据备份的重要性随着各行业信息化建设的迅猛发展,计算机网络系统中保存的关健数据的全愈来愈大,关健业务数据成了各单位生存的命脉和宝贵的...
  • 因为很多原因需要备份/...最近在酷安网看到一个 “QQ聊天记录导出” 和“微信聊天记录导出”的软件,看了一下他备份的包就是普通的zip备份了QQ应用数据的databases文件夹。(/data/data/com.tencent.mobileqq/datab...
  • MySql数据库备份与恢复——使用mysqldump 导入与导出方法总结 mysqldump客户端可用来转储数据库或搜集数据库进行备份或将数据转移到另一个sql服务器(不一定是一个mysql服务器)。 转储包含创建表和/或装载表的sql...
  • expdp和impdp备份数据库(数据备份)

    千次阅读 2011-01-07 13:42:00
    数据泵导出导入(EXPDP和IMPDP)的作用1,实现逻辑备份和逻辑恢复.2,在数据库用户之间移动对象.3,在数据库之间移动对象4,实现表空间搬移.5,只可以在服务器上使用6,保留原来的exp,Imp的备份模式 7,两种模式不可交互...
  • 银行研发中心数据备份方案解析

    千次阅读 2012-12-27 00:09:28
    随着现代商业银行业务和服务种类的不断扩展,银行软件研发中心各种业务系统的平台和相关各种数据文件日渐增加,如何进行集中备份管理,如何最大程度地保护企业的数据,成为目前研发中心一个极为迫切的课题。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 99,907
精华内容 39,962
关键字:

常见的数据备份的方法有