【 使用环境 】生产环境
【 OB or 其他组件 】
【 使用版本 】4.4.1社区版
【问题描述】生产数据从msyql迁移到oceanbase后,100万条数据,单表按索引查询,mysql只需要0.2秒,oceanbase需要5秒
【复现路径】问题出现前后相关操作
SELECT * FROM line WHERE task_date BETWEEN ‘2024-09-12’ AND ‘2024-09-13’ limit
0,10;
使用obdiag收集一下
obdiag gather plan_monitor --trace_id YB420BA2D99B-0005EBBFC45D5A00-0-0 --env “{db_connect=’-hxx -Pxx -uxx -pxx -Dxx’}”
https://www.oceanbase.com/docs/common-obdiag-cn-1000000004222802
[obdiag_gather_pack_20251120163653.zip|attachment]
你这个语句是直连执行的么?看着逻辑执行计划和物理计划不一致
是的
1、通过sql_audit中获取trace_id么 找到业务端发起的这个sql信息 用obdiag收集一下 我看看
select query_sql,trace_id from oceanbase.GV$OB_SQL_AUDIT where query_sql like ‘xxx%’ order by REQUEST_TIME desc limit 5;
2、你们是行列混存的么?
3、192.168.80.180直连的ip是这个么?
1、通过sql_auit获取的trace_id
2、没有行列混存,刚从mysql转过来,都是按行存储的
3、通过192.168.80.180直连的
这个是你们创建的表信息
ORGANIZATION INDEX DEFAULT CHARSET = utf8mb4 ROW_FORMAT = DYNAMIC COMPRESSION = ‘zstd_1.3.8’ REPLICA_NUM = 3 BLOCK_SIZE = 16384 USE_BLOOM_FILTER = FALSE ENABLE_MACRO_BLOCK_BLOOM_FILTER = FALSE TABLET_SIZE = 134217728 PCTFREE = 0 WITH COLUMN GROUP(each column)
看着是使用列存了
信息查一下
SELECT * FROM oceanbase.DBA_OB_ZONES;
select * from oceanbase.gv$ob_servers;
使用的OMS转移过来的,需要怎么处理呢
那不应该呀 oms使用的那个版本 mysql是哪个版本?
OMS连接的mysql版本是5.7.18
show parameters like ’ %default_table_store_format%’;查一下这个参数
怀疑设置参数了
列转行的操作
https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000003977688
参数设置错了 你可以官网查一下default_table_store_format这个参数
好的,我试一下您的方法。
你应该是安装的时候 是不是选取什么参数了 导致的 正常默认的时候是行存 我们内部也是测试过
当时你们搭建ob集群的时候 是用ocp搭建的还是ob搭建的 有使用模版搭建么?
使用OCP搭建的,没有使用模板搭建
能否有环境复现一下 你们搭建的过程 ocp使用的版本也发一下

