【用户故事】初窥 国产数据库 | 前路漫漫 偶遇 OceanBase

…遇见 OceanBase 已经大半年了…对 OceanBase 我一直都保持童心,不忘初心,持续对数据库保持热爱,奔赴山海。坚定技术信仰,不负韶华,砥砺前行。

作者:马顺华

从事运维管理工作多年,目前就职于某科技有限公司,熟悉运维自动化、OceanBase部署运维、MySQL 运维以及各种云平台技术和产品。并已获得OceanBase认证OBCA、OBCP证书。

机遇与挑战、见证成长

2021年10月18日~10月20日,公司领导参加 “数造未来” DTCC2021中国数据库技术大会,我初次了解OB。

2021年10月19日-22日,参加阿里的云栖大会_2021_ OcanBase 原生分布式数据库论坛,我初次见到OB杨冰老师和日照老师。

2021年12月07日:首次加入钉钉[社区]OceanBase开源用户群。

2021年12月30日:首次体验OB通过手动部署OceanBase 3.1.1集群。

2022年01月05日:第一次在OB官方社区“问答”板块留言。

2022年01月05日:立下的第一个Flag,希望在2022年3月前考取 OBCP 认证。

2022年01月07日:报名参加OceanBase OBCA初级认证考试,获得认证OBCA证书。

2022年02月17日:完成OceanBase 入门到实战教程总必选的 4 个练习,并获得OBCP考试券一张!

2022年02月19日:第一次参加OceanBase 社区版[找茬!送书!OceanBase 社区版教程邀请你做阅读官,春节找“旧”bug,带走“新”书,一起“除旧迎新”过年啦~]活动,附录:教程文档贡献者 本人是其中一位贡献者 。

2022年03月21日:参加OceanBase 第二届技术征文大赛获得三等奖!

2022年03月26日:第一次报名参加OceanBase OBCP中级认证考试,未通过考试。

2022年03月30日:第一次在钉钉社群回复同学问题

2022年03月31日:第二次报名参加OceanBase OBCP中级认证考试,获得认证OBCP证书。

2022年04月08日:第一次在社区分享学习OB的心得【学习心得|从个人角度谈 六棱镜DBA和研发团队是如何学习OceanBase的?】

2022年04月08日:第一次帮同学给社区同学回答问题。

2022年05月20日:参加OceanBase 第三届技术征文大赛获得一等奖二等奖!

初窥 OceanBase

关于学习数据库,我一直专注Mysql等相关工具的学习。去年的10月一次公司例会,突然了解到,公司要用新的数据库,让我们去了解学习一下 OceanBase。就这样我开始参与了OB的学习,第一次了解到OB开源版自研数据库,并且多次支撑双11,大佬、大咖、很牛的技术等等源源不断的出现在我的面前。我发现我可能无法和OB这么大的平台进行有效的交流,OB完整的名字 OceanBase 都是第一次听说。但真正了解OB后被他的强大所吸引了,我觉得我应该要去改变学习除Mysql数据库以外的新数据库了,要不我就“停止前进”了,我开始了尝试学习OB数据库。通过学习测试,还是挺惊喜的。

数据库和操作系统、芯片一样,长期以来都存在技术瓶颈。 如今,经过不少优秀个人和企业的努力,国产数据库已开始了发力慢慢替代。当国产数据库产品琳琅满目,各有千秋,我关注的是分布式数据库 OceanBase 等等。在客户选择更好的产品的同时,让国产数据库之间产生了良性的竞争。我最开始是通过 OceanBase 的官方文档,一步步跟着文档进行学习操作。官方文档让我喜出望外,学习数据库不用看英文注释,这也是选择国产数据库的其一理由。学习积极性大大提升,因为很多内容不用自己去查翻译。在易用性方面,OceanBase 作为后起之秀,充分考虑到现有数据库用户的习惯,要兼容已经有的技术与产品,特别是在做数据库迁移的时候,在原有的软件代码不需要改动一行也能直接迁移到 OceanBase 上。

遇见 OceanBase

第一次以客户代表身份受邀报名参加阿里的云栖大会2021 OcanBase 原生分布式数据库论坛

遇见 #OceanBase ,遇见#国产数据库,始于日照老师。当我参加“2021OceanBase原生分布式数据库论坛”就觉得国产自主研发数据库这件事其实很另类,觉得非常不可思议。这直到现在我还是觉得支付宝OceanBase“国产数据库”一件很神奇的事情。

初识OceanBase,是源于云栖大会的机缘巧合下。

说到OceanBase团队到底哪里吸引了,我认为“无论是市场机会,还是业务价值,这些都是一个产品成功的基本要素。但是OceanBase最吸引他的其实是这个产品背后的宏大的愿景和价值观。也是OceanBase的愿景和价值观首先吸引了我。”把简单留给客户,把复杂留给自己“。

至今我还记得初次跟日照老师的见面,其实是源于云栖大会的机缘巧合。“日照老师分享“2021OceanBase原生分布式数据库论坛”,我在台下直接掏出了一个本子,开始听日照老师讲解OceanBase的整体架构、核心技术能力以及宏大的愿景。”看着日照老师精彩的分享,仿佛一切又回到了学生时代的教室”。

