Win10 + WSL2 部署 OceanBase 演示环境

在今年六月底正式毕业后,打算在入职前部署一下 OceanBase 的环境试试。然而,在告别了实验室的服务器和实体机后,我突然意识到作为一个开发者,自己的 Win10 笔记本竟然长期以来都是一个用于 remote ssh 链接的工具。好在之前某次实验中我配置的WSL2 环境还留着,既然 OceanBase 是一个成熟的数据库,而 WSL2 又号称对 Linux 的支持比 WSL1 上升了一个台阶,那就让我来尝试一下能否在 WSL2 上部署一个 OceanBase 的演示环境吧。

1. 实验配置

硬件配置如下:

  • CPU:Intel(R) Core™ i7-10710U CPU @ 1.10GHz 1.61 GHz

  • 内存:16.0 GB

软件配置如下:

  • 操作系统:Windows 10 家庭中文版

  • Linux 环境:WSL2 + Ubuntu 20.04 镜像

2 实验流程

单机演示环境的配置参考 OceanBase使用-Oceanbase搭建 教程-分布式数据库

2.1 下载并安装 all-in-one 安装包

根据文档说法,我们可以执行命令在线下载并安装 all-in-one 安装包。

然而,似乎遇到了一些问题,提示 gzip 的输入格式有误。把 installer.sh文件下载到本地,查看内容。

可以看出其实是一段通过判断环境变量自动下载压缩包的脚本。但是可能因为 WSL2 比较特殊,获取不了环境变量,因此下载下来的内容压根不存在。

可以看到这个压缩包的大小只有 310,小得很不正常。因此选用手动下载的方式。

选择下载最新的 V4.1.0_CE_BP2 的 X86 版本。

这下这个压缩包的名字和大小就正常多了。之后按照安装文档的命令,解压并执行install.sh脚本。

看到这个 Install Finished 结果后,总算是勉强过关。之后,按照提示设置环境变量即可。

source ~/.oceanbase-all-in-one/bin/env.sh

2.2 单机部署 OceanBase 数据库

成功解压安装包并安装后,下一步便是快速部署一个单机最小规格的 OceanBase 数据库及其相关组件。

根据 WARN 的信息可以看出,对于 ubuntu 20.04 的环境而言,直接使用 centos 7 的镜像仓库。这也正常,因为教程中 OceanBase 宣称支持的系统中并没有 ubuntu 系统。当然我还是希望下面的部署不要出兼容性问题。

部署命令执行的过程中也可以发现,除了 OceanBase 数据库本身,还安装了一些其他组件。

最后可见 demo 成功运行起来了。下面让我们尝试使用 OBClient 客户端连接 OceanBase 数据库:

非常成功!同样的,我们也可以使用通过 ODP 代理访问数据库。

成功部署数据库后,就可以进行进一步的上手学习啦。撒花!

2.3 停止单机部署的 OceanBase 数据库

尽管成功在 WSL2 上部署了 OceanBase 数据库,但是众所周知,OceanBase 是一款(准)内存数据库,对内存的占用较大的,加上 WSL2 本身 Vmmem 的特性,这两者叠加下一度把我笔记本的内存消耗干到了 94%。尽管能用,但是也勉强。因此我们还需要优雅地停止刚刚部署的 demo cluster。

查询文档可知,仅需通过如下命令即可停止数据库与正在运行的所有相关组件。

3. 实验总结

通过实地部署单机的 OceanBase,可以看到 OceanBase 强大且完整的配套与生态,也看出了开发人员为了简化数据库配置所做的努力。尽管我在 WSL2 + Ubuntu 20.04 上测试可能超乎了系统的预设(一键安装脚本有点问题),但是最终数据库依旧成功地运行,实属不易。愿国产数据库越来越好!

4.参考链接

  1. OceanBase使用-Oceanbase搭建 教程-分布式数据库

  2. 快速部署命令-OceanBase 安装部署工具-OceanBase文档中心-分布式数据库使用文档

  3. 集群命令组-OceanBase 安装部署工具-OceanBase文档中心-分布式数据库使用文档

4 个赞