OceanBase 关于一号表笔记与ERROR 1060(42S21)问题

OceanBase 关于客户端访问OceanBase 的表数据的过程说明

1.OBserver中的location cache 会保存observer 曾经访问过的实体表的位置信息(meta table 主要包括 __all_core_table、__all_root_table、__all_tenant_meta_table 三张内部表。OB 集群中所有实体表的 location(位置信息),以分区副本为粒度,记录在该层级关系中。)

2.Observer中的RsMgr 会记录RootServer 的rs_list信息,并获取Leader 的信息,从而找到Leader的RootServer所在的服务器上。而Leader的RootServer的内存中存放着__all_core_table 的信息,__all_core_table 属于OceanBase中的一号表

3.__all_core_table 中记录着__all_root_table表的位置。

4.__all_root_table 表记录着系统表的信息与__all_tenant_meta_table的位置信息。

5.__all_tenant_meta_table中记录着各租户的表位置信息。

需要关注的表还包括:

select table_name from __all_core_table group by table_name;

__all_core_table的table中存在7张表,可以观察7张表的内容。

select * from __all_column;

select * from __all_ddl_operation;

select * from __all_cluster;

问题记录:

select * from __all_column 中可以处理一个系统问题,

问题的发现与引发过程:

某一天,发现某个OceanBase的库无法使用show create tables 或者 show table stauts等语句,报错ERROR 1060 (42S21): Duplicat,且影响合并操作。

熟悉Mysql的都知道,该报错属于表字段重复问题。

解决办法:

1.定位库中哪个表在创建时,创建的重复字段。

2.根据定位的表在__all_column表中进行确认,然后修改__all_column表中的字段。

相关推荐
Yawesh_best32 分钟前
思源笔记轻松连接本地Ollama大语言模型,开启AI写作新体验!
笔记·语言模型·ai写作
banjin1 小时前
Oceanbase学习之一迁移mysql数据到oceanbase
oceanbase
OceanBase数据库官方博客2 小时前
云集电商:如何通过 OceanBase 实现降本 87.5%|OceanBase案例
oceanbase·分布式数据库·实践经验·架构选型·大存储降本
CXDNW2 小时前
【网络面试篇】HTTP(2)(笔记)——http、https、http1.1、http2.0
网络·笔记·http·面试·https·http2.0
使者大牙2 小时前
【大语言模型学习笔记】第一篇:LLM大规模语言模型介绍
笔记·学习·语言模型
ssf-yasuo2 小时前
SPIRE: Semantic Prompt-Driven Image Restoration 论文阅读笔记
论文阅读·笔记·prompt
ajsbxi2 小时前
苍穹外卖学习记录
java·笔记·后端·学习·nginx·spring·servlet
TeYiToKu3 小时前
笔记整理—linux驱动开发部分(9)framebuffer驱动框架
linux·c语言·arm开发·驱动开发·笔记·嵌入式硬件·arm
dsywws3 小时前
Linux学习笔记之时间日期和查找和解压缩指令
linux·笔记·学习
cuisidong19975 小时前
5G学习笔记三之物理层、数据链路层、RRC层协议
笔记·学习·5g