从中国的数据库市场来看,国外的商用数据库厂商,包括某M某O正在逐步的淡出,这已成事实。那么这部分市场空间一旦释放出来之后,在最近的几年时间,整个中国数据库市场已经进入到一个群雄逐鹿,百花齐放的繁盛时代。



一、初识OB社区

1、第一次加入[社区]OceanBase开源用户群

刚开始加入OB社区,我就被社区的工作人员“盯”上了,他们先是很耐心地给我介绍 OceanBase 社区,然后带我找到组织:OceanBase 官方群。刚入 OceanBase 社区的同学,我建议你一定要加群。因为很多问题,你发到群里,能更高效地解决。带我了解 OceanBase 社区之后,社区工作人员再三叮嘱我,畅游社区,有任何不好的体验,要马上反馈,他们一定会尽快解决。我这样一个“小透明”,突然被社区工作者众星拱月般的对待,着实有点受宠若惊!这份宠爱,独一无二。

2021年12月07日加入[社区]OceanBase开源用户群,[社区]OceanBase开源用户群,群号:33254054

2、第一次在社区“问答”活动内容板块留言

参加[#DC2021#签到早,抽周边]社区活动

活动链接 #DC2021#签到早,抽周边

第一次在社区留言是在社区活动板块留言 #DC2021#

目前问答区全新改版啦

链接:https://ask.oceanbase.com/

二、立flag自我驱动

OBCA 认证主要讲解 OceanBase 的发展历程、应用案例、产品架构、核心功能、部署安装等知识。帮助您理解多副本一致性协议、数据可靠及高可用、在线水平扩展、分布式事务等 OceanBase 的重要特性。OBCA 认证主要面向具备 IT 通用基础能力的学员,了解至少一门关系型数据库(MySQL 或者 Oracle),对分布式系统或分布式事务有基本了解,适合初级数据库管理员,初级应用开发人员,合作伙伴驻场服务人员等。

1、第一次参加考试考试报名OceanBase OBCA认证

推荐考个OceanBase的认证,尤其是OBCA 是免费的,可以到网站上https://oceanbase.com去考一下,在官方文档和老师的带领下通过认证快速了解入门

另附证书:
线上考试结束后,您可以通过个人中心查看考试成绩,通过考试即可在个人中心领取证书。

2、首次体验OB通过手动部署 OceanBase 3.1.1集群

大家知道部署 OceanBase 集群可以使用 OBD 部署工具,通过一些简单的命令就能非常快速的完成 OceanBase 部署。但是对于初学者来讲,就会比较困惑,OBDeploy 到底执行了哪些操作?具体操作步骤有哪些?虽然部署成功了,但是可能对于细节还是一头雾水。如果部署失败了,也不知道为什么报错,排障的过程比较麻烦。我最开始是通过 OceanBase 的官方文档,一步步跟着文档进行学习操作。官方文档让我喜出望外,学习数据库不用看英文注释,这也是选择国产数据库的其一理由。学习兴致大大提升,不用去查翻译。所以我第一次测试 OceanBase 集群是手动部署的3.1.1社区版,这样就可以了解一下具体的安装细节。新手觉得难的主要原因在于还不太了解OB的步骤原理,所以你想快速了解OB,可以手动部署 OceanBase。实际过程并不复杂,很容易掌握,也有实际意义。

OceanBase 以集群形态运行,生产环境最小规模是 3 台服务器(节点)。整个集群里,业务数据会有三份,所以也叫三副本。学习测试的时候,可以部署 单副本单节点 OceanBase 集群。

这里特别说明的是,单副本跟单节点并不完全对等。单副本单节点是最小集群规模,单副本也是可以扩容为多个节点,整个集群里数据依然是一份,所以叫单副本。

1)用户规划

OceanBase 本质上是一个软件,可以运行在任意用户下。OceanBase 软件包默认解压目录是在 /home/admin/ 下,生产环境默认也是安装在用户 admin 下。社区版的软件 RPM 包也是这个特点,支持部署在任意用户的任意目录下。

根据官方介绍,建议安装部署在普通用户下,此次测试均以用户 admin 为例。

注意admin 用户赋与 sudo 权限不是必须的,只是为了某些时候方便操作。您可以结合企业安全规范决定是否执行。

2)磁盘规划

OceanBase 读写磁盘主要是三类文件:

  • 运行日志。在启动目录下的 log 目录里。主要记录进程 observer 的运行日志、选举服务的运行日志和 rootservice 的运行日志。主要读写特点是顺序写。
  • 数据文件。主要是指数据文件 block_file ,一次性初始化大小,后面可以在线扩容,但是不能缩容。主要读写特点是随机读、顺序写。偶尔密集的随机写。
  • 日志文件。主要是指事务和sstable相关的日志 ,包括 clogilogslog 等。主要读写特点是顺序写。

这三个文件尽可能的分散在不同的磁盘上存储。如果物理上只有一块盘,则可以使用 fdisklvm 划分为多个逻辑盘。

3)初始化服务器环境

OceanBase 数据库是单进程软件,需要访问网络,需要打开多个文件以及开启很多 TCP 连接,所以需要修改内核参数和用户会话设置。

注意 您如果在独立服务器上部署 OBProxy,也需按本文要求初始化服务器环境。

4)安装 OceanBase 软件包

