当前位置: 首页 > news >正文

异地(异机)备份的实现

文章目录

  • 环境
  • 文档用途
  • 详细信息

环境

系统平台:Linux x86-64 Red Hat Enterprise Linux 7
版本:4.5.10

文档用途

有些客户因安全需求,要实现数据备份异地存放。此文档讨论两种实现方式,方案还不成熟,仅供参考,欢迎各位补充斧正。

详细信息

一、异地备份实现方式

目前实现异地备份的方法主要有两种:

1、通过nfs远程目录+备份脚本中的冗余备份实现。

优点:有成熟稳定的脚本提供冗余备份。 不足:需要nfs服务,脚本不能实现冗余归档。

2、通过scp+定时任务拷贝实现。

优点:配置简单。 不足:需要配置ssh互信,如果拷贝期间备份或者归档正在生成,会导致其不可用的情况。

二、通过nfs远程目录+备份脚本中的冗余备份实现

1、目标端配置nfs服务

安装提供nfs服务的软件包 yum install nfs-utils yum install rpcbind 创建共享目录并修改权限 mkdir -p /path/to/shared_directory chmod -R 755 /path/to/shared_directory 编辑nfs配置文件 vi /etc/exports /path/to/shared_directory *(rw,sync,no_root_squash,no_subtree_check) *:可以使用单个 IP 地址(如 192.168.1.100)、网络段(如 192.168.1.0/24)或通配符(如 * 表示所有客户端) rw:表示客户端可以以读写模式访问共享目录。 sync:表示所有文件系统操作都将同步执行,确保数据立即写入磁盘。 no_root_squash:表示远程的 root 用户将具有与本地 root 用户相同的权限。默认情况下,root 用户会被 "squash"(降低权限),通常是变成匿名用户 nfsnobody。 no_subtree_check:表示 NFS 服务器不会检查共享目录的父目录权限,这可以提高性能,但可能降低安全性。 用配置文件的更改 exportfs -a 显示服务器上的 NFS 共享目录 showmount -e <server> 重启服务并设置开启自启 systemctl start nfs-server systemctl enable nfs-server systemctl start rpcbind systemctl enable rpcbind

2、源端挂载nfs远程目录

安装提供nfs服务的软件包 yum install nfs-utils 创建挂载点目录 mkdir -p /local/mount/point 设置nfs文件共享 mount -t nfs -o rw,bg,hard,rsize=32768,wsize=32768,vers=3,nointr,timeo=600,proto=tcp,nolock 目标端IP:/path/to/shared_directory/ /local/mount/point 永久挂载 vi /etc/fstab 目标端IP:/path/to/shared_directory/ /local/mount/point nfs rw,bg,hard,rsize=32768,wsize=32768,vers=3,nointr,timeo=600,proto=tcp,nolock 0 0 挂载生效并验证 mount -a df -h

3、修改备份脚本中冗余备份部分

[root@logical01 ~]# vi /root/hgdb_backup.sh ...... #冗余备份选项 re_bak=yes #启用冗余备份 rebak_dir=/local/mount/point #新挂载nfs目录 rearch_dir=/local/mount/point/arch #冗余归档目录(暂时没有实现) rebak_num=7 #冗余备份保留份数 ......

三、通过scp+定时任务拷贝实现

1、配置ssh互信

源端A 上执行如下命令来生成配对密钥 cd ~/.ssh ssh-keygen -t rsa 目标端 B 上也同样运行 ssh-keygen -t rsa 将来源端A ~/.ssh/ 目录中的 id_rsa.pub 文件复制到目标端B 的 ~/.ssh/ 目录中,并改名为 authorized_keys 源端进行测试 scp /usr/local/shell/host.txt root@目标端ip:/usr/local/host

2、编写脚本(客户要求异地保留7天的备份)

[root@logical01 ~]# cat /root/synchgdbback.sh #!/bin/bash scp -r /data/hgdbbackup root@目标端IP:/data ssh 目标端IP "find /data/hgdbbackup/* -type d -mtime +6 -exec rm -rf {} +;" ssh 目标端IP "find /data/hgdbbackup/* -type f -mtime +6 -exec rm -f {} \;" 备注:/data/hgdbbackup:源端数据库备份目录(包含归档目录),目标端也需要创建。

3、配置异地备份定时任务

[root@logical01 ~]# crontab -l 30 00 * * * /root/hgdb_backup.sh 30 03 * * * /root/synchgdbback.sh 备注:根据备份完成时间确定两个脚本的执行间隔,确保备份完成后再跑异地备份同步任务。
http://www.cnnetsun.cn/news/1655595.html

相关文章:

  • PyCharm配置PySide6工具链避坑指南:解决虚拟环境路径、命令报错那些事儿
  • FPGA实战:S29GL064N Flash芯片在DE2-115开发板上的高效读写控制
  • 利用快马平台AI能力,五分钟快速原型一个AutoClaw式简易爬虫
  • 115. OOM(内存不足),高内存消耗,基本故障排除步骤
  • 无组织废气治理进入AI报告审核阶段:IACheck助力质控水平全面提升
  • 3大核心功能突破JSON可视化难题:vue-json-pretty革新前端数据展示体验
  • 跨平台性能监控实战:从本地到服务器的全面指南
  • 从零构建STM32F429智能控制终端:基于TouchGFX GUI与FreeRTOS的多任务IO调度实践
  • 比话降AI和嘎嘎降AI哪个好知网用户怎么选
  • 革新性AI角色交互平台:SillyTavern的突破性技术与应用场景
  • QMCDecode打破QQ音乐格式垄断:实现音乐文件自由掌控的开源解决方案
  • Windows 11终极优化指南:使用Win11Debloat快速清理系统臃肿
  • 科研自用umat:晶体塑性耦合扩展有限元实现裂纹扩展
  • ComfyUI-WanVideoWrapper全流程实战指南:从入门到专业视频生成
  • 别再只盯着Xilinx官方板卡了:用UD PCIe-403信号处理模块搭建高性价比算法验证平台(含FPGA选型指南)
  • 拯救录音质量!用MATLAB实现手机录音降噪的3种方法对比(含Butterworth/FFT/小波变换)
  • 五大赛道齐亮相!第四届世界科学智能大赛启动报名,首设人文科学赛道
  • Phi-3-mini-4k-instruct-ggufGPU算力优化:CUDA Graphs加速下P99延迟降低42%实测
  • Postman团队版协作踩坑实录:我们是如何被‘英文界面’拖慢项目进度的
  • Godot PCK文件解包终极指南:3分钟掌握游戏资源提取
  • 当滑块遇上润滑油:用MATLAB玩转流体润滑仿真
  • 百度网盘提取码智能查询工具:3秒破解资源访问密码的终极方案
  • I2Cdevlib-MPU9150九轴传感器驱动深度解析
  • 告别FSMC,用STC32G的LCM模块驱动8080屏:实测ILI9341驱动代码与官方库函数配置详解
  • 怕 AI 短剧平台抽成?自研 AI 短剧创作系统贴牌合作,全部收益自留
  • 3种方案打造专属个人视频平台:H-Player V2完全部署指南
  • Translumo:打破语言壁垒实现无缝跨屏翻译的效率工具
  • SpringBoot项目(苍穹外卖)微信支付模拟实战:不申请商户号,如何完整跑通支付流程?
  • React19 + Tailwindcss V4 实战:手把手教你打造一个高颜值标签输入与随机选择器
  • AI for Science:如何用人工智能“炼”出新合金?—— 概念、原理、应用与未来全解析