使用NineData构建任意时间点(PITR)数据恢复能力
在当前数字化经济的时代下,数据成为企业的关键资产。但因数据误删、服务器故障、病毒入侵等原因导致数据丢失影响业务,会对公司造成重大损失,所以如何保证数据资产的安全、稳定及可用,是企业必须考虑的事情。
在日常工作中,数据被误删的原因有很多,如:误操作、程序bug、病毒等,也正因这样,时不时会传出某某公司数据被误删的新闻。如果数据被误删,需要将数据库恢复到事故发生前的那一刻,这个操作过程不仅复杂,还要依赖经验丰富的DBA来进行恢复。那如何能快速的进行任意时间点恢复(Point-in-time Recovery)呢?NineData 推出的 恢复方式(按时间点、备份集)很好的解决上面说的问题,在解放了DBA复杂的手动操作外,也不用担心“删库跑路”的事情发生。
1、任意时间点恢复
▋恢复流程
NineData 完成基于时间点恢复(PITR)的过程如下:
- 新增新的一个数据库实例,为恢复所用,也可以用本地实例(需要修改恢复的库名);
- 找到误删操作之前的最近一次全量备份,恢复到新实例;
- 回放全量备份之后的BINLOG,到误删操作之前的时间点为止。
2、如何使用指定时间点的恢复
▋环境说明
使用指定时间点恢复功能前,需要先使用 NineData 的备份功能,先备份出一个类型为「表结构+全量数据+日志数据」的备份集。假如您已经通过 NineData 的备份功能完成了一个数据库的备份,那么只需要简单的几步,就可以完成指定时间点的恢复了。
- 已有的备份集的备份类型:表结构+全量数据+日志数据
- 假如用户数据库「backup_resotre_db」下有3张表「user_info、user_info_x、user_info_y」
▋恢复说明
- 18:22分,用户把表「user_info」给DROP掉了(全量备份中该表只有1条记录,DROP的时候,该表有3条记录,有2条记录需要通过增量恢复),此时业务出现报错,需要紧急进行恢复。即使通过专业的DBA同学来进行恢复,也需要大量的手动操作进行全量+增量恢复,如果在进行增量恢复期间遇到解析binlog异常(如字符集报错),还会浪费更多的时间处理,导致RTO时间不可控。如果使用 NineData 的指定时间点恢复能力,那么只需要简单的几步,就可以完成指定时间点的恢复了。
a. 创建恢复任务
按照要求,先选择要恢复的源数据实例和备份任务,然后再选择恢复到的时间点(执行DROP操作前的时间)。
b. 选择要恢复的对象,可以恢复整个库,也可以选择恢复被DROP的表。
c. 选择要恢复到哪个目标数据库,可以是新数据源,也可以是当前的数据源(需要修改恢复后的数据库名)。
d. 预检查步骤中会进行相关的字符集、大小写敏感、时区等关键项目的检查,确保恢复正常。
e. 启动任务后,可以看到任务的相关信息,直到任务完成。
f. 数据恢复完成。
通过上面对「任意时间点恢复」的说明,可以看到在 NineData 上简简单单的几步操作,就能轻松的实现数据任意时间点恢复的能力。在减少RTO的同时,也缩短了运维人员处理数据恢复的时间,最终保护了企业的核心数据。
小结
通过这篇介绍,可以了解到如何使用 NineData (www.ninedata.cloud/backup),快速简单的实现任意时间点数据恢复的能力。另外,NineData 推出的备份数据查询(全量、按时间点)和 数据变更轨迹查询 功能,也能很好的解决数据误删恢复的问题,有效保护企业的核心数据,为企业在数据安全上构筑起最后一道防线。
相关文章
- 数据库设计工具的使用(实用)
- 【说站】js数组forEach方法的使用
- 使用西门子工控系统的注意了,已经暴露了15个安全漏洞
- Linux-Shell-使用mkfifo实现多任务并发及并发数控制详解程序员
- Oracle 视图 DBA_CAPTURE 官方解释,作用,如何使用详细说明
- Oracle常用字符换行符的使用技巧(oracle字符换行符)
- 腾讯视频直播东京奥运会时切换画面 官方:应版权方要求停止超范围使用
- 如何使用CMake安装MySQL(cmake安装mysql)
- 信息使用Oracle获取表结构信息的技巧(oracle获取表结构)
- 使用MSSQL实现时间排序(mssql时间排序)
- 时间使用Redis控制Java数据过期时间(redisjava过期)
- 时间设置使用Java设置Redis的过期时间(redisjava过期)
- 如何在 Debian、Ubuntu 中使用 apt-cache 命令
- 如何使用Oracle计算两个时间之间的小时差?(oracle时间差小时)
- 使用 Filezilla 连接 Linux 服务器的步骤(filezilla连接linux)
- Oracle使用时间加减函数时的注意事项(时间加减oracle)
- linux中使用双引号的技巧(linux中的双引号)
- 使用MSSQL获取服务器的精准时间(mssql获得服务器时间)
- 使用MySQL处理日期和时间戳(mysql 日期 时间戳)
- tree使用Redis构建二叉树——可缩短系统响应时间(redisbinary)
- 京东云Redis使用更高性能的非凡之选(京东云redis)
- 架构稳定,使用Redis读写分离实现高并发性能(使用redis读写分离)
- 的运用Oracle中时间条件的恰当使用(oracle中时间条件)
- Oracle使用时间戳存储数据(oracle中时间戳入表)
- 数据使用Redis获取高效可靠的数据(redis获取指定的可用)
- MySQL日期数据类型、时间类型使用总结