OceanBase 本质上是一个单进程的软件,可执行文件名叫 observer 。可以通过 RPM 包安装,也可以通过源码直接编译安装。手动部署,需要安装 OceanBase 的 OBSERVER 软件 。本次手动测试是通过 RPM 包方式安装。手动部署,需要安装 OceanBase 的 OBSERVER 软件 。(所有目标机器)准备好 OceanBase 的 RPM 包,安装oceanbase-ce oceanbase-ce-libs libobclient obclient



5)启动 OBSERVER

每个机器的启动参数大部分一样,只有少数不一样,需要特别留意。

a)启动第一台服务器112.127.2.120 (zone1)
echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/oceanbase/lib' >> ~/.bash_profile
. ~/.bash_profile  #将 OceanBase 数据库的 lib 加到环境变量 LD_LIBRARY_PATH 中

cd ~/oceanbase && bin/observer -i ens192 -p 2881 -P 2882 -z zone1 -d ~/oceanbase/store/obdemo -r '112.127.2.120:2882:2881;112.127.2.121:2882:2881;112.127.2.122:2882:2881' -c 20220217 -n obdemo -o "memory_limit=20G,cache_wash_threshold=8G,__min_full_resource_pool_memory=268435456,system_memory=3G,memory_chunk_cache_size=128M,cpu_count=16,net_thread_count=4,datafile_size=50G,stack_size=1536K,config_additional_dir=/data/obdemo/etc3;/redo/obdemo/etc2"

b)启动第二台服务器112.127.2.121 (zone2)
echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/oceanbase/lib' >> ~/.bash_profile
. ~/.bash_profile  #将 OceanBase 数据库的 lib 加到环境变量 LD_LIBRARY_PATH 中

cd ~/oceanbase && bin/observer -i ens192 -p 2881 -P 2882 -z zone2 -d ~/oceanbase/store/obdemo -r '112.127.2.120:2882:2881;112.127.2.121:2882:2881;112.127.2.122:2882:2881' -c 20220217 -n obdemo -o "memory_limit=20G,cache_wash_threshold=8G,__min_full_resource_pool_memory=268435456,system_memory=3G,memory_chunk_cache_size=128M,cpu_count=16,net_thread_count=4,datafile_size=50G,stack_size=1536K,config_additional_dir=/data/obdemo/etc3;/redo/obdemo/etc2"

c)启动第三台服务器112.127.2.122 (zone3)
echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/oceanbase/lib' >> ~/.bash_profile
. ~/.bash_profile  #将 OceanBase 数据库的 lib 加到环境变量 LD_LIBRARY_PATH 中

cd ~/oceanbase && bin/observer -i ens192 -p 2881 -P 2882 -z zone3 -d ~/oceanbase/store/obdemo -r '112.127.2.120:2882:2881;112.127.2.121:2882:2881;112.127.2.122:2882:2881' -c 20220217 -n obdemo -o "memory_limit=20G,cache_wash_threshold=8G,__min_full_resource_pool_memory=268435456,system_memory=3G,memory_chunk_cache_size=128M,cpu_count=16,net_thread_count=4,datafile_size=50G,stack_size=1536K,config_additional_dir=/data/obdemo/etc3;/redo/obdemo/etc2"

配置填写正确,服务启动应该不会有什么问题。

如果三个节点机型都一致,那么启动参数里只有一个参数不一样,就是 -z指定该节点是哪个 zone 。三个 zone 的三个节点初始化为一个三副本集群。后面 -o 参数不是必须的。这里主要是测试机器内存不足,所以需要指定一些影响内存的参数。如果您机器内存足够(如大于64G),则可以不需要 -o 参数部分。

6)连接 OceanBase 集群

有一种无缝使用MySQL的感觉,因为OceanBase的连接信息跟MySQL连接的协议就是兼容mysql的。这么做是考虑到MySQL的普及性让更多人和应用能接受OceanBase。跟传统MySQL 不一样的地方是 OBSERVER 连接端口是 2881 , 连接用户名是 :root@sys ,密码是前面 OBD 配置文件ex里指定的。

[admin@CAIP131 ~]$ obclient -h 112.127.2.120 -u root -P 2881 -p -c -A

3、参加培训中心Flag互动留言

【Flag】一句话证明你想考 OBCP 的决心,2022年立下新的flag,我们一起来互动学习~~

如果你想学习原生分布式数据库 OceanBase 而苦于没有领路人,如果你想上手使用 OceanBase 却在部署阶段因为种种困难而望而却步,如果你想考数据库证书 OBCA&OBCP 却不知从何处开始着手?

那么这门教程可能会是你最好的选择 :由 OceanBase 开源团队推出的社区版第一本教程 《OceanBase 社区版入门到实战》正式开课啦!

戳学习指引,了解教程学习的最佳方式,三个阶段,指导你从零基础的小白开始,入门参与实战项目,最终化身成为技术专家。

附:前四章自学指引

那么,你为什么要学习这门教程,你希望教程学完能有什么样的收获,来立一个flag,一起加油努力吧!

flag

示例1:希望在2022年3月前考取 OBCP 认证。

示例2:看完所有教程内容,听完所有直播,完成六道练习题。

示例3:希望为 OceanBase 社区版第一本教程贡献力量,给文档找 bug,助力更多人更快上手使用 OceanBase 。

