OceanBase Docker 体验

 

练习目的

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

练习条件

  1. 有笔记本或服务器,内存至少12G 。
  2. 操作系统不限,能安装 Docker 环境即可。

练习内容

请记录并分享下列内容:

  1. (必选)下载Docker 镜像:https://hub.docker.com/repository/docker/obpilot/oceanbase-ce
  2. (必选)使用 OBD 命令完成后续的 OceanBase 集群部署。
  3. (必选)创建一个业务租户、一个业务数据库,以及一些表等。

参考资料

  1. 社区版官网-文档-学习中心-入门教程:实战教程第二章2.2:如何快速体验 OceanBase
  2. 社区版官网-博客-入门实战:实战教程第二章2.2:如何快速体验 OceanBase
  3. 社区版官网-问答:OceanBase CE 容器下载使用简介
  4. 教程视频:【2-2-OceanBase Docker 体验.mp4]

练习要求

请用文章记录实践练习的环境、过程和问题(可选)、总结等,图文并茂。如果企业内部有安全限制,可以对 IP 、 密码等打码或者修改。如果不允许截图,可以用文字适当补充说明。 分享的文章行文语句通顺,有条理,字数不少于 500 字。

OBCP考试券获取说明

OceanBase 入门到实战教程总共有 6 个练习,完成必选的 4 个练习,表示你掌握教程分享的学习技能,可以结业,并赠送全额 OBCP 考试券。本次练习为必选练习,请同学们积极参与哦~

以上是引用的信息,以下是正文信息

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

下载Docker 镜像(必选)

环境信息:mac OS

下载docker

https://docs.docker.com/get-docker/

选择:Docker Desktop for Mac🔗

调整资源限制

image-20220206075234227

docker 版本

下载镜像

https://hub.docker.com/repository/docker/obpilot/oceanbase-ce

 

image-20220206083125561

 

启动 OceanBase Docker 容器

登录 oceanbase docker 容器

通过上面发现一个问题,就是 docker run 的时候自定义的 -e OB_TENANT_NAME=”liupsobca” -e OB_CLUSTER_NAME=”obcacluster” ,发现跟官方的镜像还是有一点点区别的,不支持自定义集群名字等信息。

查看环境变量信息如下:

image-20220206085339597

查看yum源和相关进程信息如上。

image-20220206085735934

obpilot 镜像的相关用户信息如下:

admin 用户的密码是 : adminPWD123 . 您可以使用 sudo yum 安装软件包。

 

使用 OBD 命令完成后续的 OceanBase 集群部署(必选)

登录OceanBase

通过 obproxy 登录

使用obproxy端口 用户@实例(租户)#集群

通过 observer直连

无需指定集群,使用observer端口

查看集群状态

 

 

查看集群资源信息

 

 

 

创建一个业务租户、一个业务数据库,以及一些表等(必选)

定义资源规格、资源池、实例(租户)

创建 unit、pool

在创建的时候提示 ERROR 4624 (HY000): machine resource ‘zone1’ is not enough to hold a new unit

经过查询应该是剩余资源不足:

查看剩余资源的 SQL:

image-20220206122313539

 

内存剩余0.8G

.

删除重建:

 

创建个200m内存的,提示 min_memory’s min value is 268435456 嘎。

重新创建 500m的,创建成功。

 

其实不需要drop然后新建,可以通过 alter 命令进行修改也是可以的

创建业务租户

查看实例状态

 

登录业务租户

修改密码

 

创建业务数据库

创建一些表信息

个人总结/体会

通过docker体验 OceanBase 非常简单方便,本次体验使用的是 obpilot/oceanbase-ce 镜像,跟官方镜像有不少的区别,官方没有 proxy,支持自定义集群名字等,obpilot/oceanbase-ce 比官方复杂,多了proxy的程序,但是不支持自定义集群/租户名称,有一点比较疑惑的就是 obd 的 cluster name 竟然可以跟 连接串的集群名字不相同。

再就是有个需要注意的是:在创建 resource pool 的时候如果可用资源不足,可能出现无法创建成功的情况。在创建之前可用查询下剩余资源。