范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

OceanBase初试

  这是学习笔记的第 2369篇文章
  OceanBase是原生分布式关系数据库软件,开源已经有些日子了,一直拖着没有做一些测试。这两天刻意抽时间做了下测试,还是挺惊喜的。
  我是比较喜欢上手试验的风格,所以我的学习模式是先构建出一个简单的环境,然后根据自己的认知去做一些测试来决定要不要继续深入测试,然后再来看相关的文档来系统学习,所以我根据文档的描述初步选定是体验试用版本。
  OceanBase的试用版链接已经失效了,在官方文档中没有及时更新,我是翻箱倒柜在网络上找了很多的文章和说明,才发现通过一个链接入口可以直达试用版:
  https://www.oceanbase.com/download
  根据链接跳转到的界面是这样的,这个对应不是最新的版本,不过作为体验测试是足够了。
  比较贴心的是在试用版的相关文档中有一个视频,演示了整个部署的过程,几个命令即可搞定。
  我们先来创建用户admin和相关的数据目录# useradd admin# passwd admin# mkdir /data/ob# chown -R admin.admin /data/ob
  接下来修改配置文件config.py,修改相应的数据目录load("obi,obt-patch,mini-mode,sample-db,sysbench")
  if not indocker: home = "/data/ob"obs_cfg.update(mini_mode_cfg)obs_cfg.update(system_memory="5G", memory_limit="8G", datafile_size="10G")# 定义一个单server的ob集群,mysql端口号2881,rpc端口号2882ob1 = OBI("127.0.0.1:2882:2881")# 定义另一个单server的ob集群,mysql端口号/rpc端口号由uid hash生成ob2 = OBI("127.0.0.1")# 单个机器上起3个observerob3 = OBI("127.0.0.1@[z1,z2,z3]", dev="lo", is_local=True)
  接下来切换到admin用户,开始安装$ ./hap.py ob1.reboot
  大概1分钟左右即可搞定试用版的部署。
  连接至OB环境可以使用hap.py脚本$ ./hap.py ob1.obmysqlWelcome to the MySQL monitor. Commands end with ; or g.Your MySQL connection id is 3221487878Server version: 5.7.25 OceanBase 2.2.50 (r1-1c6441e8fb858c80da395f934f67ed305425864e) (Built Mar 6 2020 18:41:01)Copyright (c) 2009-2020 Percona LLC and/or its affiliatesCopyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type "help;" or "h" for help. Type "c" to clear the current input statement.OceanBase(root@oceanbase)>
  有一种无缝使用MySQL的感觉,目前这个版本(2.2.50)支持的是5.7的相关协议,查看使用版本。OceanBase(root@SYS)>select * from v$version;+---------------------------------------------------------------------------------------------+--------+| BANNER | CON_ID |+---------------------------------------------------------------------------------------------+--------+| OceanBase 2.2.50 (r1-c6441e8fb858c80da395f934f67ed305425864e) (Built Mar 6 2020 18:41:01) | 0 |+---------------------------------------------------------------------------------------------+--------+ row in set (0.00 sec)
  查看数据库列表,可以看到基本保持了MySQL的风格,当然也有Oracle的影子,看文档的描述是按照租户的模式来设计的。OceanBase(root@test)>show databases;+--------------------+| Database |+--------------------+| oceanbase || information_schema || mysql || SYS || LBACSYS || ORAAUDITOR || test |+--------------------+ rows in set (0.00 sec)
  那存储引擎是怎么体现的呢,在这里存储引擎就是OceanBase,支持事务。OceanBase(root@test)>show engines;+-----------+---------+-----------------------+--------------+----+------------+| Engine | Support | Comment | Transactions | XA | Savepoints |+-----------+---------+-----------------------+--------------+----+------------+| OceanBase | YES | Supports transactions | YES | NO | NO |+-----------+---------+-----------------------+--------------+----+------------+ row in set (0.01 sec)
  我们创建一张表,来看看原本MySQL的语法是否适用。OceanBase(root@test)>CREATE TABLE `data_detail_202107` ( -> `id` int(11) unsigned NOT AUTO_INCREMENT COMMENT "id", ...
  -> `value` int(11) NOT DEFAULT "0" COMMENT "数据值", -> `modify_time` datetime NOT DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT "修改时间", -> `create_time` datetime NOT DEFAULT CURRENT_TIMESTAMP COMMENT "创建时间", -> `note` varchar(255) NOT DEFAULT "" COMMENT "备注", -> PRIMARY KEY (`id`), -> KEY `idx_rlb_id` (`rlb_id`,`cycle_num`,`member_id`) -> ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT="数据明细表";Query OK, 0 rows affected,  warning (0.16 sec)
  没想到还是执行成功了,只是抛出了警告。OceanBase(root@test)>show warnings;+---------+------+---------------------------------+| Level | Code | Message |+---------+------+---------------------------------+| Warning | 1286 | Unknown storage engine "InnoDB" |+---------+------+---------------------------------+ row in set (0.00 sec)
  数据字典有一个视图views,完整的SQL语句是比较长的,我们来查看执行计划,直接使用了Hash Join>explain select * from viewsG*************************** 1. row ***************************Query Plan: ====================================|ID|OPERATOR |NAME|EST. ROWS|COST|------------------------------------|0 |HASH JOIN | |156 |4566||1 | TABLE SCAN|d |100 |2000||2 | TABLE SCAN|t |100 |2000|====================================
  其实show create table是很有代表性的,可以通过这个看到很多OceanBase中的设计点。OceanBase(root@test)>show create table data_detail_202107G*************************** 1. row *************************** Table: data_detail_202107Create Table: CREATE TABLE `rlb_award_detail_202107` ( `id` int(11) unsigned NOT AUTO_INCREMENT COMMENT "id", …
  `value` int(11) NOT DEFAULT "0" COMMENT "数据值", `modify_time` datetime NOT DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT "修改时间", `create_time` datetime NOT DEFAULT CURRENT_TIMESTAMP COMMENT "创建时间", `note` varchar(255) NOT DEFAULT "" COMMENT "备注", PRIMARY KEY (`id`), KEY `idx_rlb_id` (`rlb_id`, `cycle_num`, `member_id`) BLOCK_SIZE 16384 GLOBAL) AUTO_INCREMENT =  DEFAULT CHARSET = utf8mb4 ROW_FORMAT = DYNAMIC COMPRESSION = "zstd_1.0" REPLICA_NUM =  BLOCK_SIZE = 16384 USE_BLOOM_FILTER = FALSE TABLET_SIZE = 134217728 PCTFREE = 10 COMMENT = "数据明细表" row in set (0.01 sec)
  文档中关于Oracle和MySQL的兼容性是比较高的,那么业务就可以最大程度的使用两者的特性功能,总体来说和补充的测试和文档来看,还是有不少的期待。
  各大平台都可以找到我
  微信公众号:杨建荣的学习笔记
  Github:@jeanron100
  CSDN:@jeanron100
  知乎:@jeanron100
  头条号:@杨建荣的学习笔记
  网易号:@杨建荣的数据库笔记
  大鱼号:@杨建荣的数据库笔记
  腾讯云+社区:@杨建荣的学习笔记

胸怀是用委屈撑大的职场真实故事计划一位闺蜜到我居住的城市开会,席前神采飞扬光彩夺目自信满满。我忍不住表扬她。晚上喝茶聊天。她说,一个月前我差点从这个单位辞职,换到别的区去工作。我诧异她已是目前单位的初中课后辅导开始收费,家长却没有发现课程变化,钱交得太委屈对于现在的中小学生来说,作业已经不再是一种负担了,因为老师不会再留一些重复性抄写或者是无意义的作业,况且还有学校开展的课后托管服务,无需回家就能轻轻松松解决作业难题。当然在课后托管城市为啥越来越高楼耸立整洁美观,但缺少了烟火气人情味?城市越来越城市,还是人类的城市吗?但你的感觉绝对是人累的城市。高楼林立,整洁美观,却没有一点人间人情味的互动沟通感,满满的陷阱加套路。路边热情的小早点摊儿没啦,取而代之的是流动早点中国矿业大学的月饼走红,铁锤都敲不开,网友挖到月饼矿了中秋佳节就要来临,学生都对这个日子期盼不已,因为这一天的时候不用上课,但随之而来的又是写不完的作业,面对这个假期,你有什么打算呢?有没有准备月饼?由于疫情的原因,多所高校也建议师生大红大绿80,竟然搭出最高级的北欧风今天给大家分享的是一个独立设计师的案例。屋主是一对留学归国的90后小夫妻,从事于金融行业,加班学习同时爱折腾是他们的生活常态。在购买了北京朝阳这套83的小家后,他们希望家是共融的港语言障碍和言语障碍有啥区别,对孩子语言的康复有帮助吗很多人对语言和言语的概念区分不清晰,让我们先了解语言和言语的区别。最早对语言和言语概念进行阐述的是瑞士语言学家索胥尔,他认为语言是存在大脑中的社会心理现象,是一个整体认知的系统,每啥是言语失用症,外国语言病理学家这样解释言语失用症和失语症外表看似相同,但却是原因不同的两种语言障碍。童年言语失用症儿童语言失用症(CAS)是一种神经系统疾病,影响儿童说出声音音节和单词的能力。这不是因为肌肉无力或瘫痪,言语失用症孩子一开口就露馅,5个训练重点别忽略你见过这样的孩子吗?他们看上去和正常孩子一样,但是一开口就露馅了。他们什么都懂,但在说话的时候,不能自主控制发音,即使重复多次,也会出现不同的错误,比如省略替代歪曲等表现,有时候音宝宝什么都懂就是说不好,言语失用症训练重点有哪些?妈妈说,贝贝3岁了,大人说什么她都懂,能用手指头算出家里几口人,能认出很多卡片上的动物,可是贝贝只能说2个字,而且发音还不准,明明话到嘴边,就是表达不出来,显得笨笨的。经过语言评估越宽容的物种,越需要言语交流近日,来自59个研究机构的64名灵长类学研究人员在英国皇家学会开放科学杂志发表文章称,对彼此更宽容的灵长类动物会更多地使用声音进行交流。英国约克大学KatieSlocombe教授华什么是听觉言语训练?针对听障儿童在听觉发音及语言方面存在的问题,进行科学的有计划的训练,就称为听障儿童听觉言语训练。它包括3个方面听觉训练发音训练和语言训练。听觉言语训练的目的是什么?听障儿童听觉语言
孩子在外不开口,一定是胆小和害羞?家有慢热小孩,育儿指南记得有一次,带着小娃参加家庭聚会。去得路上就提前开始铺垫当天会来的人分别是谁,有几个叔叔和阿姨虽然很久没有见面了,但曾经和他做游戏,玩的很开心以此唤起他的记忆。除此之外,我还特意说优秀父母养成计划4个妙招教你用好绘本,爸爸妈妈变身育儿专家绘本几乎已经充斥在每家每户之中,并且时刻成为父母陪伴孩子最好的工具之一。大卫,不可以你看起来好像很好吃苏菲生气了,非常,非常生气魔法亲亲这些都是大人小孩都很熟悉的绘本,而且孩子们总ampampquot便便驾到ampampquot谈谈幼儿肛欲期的心理需求和探索需求今天的文章,来和大家聊些有色有味但需要家长有恰当引导以不损害宝宝发展的话题便便驾到。我们分肛欲期的表现家长正确支持肛欲期宝宝的原则能帮助到此发展阶段幼儿心理需求的活动游戏三个部分来二十年前的大汪景色,满满的回忆大汪位于费县大田庄乡周家庄村东北望海楼西侧,海拔高度845米。沿五圣堂周家庄的盘山公路,到达海拔540米的山口停车,顺山脊向东而上,大约1公里的路程就到了大汪。应该说,到大汪景点还解决好扶持谁的问题,找准穷根子打赢脱贫攻坚战,要坚决做到工作务实过程扎实结果真实。要提高脱贫的质量和成效,把防止返贫放在突出位置。脱贫攻坚,时不我待。今年是脱贫攻坚收官之年,时间紧,任务重,必须分秒必争。要认识小提琴慢练的15个黄金准则1。慢些你才能更快。2。慢练1遍,胜过快练10遍。3。能拉得慢也是功夫。4。如果慢不下来,说明控制力不够。5。本来拉不慢的曲子能慢下来,就是进步。6。流畅的慢胜过磕磕巴巴的快。7。孩子精细动作发展关键期,别错过这5个小游戏6岁前是孩子动作发育的敏感期,除了大运动的发展,还要特别注意手部精细动作和手部力量的发展,因为手部精细动作是和孩子脑部发育紧密相关的,前段时间我们推送孩子笨手笨脚,写字又丑又慢?爸家长必读远程康复训练中,家长和孩子最关注的九问九答这个寒假,疫情给孩子们的康复训练再次按下了暂停键,面对疫情带来的一系列问题,我们的后台收到了很多家长的留言不能去机构上课,孩子放假在家,还能继续做康复训练吗?不能进行线下课程,那我5个小方法帮助孩子认识身体的各个部位孩子进行自我认知的第一步就是对自己身体各个部位的认识正确认识身体部位不仅可以帮助孩子了解自己的身体更能让他们学会保护和爱惜自己的身体那么认识身体有哪些简单易操作的办法呢一起来看看吧培养孩子饮食习惯原来也有关键期在刚过去的春节,家里的小朋友有没有建立良好的饮食习惯呢?如果有,那么一起吃饭既可以让小朋友更充分地感受到节日气氛,又可以很好地锻炼社交能力。如果小朋友还处在吃饭时上蹿下跳挑食吃不了妈妈,我要跟你结婚!面对求婚,这位家长的回答好机智七夕将至,不知道各位爸爸妈妈有没有准备好给对方的礼物呢?有位妈妈在闺蜜群里吐槽自从生了娃,孩子爸爸的购物车里全是娃的东西,再也没有送过我礼物了!一石激起千层浪,妈妈们纷纷数落起自家