立下的第一个Flag:希望在2022年3月前考取 OBCP 认证

OBCP考试报名费用是1200元,告诉大家一个免费获得OBCP考试报名券的方法,完成四道必选练习,表示你掌握教程分享的学习技能,可以结业,联系OB老师就可以免费带走 OBCP 考试券(注意考试券只有三个月时间,拿到考试券的同学尽快报名考试)OBCP考试券获取说明

很多同学关心如何获取OBCP考试券,这里解答一下哈~
OceanBase 入门到实战教程六道练习题已经全部发布完毕,完成四道必选练习,就可以免费带走 OBCP 考试券~~
https://open.oceanbase.com/answer/detail?id=13700696&search=&pageNum=2
“练习题”:
实践练习一(必选):OceanBase Docker 体验 
https://open.oceanbase.com/answer/detail?id=13700695&search=&pageNum=2&sou=0a001
实践练习二(必选):手动部署 OceanBase 集群 
https://open.oceanbase.com/answer/detail?id=13700696&search=&pageNum=2&sou=0a001
实践练习三(可选):使用OBD 部署一个 三副本OceanBase 集群 
https://open.oceanbase.com/answer/detail?id=13700844&search=%E7%BB%83%E4%B9%A0%E4%B8%89&pageNum=1&sou=0a001
实践练习四(必选):迁移 MySQL 数据到 OceanBase 集群 
https://open.oceanbase.com/answer/detail?id=20400030&search=&pageNum=2&sou=0a001
实践练习五(可选):对 OceanBase 做性能测试 
https://open.oceanbase.com/answer/detail?id=20400273&search=&pageNum=1&sou=0a001
实践练习六(必选):查看 OceanBase 执行计划 
https://open.oceanbase.com/answer/detail?id=20400276&search=&pageNum=1&sou=0a001

4、自我立下的第二个Flag

然后为立下的flag,努力加油,自我驱动!

第二个Flag:示例2:看完所有教程内容,听完所有直播,完成六道练习题。

OBCP考试报名费用是1200元,所以我要努力加油实现第二个Flag,达到第一个Flag,免费获得OBCP考试报名券。

1)实践练习一(必选):OceanBase Docker 体验

练习目的

本次练习目的是通过 OceanBase Docker 容器,快速的体验 OceanBase 的 自动化部署过程,以及了解 OceanBase 集群安装成功后的目录特点和使用方法。

实验练习:https://cdn.modb.pro/db/250245 Docker单节点自动化部署OB集群

2)实践练习二(必选):手动部署 OceanBase 集群

练习目的

本次练习目的掌握 OceanBase 集群的手动部署技能,理解进程的相关目录、集群初始化、OBProxy和 OB 集群关系等。

实验练习: https://cdn.modb.pro/db/322997OceanBase 单节点手动部署OB文档

实验练习 https://cdn.modb.pro/db/328171 OceanBase手动部署三节点OBserver文档

3)实践练习三(可选):使用OBD 部署一个 三副本OceanBase 集群

练习目的

本次练习目的掌握 OceanBase 集群的自动化部署(OBD工具)技术,能自动部署OB集群,包含 OBProxy,以及部署 OBAgent 等。

实验练习:https://cdn.modb.pro/db/324460使用OBD自动部署三节点OceanBase文档

4)实践练习六(必选):查看 OceanBase 执行计划

练习目的

本次练习目的掌握 OceanBase 的执行计划查看方法,包括 explain 命令和查看实际执行计划。

实验练习:https://cdn.modb.pro/db/327627 分析TPC-C 查看 OceanBase 执行计划

5)实践练习四(必选):迁移 MySQL 数据到 OceanBase 集群

练习目的

本次练习目的掌握从 MySQL 向 OceanBase 迁移数据的基本方法:mysqldump、datax 、canal 等。

实验练习:https://www.modb.pro/db/337263#comment 使用mysqldump和datax从mysql数据迁移到OceanBase

6)收到OB官方Hope老师的奖励OBCP考试券一张!

5、第一次参加考试考试报名OceanBase OBCP认证

如果是dba, 那必然会遇到很多问题, 到开源社区去咨询, 在寻求帮助的过程中, 也不断的锻炼自己, 让自己的知识越来越丰富, 对一些复杂问题又一些更深入的学习. 对于dba来说, 这个时候, 推荐考一个OBCP的认证。相比OBCA来说OBCP考试难度比较高,涉及OB的知识点比较多,不只是理论和概念,还有实际的应用和操作。建议先复习一下OBCA的内容,循序渐进,基础打好了备考OBCP就会事半功倍。

OBCP 认证

1月份通过了OBCP考试后,想进一步了解OB分布式数据库,准备备考OBCP。刚好免费获得OBCP考试券,随后开始紧张的备考OBCP OceanBase 数据库认证专家。OBCP 认证与培训覆盖了 OceanBase 的高级特性(负载均衡、分布式事务)、内存与落盘技术、SQL 引擎与调优、OBproxy 路由策略、备份与恢复,运维、监控和常见故障处理等内容,同时有对应的进阶实验。OBCP的考试采用线下考试,奥星贝斯授权ATAC为考生提供报名、缴费、考试等服务。ATAC线下考点覆盖全国主要城市,您可以就近选择。OBCP考试题目一共66道(从题库中随机抽取)。其中10道判断题(每题0.5分)、34道单选题目(每题1.5分)、22道多选题目(每题2分),总分100分,通过分数为80分。报考OBCP考试前,必须获得OBCA证书。OBCP考试时间为90分钟,过程中无法暂停,考试完马上就可以知道分数了。我第一次考了70分没过,第二次考了89分过了。

