近年来,数据安全问题日渐受到大家的关注,对于任何一家企业,数据无疑是最重要的资产之一。提到数据容灾,大家可能会想到备库和备份的概念,那么我们先来谈谈备库与备份的区别。

备库与备份的区别

通常来讲,备库更侧重于保障服务的可用性,旨在当主库不可用时进行服务接管,从而确保故障发生后,能够在极短时间内继续拥有对外提供服务的能力;

而备份则侧重于保障数据的可靠性,其重大意义在于将数据文件进行离线冗余操作,当出现人为误操作或者不可逆故障的时候,能够使用副本进行数据的重放。

由此可见,备库与备份不可相提并论,同时也都是进行数据容灾规划中不可或缺的部分。下面的两张图片很好的诠释了这个观点。

IDC数据容灾方案

云掣科技IDC数据容灾方案基于自研EasyDO平台实现,通过一键式配置实现数据高可用、数据备份、及备份容灾转储。在这整个体系中,主备库、备份、容灾备份构成了多份数据副本。EasyDO负责整体的任务配置、任务调度、运维监控、以及多数据副本管控。整体逻辑架构图如下:

01高可用设计

高可用方案基于MySQL原生半同步复制+keepalived技术实现,主备库部署于不同物理机。通过内置的脚本实现安全切换,通过vip机制达到透明切换的目的。

核心实现逻辑如下:

平台巡检ha配置库

记录时间戳以及切换标志位,用于进行读写检测以及维护切换流程。

实例检测机制

除了需要检测是否能获取连接外,还要进行读写检测。

安全切换

同机房半同步复制保证传输延时的问题,当存在应用延时的备库提升为主库的情况时,需要等待日志应用完成;若复制中断,则不发生切换。

02数据备份

备份底层基于xtrabackup实现,通过EasyDO平台可做到一键全自动备份;云掣科技DBA团队根据用户实例数据量、运行情况、以及业务负荷峰谷规律制定备份策略。

03备份容灾

容灾通过EasyDO的异地备份功能实现,目前已成熟支持OSS存储或异地FTP服务器的接入。

备份任务完成后,备份文件实时上传至异地FTP服务器或OSS存储,实现数据多份存储,保障数据可靠性。

04运维监控

每台数据库主机独立安装EasyDO agent程序,实时采集备份信息以及主备复制信息,并实时上报给服务端。

服务端对上报数据进行统计分析并生成图表,云掣科技DBA团队基于EasyDO 平台进行每日数据备份巡检核查。

当数据备份或转储,以及复制状态出现异常时,会触发平台告警,提醒DBA团队进行排查处理。

EasyDO运维监控方案整体逻辑架构图如下:

恢复演练

为避免由于备份介质或文件损坏、备份数据不完整等,而导致将来可能存在的无法恢复数据的情况,云掣科技DBA团队制定恢复演练计划,定期开展演练并记录演练过程,以此确保备份文件可用性以及备份策略的正确性。通过模拟自然或人为的故障,来校验当前系统的数据安全级别。通过恢复演练提高未来可能出现的数据恢复过程的高效性和准确性。

01演练准备

服务器准备:操作系统、数据磁盘

软件包准备:MySQL安装,xtrabackup安装

02常规数据恢复

通过本地全备文件中的最新备份进行数据库实例级别恢复,以应对实例级别的故障,或者不可逆drop操作。将IDC机房备份文件传输至恢复服务器在恢复服务器进行全量数据恢复。

03时间点恢复

在本地binlog文件保存完好,且未出现物理或逻辑损坏的情况下。可将整个实例恢复至比指定备份文件更新的某个时间点状态。

  • 将备份文件以及备份时间点之后的binlog文件传输至恢复服务器。

  • 通过备份文件进行全量恢复。

  • 通过应用binlog日志进行增量恢复至故障前的时间点。

04大型故障恢复

当出现重大服务器级别故障或者由于自然灾害导致的机房级别的故障,导致本地数据库无法访问以及备份文件丢失的情况时;可以通过异地备份文件进行数据恢复。

  • 从异地灾备机房下载备份文件至恢复服务器。
  • 恢复服务器本地进行全量数据恢复。

写在最后

造成数据丢失和毁坏的原因主要有以下几个方面:

  • 程序设计设计缺陷
  • 系统硬件故障
  • 人为失误操作
  • 网络安全攻击
  • 机房故障

如果没有做好备份,一旦数据损毁,会严重影响企业正常业务的开展,给生产造成巨大的损失。数据库备份及备库是企业数据高可靠及业务高可用的重要保障,也是预防主动性攻击的安全屏障。做好数据容灾是企业IT运维必不可少的重要环节。

了解更多数据库容灾方案

