OceanBase(三)

概述

OceanBase 数据库 有着非常丰富的视图,通过这些视图可以获取 OB 集群各种数据库对象的基本信息和实时状态信息。这些视图分为两大类:数据字典视图和动态性能视图。

  • 数据字典视图

    展示系统租户管理的数据库对象的基本信息。命名特点以 DBA_ 和 CDB_ 开头,DBA_开头的视图展示的是各个租户内的信息,比如 DBA_OB_LS 视图展示的是租户内的日志流信息,系统租户内的DBA_OB_LS 表只展示系统租户自身的日志流信息。CDB_ 开头的视图是系统租户专用的,用于在系统租户内查看集群所有租户的数据库状态,比如 CDB_OB_LS 视图展示的是集群所有租户的所有日志流信息。一般每个DBA_ 开头的视图在系统租户下都有对应的 CDB_ 开头的视图。

  • 动态性能视图

    展示系统动态变化的状态信息。命名特点以 GV$  和 V$ 开头,V$ 只展示登录到的节点上的信息,GV$ 展示所有节点的信息。用户租户下的动态性能视图可以查看本租户的信息,比如 GV$OB_UNITS 视图可以在用户租户内查询到本租户的 Unit 资源分配信息。系统租户的动态性能视图可以查看整个集群所有租户的信息。

1. 基础查看

 1.1 通过查询 oceanbase.GV$OB_SERVERS 视图判断 Zone 内各节点的资源使用情况。

 1.2 通过 oceanbase.DBA_OB_UNITS 视图可以查询所有的 Unit,及其所归属的 Unit Group。

例如,查看当前 Unit 分布

SELECT UNIT_ID,TENANT_ID,STATUS,ZONE,SVR_IP FROM oceanbase.DBA_OB_UNITS;

1.3 通过 GV$OB_PARAMETERS 视图查看集群配置项

1.4 通过视图 GV$OB_UNITS

查询主租户的所有 Unit 信息,获取副本状态、Zone 以及 Region 等信息,用于过滤、获取和维护租户机器连接等。

1.5 DBA_OB_ACCESS_POINT

用于获取访问入口信息。在主租户迁移复制、容灾等场景下,若访问入口发生变化,备租户可以自动感知,不需要用户手动修改。

关于OB 物理架构和逻辑架构的视图,可以勾画如下:

2. 日志流

2.1 通过 DBA_OB_LS 视图可以查看本租户所有日志流的基本信息,包括状态、日志进度等

2.2 通过 oceanbase.DBA_OB_LS_LOCATIONS  查看日志流的位置信息和角色信息

2.2 通过 DBA_OB_TABLE_LOCATIONS 视图可以查看本租户数据分区到日志流的映射

2.4 检查主租户是否拥有完整日志的方法如下

(SELECT LS_ID FROM oceanbase.CDB_OB_LS_HISTORY WHERE TENANT_ID = xxxx) EXCEPT (SELECT LS_ID FROM oceanbase.CDB_OB_LS WHERE TENANT_ID = xxxx);

或者

(SELECT LS_ID FROM oceanbase.CDB_OB_LS_HISTORY WHERE TENANT_ID = xxxx) MINUS (SELECT LS_ID FROM oceanbase.CDB_OB_LS WHERE TENANT_ID = xxxx);

其中,DBA_OB_LS_HISTORY 或 CDB_OB_LS_HISTORY 视图用于展示租户上曾经创建过的所有日志流;DBA_OB_LS 或 CDB_OB_LS 视图用于展示租户上当前提供服务的日志流。

2.5 通过视图 GV$OB_LOG_STAT

用于获取主租户的机器列表、副本服务的日志流 LSN 范围、角色(是否是Leader)等信息。 

2.6 CDB_OB_LOG_RESTORE_SOURCE 视图和 DBA_OB_LOG_RESTORE_SOURCE 视图中记录了日志恢复源信息,您可以通过查询视图来获取日志恢复源信息。

3. 备份恢复

3.1 日志归档状态查看 oceanbase.CDB_OB_ARCHIVELOG (或者说查看归档进度)

MySQL 模式下的用户租户可以通过 oceanbase.DBA_OB_ARCHIVELOG 视图的 STATUS 字段来查看。

3.2 oceanbase.DBA_OB_TENANTS

可以在 sys 租户下的 oceanbase.DBA_OB_TENANTS 视图中查看集群中所有租户的归档模式。

SELECT TENANT_NAME, LOG_MODE FROM oceanbase.DBA_OB_TENANTS WHERE TENANT_TYPE = 'USER'\G

LOG_MODE的值有ARCHIVELOG 或 NOARCHIVELOG
3.3 开启日志归档后,可以通过视图查看 Piece 信息

sys 租户可以通过 CDB_OB_ARCHIVELOG_PIECE_FILES 视图查看当前集群中所有租户的所有 Piece 信息。

用户租户可以通过 oceanbase.DBA_OB_ARCHIVELOG_PIECE_FILES 视图(MySQL 模式)查看本租户的所有 Piece 信息。

3.5 DBA_OB_BACKUP_TASKS –用户租户

查看正在执行的任务,如果查询出来的任务列表为空,则表示数据备份结束.

3.5 查看 Task 级任务历史 — CDB_OB_BACKUP_TASK_HISTORY  –sys组合

一个 Task 对应一个备份集的任务。

SELECT * FROM oceanbase.CDB_OB_BACKUP_TASK_HISTORY\G

3.6 CDB_OB_BACKUP_JOB_HISTORY

查看备份任务执行的结果,也可以描述为查看备份任务历史执行情况。

sys 租户可以通过 oceanbase.CDB_OB_ARCHIVELOG_SUMMARY 视图查看集群中所有租户的归档历史信息。

3.7 用户租户查看当前租户的归档历史

用户租户可以通过 oceanbase.DBA_OB_ARCHIVELOG_SUMMARY 视图(MySQL 模式)查看本租户的归档历史。

3.8 查看租户的备份路径信息

sys 租户通过视图 oceanbase.CDB_OB_BACKUP_PARAMETER 查看当前集群中各租户的备份路径信息。
用户租户可以通过 oceanbase.DBA_OB_BACKUP_PARAMETER 视图(MySQL 模式)查看本租户的备份路径信息。

 

补充

部署 NFS 客户端时,需要在所有 OBServer 节点上进行操作。否则发起的数据备份不能成功执行,此时查看 oceanbase.CDB_OB_BACKUP_TASK_HISTORY 【系统组合】,可以看到错误的信息

             STATUS: FAILED
             RESULT: -9011
            COMMENT:(ROOTSERVICE)addr:XX.XX.XX.XX:2882, result: -9011(cannot find backup file),trace_id:YBXXXXXXXXXXXXXXXXX

而备份成功的信息应该如下

             STATUS: COMPLETED
             RESULT: 0
            COMMENT:

 

 

其它内容补充

 https://www.oceanbase.com/docs/oceanbase-database-cn

来源链接:https://www.cnblogs.com/xuliuzai/p/17892375.html

© 版权声明
THE END
支持一下吧
点赞14 分享
评论 抢沙发
头像
请文明发言!
提交
头像

昵称

取消
昵称表情代码快捷回复

    暂无评论内容