OBCP 培训课程主要讲解 OceanBase 的高级特性(全局索引、全局数据一致性、负载均衡策略、SQL引擎优化),以及 OceanBase 内存构成、内存数据落盘策略和HTAP等知识,同时提供了进阶实验课程。参加此培训基本要求为:通过 OBCA 初级认证;2 年以上数据库 DBA 工作经验。 适合架构师、高级数据库管理员、高级应用开发人员等合作伙伴高级售后服务人员。

链接: https://www.oceanbase.com/training/detail?level=OBCP

OBCP 证书:
线下考试结束后,您可以于5个工作日后通过个人中心查看考试成绩,通过考试即可在个人中心领取证书。

另附考试结果:

本人OBCP考了两次,第一次考只了70分,离80分及格差10分,自己太着急了,没有准备好。还有考试日期可能没有选好,刚好郑皓嘉老师的 OBCP 认证课程碰到一起了,没能进赶上参加直播培训课,官方文档很多细节没注意看,结果没有过。

第二次考了89分,主要是第一次听郑皓嘉老师的 OBCP 认证课程觉得很有用,考试完了马上从考点赶回来重新听课程,大部分课程都是考点内容,相比自己看文档强很多,这个课程很有必要,强烈推荐大家学习。

祝愿大家都能顺利拿下OBCP。

三、学习、分享

想要了解一个产品、用好这个产品,那你不得不花一些心思去了解它,先从理论出发,熟悉它的架构,了解它的核心功能等,只有这样你在使用时才能得心应手。所以你可以加入社区和同学们一起学习。记得刚开始加入OB社区,我就被社区的工作人员“盯”上了,他们先是很耐心的给我介绍 OceanBase 社区,然后带我找到组织:OceanBase 官方群。刚入 OceanBase 社区的同学,我建议你一定要加群。因为很多问题,你发到群里,能更高效的解决。带我了解 OceanBase 社区之后,社区工作人员再三叮嘱我,畅游社区,有任何不好的体验,要马上反馈,他们一定会尽快解决。我这样一个“小透明”,突然被社区工作者众星拱月般的对待,着实有点受宠若惊!这份宠爱,独一无二。

1、第一次参加OceanBase 社区版教程活动

[找茬!送书!OceanBase 社区版教程邀请你做阅读官,春节找“旧”bug,带走“新”书,一起“除旧迎新”过年啦~]

链接 找茬!送书!OceanBase 社区版教程邀请你做阅读官,春节找“旧”bug,带走“新”书,一起“除旧迎新”过年啦~

发现问题并提交问题

2、成为教程文档贡献者

参与找茬活动!提出问题建议,并有幸成为教程文档贡献者 其中一位参与者。

670b308691c8a3f212b846c4fcf958c4_image-20220605134026104

社区共创的电子书已经出来啦!感谢各位老师的贡献~


附录:教程文档贡献者 本人是其中一位参与者。

链接 OceanBase 社区

收到OB官方辛老师寄的纸质书
dcecb5085091e0dfc25aad41ff4725b8_image-20220605133841831


3、第一次分享学习OB的心得到博客

[学习心得|从个人角度谈 六棱镜DBA和研发团队是如何学习OceanBase的?]

4 月的一天,我在 OceanBase 发表了一篇学习心得:从个人角度谈六棱镜 DBA 和研发团队是如何学习 OceanBase 的。写这篇文章的初衷,是想帮助其他想要选型 的企业,有经验可以借鉴。没想到,这样一篇普普通通的文章竟然被日照老师点名表扬。

链接: 学习心得|从个人角度谈 六棱镜DBA和研发团队是如何学习OceanBase的?

跟日照老师互动的故事还有很多。日照老师每一次的表扬,都让我更有信心。

分享的学习心得~受到很多同学的喜爱

4、开启思维碰撞之旅

1)爱上社区,成于博客

爱上社区,成于博客。随着我对 OceanBase 社区越来越熟悉,我写的文章也越来越多:《BenchmarkSQL 对 OceanBase 开源版3.1.2性能测试调优探索》、《Sysbench 对 OceanBase 开源版 3.1.3 数据库的 OLTP 性能测试》、《如何由浅 OBCA 入深 OBCP 学习社区版 OceanBase 快速拿证》······我的这些文章,虽然有不少被官方表扬。但每次看到自己的博文被推,我还是忍不住窃喜。


2)第一次主动在社区给同学回答问题

自接触数据库以来,我曾混迹于多个社区,知名的、不知名的,都有我的足迹。但是,我敢说,没有哪个社区能像 OceanBase 这样,能让你第一次进就“破冰”,彷佛这里聚集的是一群老朋友,他们似火的热情,让你毫无陌生感,你能很快融入其中。所以也开始了我的第一次主动在社区给同学回答问题?

为同学解答问题

3)第一次遇到问题,自己提交问题

