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

OBCP第八章 OB运维、监控与异常处理-灾难恢复

灾难恢复是指当数据库中的数据在被有意或无意破坏后复原数据库所需要执行的活动

回收站:回收站在原理上说就是一个数据字典表,放置用户删除的数据库对象信息。用户删除的东西被放入回收站后,其实仍然占据着物理空间,除非您手动进行清除( PURGE )或者对象定期被数据库系统删除

闪回查询:OceanBase提供了记录级别的闪回查询功能,允许用户获取某个历史版本的数据;OceanBase 数据库当前支持通过以下两种方式来进行闪回查询:

创建 Restore Point:当创建了 Restore Point,则可使用闪回查询功能查询 Restore Point 点对应的数据版本

设置undo_retention变量:设置 undo_retention 变量后,可使用闪回查询功能查询当前时间 T 到 T -undo_retention 时间范围内的任意多版本数据

回收站

查看回收站:
使用SHOW RECYCLEBIN语句

开关回收站:(租户中默认回收站为关闭状态)

租户级别的开启关闭语句:set global ‘recyclebin’=on/off;

Session级别的开启关闭语句:set @@recyclebin=on/off;

支持进入回收站的对象有索引、表、库和租户,各模式回收站对象的支持情况如下表所示:

模式索引数据库租户
MySQL支持支持支持支持
Oracle支持支持不支持不支持

回收站

恢复回收站数据:使用FLASHBACK命令恢复回收站中的数据库和表对象,只有租户的管理员用户才可以使用该命令

FLASHBACK DATABASE<object_name> TO BEFORE DROP [RENAME TO database_name];
FLASHBACK TABLE<object_name> TO BEFORE DROP [RENAME to table_name];

回收站清理:回收站中的数据可以通过 PURGE 命令清理;当一个对象的上层对象被PURGE,那么当前回收站中关联的下一层对象也会被 PURGE

指定库物理删除: PURGE DATABASE <object_name>;

指定表物理删除: PURGE TABLE <object_name>;

指定索引表物理删除: PURGE INDEX <object_name>;

清空整个回收站: PURGE RECYCLEBIN;

闪回查询

闪回查询(Flashback Query)是 Oracle 中记录级别的闪回功能。该功能允许用户获取某个历史版本的数据。OB同时支持MySQL和Oracle两种模式下的查询

闪回查询支持 SCN(time_to_usec())和 TIMESTAMP(usec_to_time())两种维度的查询

示例 1:通过 TIMESTAMP 指定的历史时间并闪回查询一张单表在该历史时间中的状态的数据:

select * from tbl1 as of timestamp TO_TIMESTAMP('2020-08-13 16:20:00','yyyy-mm-dd hh24:mi:ss');

示例 2:通过 TIMESTAMP 指定的历史时间并闪回查询多表在该历史时间中的状态的数据:

select * from tbl1 as of timestamp TO_TIMESTAMP('2020-08-13 16:20:00','yyyy-mm-dd hh24:mi:ss'),tbl2 as of timestamp TO_TIMESTAMP('2020-08-13 16:20:00','yyyy-mm-dd hh24:mi:ss');

示例3:通过 SCN 指定历史时间并闪回查询单表在该历史时间点的状态的数据:

select * from tbl1 as of scn 1582807800000000;

restore point

创建restore point:(租户级)

CREATE RESTORE POINT restore_point;

查询restore point:

SELECT * FROM V$RESTORE_POINT;

查询历史数据:
MySQL模式

SELECT * FROM table_name AS OF SNAPSHOT 10000;

Oracle模式

SELECT * FROM table_name AS OF SCN 10000;

删除 restore point:保留的 restore point 对应的数据会占用相应的存储资源,在分析业务结束后需要手动执行删除 restore point 的操作

DROP RESTORE POINT restore_point;

Restore Point功能的使用限制

不支持物理备份

不支持主备库

不支持在sys租户下创建Restore Point

每个租户内最多可创建10个Restore Point

创建Restore Point后,如果对创建Restore Point前就存在的表执行DDL语句将会报错。

小结:

OB的日志分为可读的服务日志和二进制的事务日志

Clog包括redo log, prepare log, commit log, abort log, clear log,但是不包括undo log

Observer日志级别按严重程度从高到低分为ERROR、USER_ERR、WARN、INFO(default)、TRACE、DEBUG

Observer MySQL模式错误代码4000以前兼容MySQL,4000以后为OB自有的错误码

OB集群在运维过程中,“STOP”命令代表不提供leader副本服务,(如“stop server”代表该observer所有主副

本都被切走)

OB在MySQL模式下,回收站支持INDEX、TABLE、DATABASE、TENANT,在Oracle模式下支持INDEX(3.x)和TABLE


http://www.kler.cn/a/9249.html

相关文章:

  • Chromium 中sqlite数据库操作演示c++
  • Python酷库之旅-第三方库Pandas(208)
  • C++数据结构算法学习
  • 力扣 LeetCode 977. 有序数组的平方(Day1:数组)
  • 【设计模式】结构型模式(四):组合模式、享元模式
  • 机器学习———特征工程
  • 数据结构之线性表3
  • 【中级软件设计师】—操作系统考点总结篇(二)
  • 蓝桥杯嵌入式第十二届初赛题目解析
  • Baumer工业相机堡盟相机如何使用BGAPI SDK实现相机资源的正确释放(C++)
  • Redis使用教程之jedis客户端sendCommand方法的byte[]入参,防止混淆string的byte与数值byte的区别
  • 电脑误删除的文件怎么恢复
  • 从零开始学习Blazor
  • SHELL函数可课后作业
  • 使用Schrödinger Python API系列教程 -- 介绍 (一)
  • 6.S081——虚拟内存部分——xv6源码完全解析系列(2)
  • 用于语义分割模型的t-SNE可视化
  • ftp传输文件大小有限制吗 ftp文件传输工具有哪些
  • fate-serving-server增加取数逻辑并源码编译
  • vue3中tsx语法一些了解
  • Vue+nodejs快递收发寄件揽件代取网点查询系统
  • 编译技术-优化理论
  • 【剧前爆米花--爪哇岛寻宝】java文件操作和io流
  • 应急响应真的很重要!
  • 全排列1_dfs
  • 数据安全-数据分类分级方案设计