ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

OBCP考试经验分享

2021-03-22 23:57:08  阅读:253  来源: 互联网

标签:OBCP 租户 分区 oracle 考试 sql test 分享 unit


1、考试大纲

在这里插入图片描述

2、考试范围

官方文档
教材
视频
obcp模拟试题(2题左右)
实验手册

3、考试总结

备份恢复占比很少,1道题左右
分布式事务,2道题左右(参与者、协调者)
分布式架构,4道题左右(租户、资源池、unit创建扩容)
Sql引擎,5道题左右(查询改写,执行计划)
Sql调优,8道题左右(分区表,hint,sql监控)
Obproxy,8道题左右(启动模式,LDC,弱一致性读,参数配置)
存储引擎,10道题左右(内存结构,转储合并冻结)
故障运维,10道题左右(用户权限,日志,黑屏运维,慢sql,系统视图,回收站,闪回)

4、具体分析

备份恢复:
恢复的最小力度:租户级

分布式事务:
参与者或者协调者down机
全部参与者发送prepare ok,客户端会commit

Sql引擎:
不能使用常量的场景:between and 应该可以使用常量,被物化的参数精度数字(round(4))和作为格式串的字符串常量(to_date(’’,‘yyyy-mm-dd’))不行
gv$plan_cache_plan_stat查看执行计划的 租户id srv_ip srv_port plan_id
业务数据模型设计原则:尽量避免跨机分布式事务
索引的作用
是不是所有sql都会进plan cache, 哪些不能(超过20m的等)

Sql调优:
ob分区表的优点
range column分区和range分区区别
hash分区和key分区区别 int
可以加分区–range分区
分区键与唯一索引、与主键的关系
改变连接顺序和连接方式的hint(leading和use_nl)
outline不生效的原因(-c没加,hint有错误,sql_id有变化)
create index idx_ab on test (a,b);explain select * from test where a=2 and b=‘2’;explain select * from test where b=‘2’ and a=1;索引是否都能生效
create table t1 (c1 int primary key, c2 int) partition by key() partitions 5 KEY分区分区键不写任何column,表示key分区的列是主键
dml语句 多选: A.merge,B.update,C.select D.delete

Obproxy:
弱一致性读的idc顺序
obproxy的启动模式,路由影响的因素:LDC配置,Observer 状态,租户的Zone 类型( 读写型 vs 只读型),路由精准度
Obproxy的参数修改:sys租户alter proxyconfig;普通租户:set @变量名=‘xx’
location cache 包含哪些路由信息 多选:A.系统租户sys租户信息,B.database 信息C.表/分区信息 D.普通租户信息
trace_log_slow_query_watermark是系统参数还是变量,默认值
obproxy连接ob集群的正确格式:sys@oracle_test#obdemo:20210127,sys@oracle_test#obdemo,sys@oracle_test
observer 默认端口号,obproxy默认端口号
obproxy 查看ldc命令:show proxyinfo idc;
obproxy 查看当前连接数命令行: show processlist?
obproxy和observer连接方式: 长连接?连接池?

存储引擎:
普通租户的memstore到上限,怎么判断是要转储还是合并
clog达到95% ob集群就无法继续提供服务(clog_disk_usage_limit_percentage)
内存占用最多的模块:KVcache和memstore
memtable中主要存在的行–insert行-update行-delete行
同一个分区的不同副本在物理大小上是否相同
zone_merge_concurrency生效
合并的三种方式:触发合并 定时合并和手动合并
根据一定策略一次合并zone—智能轮转合并
转储可以控制的级别:partition、server和租户,如果不指定:对所有observer的所有partition转储(集群级)
查询合并状态的表:__all_zone

分布式架构
create resource pool test unit = ‘config_mysql_test_restore_zone2_S1_aam’,unit= ‘oracle_unit_config’, unit_num=1;
create resource pool test unit = ‘oracle_unit_config’,unit= ‘config_mysql_test_restore_zone2_S1_aam’, unit_num=1;
这个是取得是靠近unit_num的配置
create resource pool test unit = ‘config_mysql_test_restore_zone2_S1_aam’,unit= ‘oracle_unit_config’, unit_num=2;
只对zone1扩容,可以操作的语句,unit=2不行,可以修改unit的资源配置
unit ,resource pool ,租户占用的资源等相关的表
什么情况下需要开启负载均衡 扩容?partition选主?
分区自动选主相关参数:enable_auto_leader_switch,enable_rebalance
修改资源池报错:alter tenant resource pool 报错 resource unit not empty is not allowed ?什么意思
删除某个资源池的命令行drop resource_pool pool_name

故障运维:
用户的权限问题 table、 database 、和全局层级(一个普通用户没有租户权限)
替换observer节点
observer节点下电运维
唯一定位sql执行的是trace_id
下面哪些是事务日志:clog ilog
enable_syslog_recycle和max_syslog_file_count清理系统日志
OceanBase容忍的集群内时钟偏差为100ms
查看idc和region的表:__all_zone
对于等待事件和统计事件相关字段,时间类型单位如无特殊说明是微秒
分区移动的过程:先复制到另一台机器 ;分区服务从旧的机器切换到新的机器 ;再删除旧机器上的分区
observer慢sql的默认值,obproxy慢sql的默认值;怎么查看慢sql(gv s q l a u d i t 、 o b s e r v e r 的 日 志 ? ) , 选 俩 , 但 v sql_audit、observer的日志?),选俩,但v sqla​udit、observer的日志?),选俩,但vplan_cache_plan_stat这个里面也有
闪回查询是同时支持oracle(基于scn和timestamp两种维度)和mysql租户 (基于snapshot)
undo_retention有效值的定义, 以及undo_retention为0时默认的历史版本是上一次合并时的版本
plan_cache_stat和sqlaudit表关于sql_id维度问题,哪张表是基于sql_id维度聚合?
slow log的时间阈值设置过小会引起哪些问题?
大量慢查询可能会引起什么问题:高并发?集群无法访问?等
truncate 表会进入回收站吗:eable_truncate_flashback默认是false,需要设为true,oracle回收站默认是打开的,mysql默认关闭
oracle类型租户默认的管理员用户是sys还是root,mysql类型租户默认的管理员用户是sys还是root?
set global 是立即生效还是,需要重连才生效?

更多数据库分享可关注公众号:
在这里插入图片描述

标签:OBCP,租户,分区,oracle,考试,sql,test,分享,unit
来源: https://blog.csdn.net/du18020126395/article/details/115106077

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有