和很多新同学一样,我最开始是通过OceanBase的官方文档,一步步跟着文档进行学习操作。在使用 OceanBase 时,可能会遇到各种问题,例如我就遇到了 OBD 部署的部署问题:

手动部署 OBserver 时可以下载 OceanBase 指定版本的 RPM 包部署,在 OBD 部署 OBserver 时如何指定版本部署,例:现在 OBD 自动部署时,默认使用了最新版本3.1.3。但是,如果在 OBD 自动部署时想使用旧版本3.1.2部署 OBserver,如何操作?又比如,如果通过 OBD 自动部署3.1.3后,可以降级为3.1.2吗?还是说不能降级,只能重新部署?

带着这些困惑,我尝试求助 OceanBase 社区的朋友。让我没想到的是,我的提问,很快就得到了回复。这种初体验,让我有点喜欢 OceanBase。

[ OBD部署OBserver如何指定版本 ]问题?

在体验 OceanBase 的过程中,如题有问题很快就会得到OB社区和顺老师和同学们的回复,很多棘手的问题,在 OceanBase 社区都迎刃而解。

4)第一次在钉钉社群回复问题

刚入 OceanBase 社区的同学,我建议你一定要加群。因为很多问题,你发到群里,很快就会得到OB社区老师和同学们的回复,能更高效的解决问题?下次有新同学进来,遇到你之前遇到过的问题,你也可以帮助新同学啦。

5、第一次参加OceanBase 社区版文档捉虫活动

OceanBase 社区之后,社区工作人员再三叮嘱我,畅游社区,有任何不好的体验,要马上反馈,他们一定会尽快解决。如今的我,活跃在社区的各个角落:捉虫活动有我,直播课程有我,互动问答有我,文档建设依然有我!

链接 OceanBase 社区

github上提交PR,加入文档捉虫活动交流群 群号:41203246

参与文档捉虫活动,最终获得第七名

image

6、寻求帮助

1)官方社区问答板块寻求帮助

OB开源团队老师和同学非常乐于跟用户交流OB技术。OceanBase 的社区问答是我非常喜欢的板块,因为不论你提的问题是初级的问题,还是高级的问题,都会得到很反馈。你可以在OceanBase 社区问答板块提问、分享、查找之前别人遇到过的问题?另外,你的认真解答,也会被很多人认可。在寻求帮助的过程中, 也不断的锻炼自己, 让自己的知识越来越丰富。

问答链接:https://ask.oceanbase.com/

2)官方钉钉群寻求帮助

OB开源团队老师和同学非常乐于跟用户交流OB技术。加入钉钉社群,提问、分享、查找之前别人遇到过的问题? 在寻求帮助的过程中, 也不断的锻炼自己, 让自己的知识越来越丰富。

钉钉群号 33254054

我知道,自己已经从社区的围观者,转变成社区的建设者。我很享受这种角色的转变,也很乐意为社区贡献微薄的力量。往小了说,这是我想要在 OceanBase 有所建树的必经之路,往大了说,这是我在为国产数据库的建设添砖加瓦!无论哪种原因,我都希望 OceanBase 越来越好。

四、循序渐进、收获荣誉

1、第一次被评为月度之星

4月月度之星新鲜出炉,看看有没有你熟悉的身影]

**如何成为 「月度之星」?**

👉在社区问答区、钉钉群、微信群积极解答其他小伙伴的问题;

👉在社区博客发表自己的技术文档/考证心得/实战经验等内容;

👉为社区产品提优化建议;

👉分享OB使用实战体验;

👉分享学习笔记和作业;

👉积极参与/策划组织社区活动;

👉分享技术讲座;

👉积极邀请其他小伙伴加入社区共同成长;

……(只要是有利于大家学习、成长,不限形式、脑洞大开,都有机会成为月度之星)。

本人有辛被评为 「月度之星」

OceanBase社区是大家共同的社区,在这个大家庭了,只要你积极参与,互帮互助,都是咱们的月度之星,因为你的点滴付出,都被社区铭记下来,靠实力赢得大家的尊重。OB开源社区是大家的社区,因为有你们,OB开源社区和大家一起快速成长。让我们一起为社区做贡献,期待以后可以看到更多同学的身影喔……

2、参加 OceanBase 技术征文大赛并获奖

OceanBase 为帮助广大技术爱好者学习原生分布式数据库相关知识,快速掌握 OceanBase 的操作技能,已联合墨天轮技术社区举办了技术征文大赛,大家在编写文章的同时,能够快速掌握原生分布式数据库 OceanBase 的操作技能,又可以与众多数据库开发者建立了良好的沟通互动,帮助大家提升数据库领域专业竞争力。OceanBase 联合墨天轮社区举办了多届 OceanBase 技术征文大赛,只要参与投稿,不仅有机会获得我们精心准备的奖品,还有机会成为 OceanBase 专属技术布道师,与更多志同道合的朋友一同参与到原生分布式数据库技术布道中!

1)参加OceanBase第二届技术征文大赛

大赛链接:https://www.modb.pro/db/327631

“May the force be with you” ,《星球大战》中,一切生命体都会产生“原力”,它是银河系中神秘的分布式能量场,无处不在,神秘莫测,让整个星系凝聚在一起,另无数人心之向往。