技本功|数据安全之IDC数据容灾设计实现的更多相关文章

  1. 【虚拟化实战】容灾设计之四VPLEX

    作者:范军 (Frank Fan) 新浪微博:@frankfan7 VPLEX等存储设备的出现,可以实现双活数据中心,最大程度的有效利用运算和存储资源. 在“容灾设计之三Stretched Clust ...

  2. 腾讯云COS对象存储占据数据容灾C位

    说到公有云容灾,大家首先想到的是云上数据备份. 然而,随着企业核心业务逐渐从线下迁移到云上,客户提出了更高的要求.如何确保云上业务的高可用.数据的高可靠,这对云厂商提出了新的挑战. 腾讯云作为全球领先 ...

  3. 【虚拟化实战】容灾设计之一VR vs SRM

    作者:范军 (Frank Fan) 新浪微博:@frankfan7 从本文开始,我们将介绍一系列的关于容灾的解决方案.先探讨应用的场景,然后再深入介绍技术架构. 情景一: 某小型公司的虚拟化环境中,在 ...

  4. 【虚拟化实战】容灾设计之三Stretched Cluster

    作者:范军 (Frank Fan) 新浪微博:@frankfan7 Stretched Cluster是一把双刃剑,会用的如行云流水,用不好反而受其限制. 传统的vSphere Cluster是指一个 ...

  5. 从数据仓库双集群系统模式探讨,看GaussDB(DWS)的容灾设计

    摘要:本文主要是探讨OLAP关系型数据库框架的数据仓库平台如何设计双集群系统,即增强系统高可用的保障水准,然后讨论一下GaussDB(DWS)的容灾应该如何设计. 当前社会.企业运行当中,大数据分析. ...

  6. 13.在项目中部署redis企业级数据备份方案以及各种踩坑的数据恢复容灾演练

    到这里为止,其实还是停留在简单学习知识的程度,学会了redis的持久化的原理和操作,但是在企业中,持久化到底是怎么去用得呢? 企业级的数据备份和各种灾难下的数据恢复,是怎么做得呢? 1.企业级的持久化 ...

  7. 华为云计算IE面试笔记-请描述华为容灾解决方案全景图,并解释双活数据中心需要从哪些角度着手考虑双活设计

    容灾全景图: 按照距离划分:分为本地容灾 同城容灾 异地容灾  本地容灾包括本地高可用和本地主备.(本数据中心的两机房.机柜) 本地高可用这个方案为了保持业务的连续性,从两个层面来考虑: ①一个是从主 ...

  8. 删库到跑路?还得看这篇Redis数据库持久化与企业容灾备份恢复实战指南

    本章目录 0x00 数据持久化 1.RDB 方式 2.AOF 方式 如何抉择 RDB OR AOF? 0x01 备份容灾 一.备份 1.手动备份redis数据库 2.迁移Redis指定db-数据库 3 ...

  9. 电商网站垮IDC数据备份,MySql主从同步,图片及其它数据文件的同步

    原文网址:http://www.bzfshop.net/article/180.html 对一个电子商务网站而言,最宝贵的资源就是数据.服务器是很廉价的东西,即使烧了好几个也问题不大,但是用户数据如果 ...

  10. QQ 相册后台存储架构重构与跨 IDC 容灾实践

    欢迎大家前往云加社区,获取更多腾讯海量技术实践干货哦~ 作者简介:xianmau,2015 年加入腾讯 TEG 架构平台部,一直负责 QQ 相册平台的维护和建设,主导相册上传架构重构和容灾优化等工作. ...

随机推荐

  1. Haproxy搭建 Web 群集实现负载均衡

    Haproxy搭建 Web 群集实现负载均衡 1 Haproxy HAProxy是可提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,是免费.快速并且可靠的一种解决方案.HAProxy非常适用 ...

  2. Apache(2.4.49 2.4.50)--目录遍历--命令执行--(CVE-2021-42013)&&(CVE-2021-41773)

    Apache(2.4.49 2.4.50)--目录遍历--命令执行--(CVE-2021-42013)&&(CVE-2021-41773) 复现环境 采用Vulfocus靶场环境进行复 ...

  3. Aho-Corasick 算法 AC自动机实现

    敏感词过滤在社区发帖.网站检索.短信发送等场景下是很常见的需求,尤其是在高并发场景下如何实现敏感词过滤,都对过滤算法提出了更高的性能要求,Ahocorasick算法能够实现毫秒级的万字过滤匹配,能够很 ...

  4. Flask框架——请求扩展、flask中间件、蓝图、分析线程和协程

    文章目录 01 请求扩展 01 before_first_request :项目启动后第一次请求的时候执行 02 before_request:每次请求之前执行 03 after_request:每次 ...

  5. MySQL系列之——SQL介绍、常用SQL分类、数据类型、表属性、字符集、DDL应用、DCL应用、DML应用(增删改)、DQL应用(select )、元数据信息、show命令

    文章目录 一 SQL介绍 二 常用SQL分类 2.1 客户端命令 三 数据类型.表属性.字符集 3.1 数据类型 3.1.1 作用 3.1.2 种类 3.2 表属性 3.2.1 列属性 3.2.2 表 ...

  6. 使用 OpenTelemetry 构建 .NET 应用可观测性(4):ASP.NET Core 应用中集成 OTel

    目录 前言 使用 elastic 构建可观测性平台 在 ASP.NET Core 应用中集成 OTel SDK 安装依赖 基础配置 Instrumentation 配置 创建自定义 Span 和 Me ...

  7. OI-note

    版权声明:仅供学习. 持续更新中...也算是个人学习的监督与激励吧. OI路漫漫,且行且珍惜. OI太颓了,模拟赛都打不动,班级全是大佬. 算法综合 \(Algorithm\) 杂题综合 Index ...

  8. 记一次有趣的 buffer overflow detected 问题分析

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 环境说明   无 前言   在我开发的一个实验和学习库中,在很久 ...

  9. 基于Echart的前端可视化

    GitHub 上有许多关于低代码自助可视化的项目,前端使用 Vue 和 ECharts 的示例.以下是一些可能符合你要求的项目: DataV: 项目链接:DataV 描述:DataV 是一款基于 Vu ...

  10. Idea单窗口导入多个项目模块

    现在我们比较流行微服务,但是服务一旦多了,项目打开也是很麻烦的,运行内存16个G的电脑,基本上打开4,5个项目模块就顶不住了.那么,我们怎么把多个项目导入到一个idea窗口中呢? 实现效果 导入步骤 ...