摘要:1.问题 两个环境,表结构一致,数据量一致,索引也一致,为什么同样的sql执行时间却不一致? 2.原因分析 通过执行计划,发现差异很大: # 查看执行计划 EXPLAIN 你的sql 通过dbeaver工具查看DDL上面的那个Statistics的值,发现两个环境的不一致。由此可以断定是统计信息出了
阅读全文
摘要:问题 我们安装的dbeaver默认是英文,为了方便我们理解每一项的意思,我们设置成中文更友好,下面是设置过程。 设置步骤
阅读全文
摘要:问题 你有没有遇到过这样的问题,查询出来一堆字段,却不知道每个字段什么意思?你还得手动跳转到表里去看,下面设置就是来解决这个问题。 设置步骤
阅读全文
摘要:遇到的问题 用obclient太卡还笨重,不好用,用惯了dbeaver,一套习惯,兼容大多数数据库,所以想用dbeaver来连接oceanbase,结果连了半天连不上,找了很多资料没有一个说明白的,我想要的是能连上oceanbase的oracle模式,并且不影响设计表,结果百度一番连上了,但是表结构
阅读全文
摘要:一、需求 写一个存在即更新,不存在即新增的sql。表里没有id,是一个联合主键,所以为了防止并发下的安全问题,使用sql的merge into来实现。 二、分析 MERGE INTO: 这是 Oracle 模式下处理 Upsert(更新或插入)最标准、最高效的语法。 USING (...): 这里构
阅读全文
摘要:因为OceanBase的oracle模式不支持自动创建分区,所以为了节省时间,我们往往会手动预先创建很多分区,然而,随着时间的流逝,手动创建的总会有用完的时候。为了防止数据插入报错,我们会新增一个PMAX分区,来防止数据插入错误,把大于手动创建的最大分区的数据都存入了PMAX分区中。因此,本文就是为
阅读全文
摘要:1.先备份原表数据(为了不影响原表使用,如果暂时没人用,可以省略此步骤) create table source_tmp as select * from source; 2.改造原表ddl,创建分区表source_partition 具体参考:https://www.cnblogs.com/huj
阅读全文
摘要:TIPS 分区选择建议 按天分区: 适用于数据量极大(每天千万级以上)、需要频繁删除历史数据的场景 按月分区: 适用于数据量中等(每月百万到千万级)、最常用的分区方式(推荐) 按年分区: 适用于数据量较小、数据保留周期长、查询跨度大的场景 1.创建分区表 oceanbase在我写这个笔记的时候,还不
阅读全文