2022年1月,在DC 2021分布式数据库开发者大会上,发布了 OceanBase 社区版3.1.2,推出全新社区版工具体系(社区版 OCP、社区版 ODC、社区版 OMS),获得业界广泛关注。

值此新版本发布之际,OceanBase 特联合墨天轮技术社区推出 第二届OceanBase 技术征文大赛,邀请广大开发者分享自己的真实体验,以文会友的同时,分享自己的技术理念,深入探索分布式数据库的原力。

活动规则

投稿内容:体验 OceanBase 社区版3.1.2 ,使用社区版工具(社区版 OCP、社区版 ODC、社区版 OMS)完成一项任务,如数据迁移,分享使用体验,题裁不限,自由发挥。

围绕 OceanBase 分布式数据库技术,更多写作方向参考:

  • 课程学习:《OceanBase 社区版入门到实战》学习笔记;
  • 认证考试:OBCA、OBCP、OBCE 认证学习和考试心得;
  • 客户实践:客户使用 OceanBase 社区版/商业版实践总结。
    image

投稿方式:文章在墨天轮社区首发,并添加标签 #OceanBase征文,将文章链接发给 OceanBase 征文小助手微信(oceanbase001),即完成投稿。

投稿要求:文章字数不少于600字,图文并茂,原创,且在墨天轮社区首发;抄袭将视为无效。

以下是我自己动手一步步安装部署实验教程供大家参考:来源墨天轮

https://www.modb.pro/db/374506 详解OceanBase数据库备份恢复保障数据安全

https://www.modb.pro/db/365814OceanBase 借助OBD三节点集群部署+集群扩容+租户扩缩容

https://www.modb.pro/db/337263 使用mysqldump和datax从mysql数据迁移到OceanBase

我写的文章登上了墨天轮首页热门

借助OBD三节点集群部署+集群扩容+租户扩缩容

我写的文章登上了墨天轮首页热门

使用mysqldump和datax从mysql数据迁移到OceanBase

以上发表的文档参加墨天轮愿原力与你同在,OceanBase第二届技术征文大赛!获得三等奖。

昵称:shunwah 就是我啦

这是获奖的荣誉证书和礼品

2)参加OceanBase第三届技术征文大赛

大赛链接:https://www.modb.pro/db/388053

OceanBase 征文大赛已经进行了两期,期间我们收获了众多开发者的踊跃投稿和很多宝贵建议,感谢大家对 OceanBase 的支持。

第一期,为了鼓励大家积极分享学习体会,我们将主题聚焦在“从入门到实战”的课程学习上,很多刚接触 OceanBase 的小伙伴将其学习心得进行了分享,让很多读者对 OceanBase 有了基础认识。

第二期,我们将主题聚焦在“工具体验”,邀请了广大开发者体验 OceanBase 社区版3.1.2,使用社区版工具(社区版 OCP/ ODC/OMS)完成数据迁移等任务。在体验中,我们也收到了众多开发者的使用建议。

经过前两期,相信大家对 OceanBase 以及周边工具有了一定的认识。为了让大家可以更深层次地体验 OceanBase 能力,探索更高阶的玩法,我们开启了第三期技术征文大赛,本期主题为“性能调优”,希望有更多的开发者参与实践探索,围绕 OceanBase 的众多参数和配置项进行挖掘、创新。

投稿规则

围绕 OceanBase 性能参数调优、压缩、转储等方向 进行内容写作,具体如下:

  • 性能测试方向:可以在对场景进行说明的基础上自己造数或者用业务数据来测试;也可以是基准(TPCC、TPCH、sysbench)测试,即标准、真实的性能压测。
  • 围绕哪些点做测试:第一,SQL 调优,通过优化 SQL 来提升 SQL 查询性能或者写入性能;第二,OceanBase 系统调优:包括调整集群参数(内存、压缩、转储等方式)、使用姿势等提升性能;第三,OS 层(操作系统层)调优。

除了以上方向外,我们添加了一个关于“特别方向”征文的彩蛋环节,也欢迎大家投稿关于 OceanBase 的使用心得或 OceanBase 与其他开源数据库功能对比的内容

以上仅做参考引导,我们鼓励大家自由、创新发挥。

投稿方式

Step1: 文章在 墨天轮社区 首发,并添加标签 #OceanBase 征文 发布。
image

Step2: 添加 OceanBase 征文小助手微信(oceanbase001),发送链接给小助手即完成投稿。

文章字数不少于 800 字,图文并茂,原创,且在墨天轮社区首发;抄袭视为无效

本期征文结束后,评优结果将第一时间在墨天轮社区、OceanBase 微信公众号公布。

已下是我自己动手对OB性能参数调优实验教程供大家参考:来源墨天轮

https://cdn.modb.pro/db/400397 改造Benchmark SQL适配OceanBase开源版数据库跑TPC-C查看执行计划

https://www.modb.pro/db/390498 BenchmarkSQL对OceanBase开源版3.1.2性能测试调优探索

https://www.modb.pro/db/391877 Sysbench对OceanBase开源版3.1.3数据库的OLTP性能测试

我写的文章登上了墨天轮首页热门

改造Benchmark SQL适配OceanBase开源版数据库跑TPC-C查看执行计划

我写的文章登上了墨天轮首页热门

Benchmark SQL对OceanBase开源版3.1.2性能测试调做探索

我写的文章登上了墨天轮首页热门

Sysbench对OceanBase开源版3.1.3数据库的OLTP性能测试

以上发表的文档参加 OceanBase 第三期技术征文大赛——“极速前进.OceanBase 性能挑战季”获得一等奖和二等奖。

昵称:shunwah 就是我啦

这是获奖的荣誉证书和礼品

3)参加OceanBase六月征文特别企划|分享您与 OceanBase 的第一次

链接:https://www.modb.pro/db/410909#comment

在这个充满童心和想象力的日子,我们开启了**“OceanBase 童心未泯季”特别征文活动**。希望与广大数据库开发者保持童心,奔赴初心,坚定技术信仰,不负韶华,砥砺前行。

—— 评选详情 ——

本期童心未泯季征文主题将围绕“开发者和 OceanBase 的第一次”的故事主线,邀请使用过、在测试、在学习以及刚了解 OceanBase 的开发者们,分享与 OceanBase 一起共同经历过的众多第一次,包括不限于以下参考:

Step1: 文章在 墨天轮社区 首发,并添加标签 #OceanBase 征文 发布。
image

Step2: 添加 OceanBase 征文小助手微信(oceanbase001),发送链接给小助手即完成投稿。

文章字数不少于 800 字,图文并茂,原创,且在墨天轮社区首发;抄袭视为无效

本期征文结束后,评优结果将第一时间在墨天轮社区、OceanBase 微信公众号公布。

五、OceanBase 融入我的生活

当我在沉浸在 OceanBase 社区无法自拔时,我的儿子也在潜移默化中了解了 OceanBase 。

3月的一个午后,我应邀去参加 OceanBase 的直播课程。就在我打开电脑的刹那,不认真写作业的儿子,对着我喊了一声:“爸爸, OceanBase。”小家伙突如其来的这一句,瞬间逗乐了我和正在洗碗的妻子。妻子趁机调侃我:你看看,你看看,你一天到晚都在家 OceanBase、 OceanBase,现在好了, OceanBase 的地位超过我了。你儿子都知道 OceanBase 了。

“爸爸,你要去阿里巴巴吗?”、“爸爸,这个乐高是 OceanBase 给我的吗?”、“爸爸,我也要参加直播”······从6岁的儿子第一次冒出“ OceanBase”之后,我就知道,这小家伙正在用他的方式,探索他爸爸的生活。

现在,他已经了解,OceanBase 属于阿里巴巴,OceanBase 有直播,OceanBase 会给他爸爸送乐高······可能他不知道 OceanBase 真正意味着什么,但是他知道, OceanBase 已经是他爸爸工作、生活不可或缺的一部分。

除了儿子,老爸老妈以及身边的朋友,也会时不时来问一下 OceanBase。

他们了解 OceanBase ,主要是因为我在微信群、朋友圈等社交阵地,“不遗余力”的推广我在 OceanBase 社区发表的文章。这些文章既有我学习、实践 OceanBase 的成果,也有我为别人答疑解惑的“智慧之光”。我很愿意把这些分享给我的家人、朋友。我不在乎这些文章他们能不能看懂,也不在乎对他们有没有帮助。我只是单纯的想跟他们分享我的生活,想让他们知道,我在学习数据库,我在了解国产数据库。

如今,不管是通勤路上,还是饭后休息,只要一有时间,我就会进入 OceanBase 社区,看看有没有新的问题是我能解决的,看看有没有新的回答是能够帮助到我的。然后再去 OceanBase 社群,跟一帮素未谋面的“老朋友们”聊聊天。就这样,每天都过的很充实。仔细想来,我从去年开始,了解 OceanBase,熟悉 OceanBase,然后加入 OceanBase 社区,参与社区各种活动,跟社区的各种大佬、小白互动······直至今日,成为 OceanBase的月度之星,我的生活,OceanBase已经占了大头。

结语

前路漫漫,未来可期

数据库博大精深,需要系统学习数据库理论知识并加以实践。本人对 OceanBase 了解尚浅,测试OB的配置文件主要是参考网络搭建,还在不断探索中,可能存在某些参数不是最优。在学习的过程中大部分内容都会记笔记,不管是正确的还是错误的都记录。在实践总结中遇到的问题,给了我们很好的提示。自己整理笔记和文章,你也可以出使用教程和遇到错误后的解决方案啦。体验 OceanBase 数据库时,只要仔细根据文档的指导建议,并进行部署和设置。那么无论部署单机版还是集群版,都能够很快完成部署。感谢 OceanBase 数据库开源社区,感谢OB社区老师和同学们的支持鼓励。如有不到位的,还请各位大佬多指正。未来我会一直深度参与社区建设,输出更多优秀的实践案例,帮助社区用户探索更多的业务场景。OceanBase 秉承的价值观背后就是不断打磨自己的产品,真正能够解决行业客户的共性需求,OceanBase 的开源之路还很长。随着时间发展,OB未来必然能够得到广泛的应用。也衷心祝愿国产数据库越来越好!

欢迎大家在文章评论区反馈留言和我交流学习。

3 个赞

大佬,你好,向你学习

谢谢张老师支持呀,还要多多向您学习呢