一文讲透 OceanBase 单机版:架构介绍、部署流程、性能测试、MySQL对比、资源配置等等

引言

OceanBase 单机集中式集群(即单机版,后文不再称“单机集中式集群”)是OceanBase 推出的极简数据库架构,区别于分布式集群架构,单机版无多副本和扩缩容能力,适用于开发测试环境及数据安全性要求不高的业务系统。

OceanBase 社区版和企业版都支持单机版部署,相关区别如下。

  • 主备集群: OceanBase v4.1.0 之前,物理备库的产品形态为集群级主备。

    集群有两种角色:主集群和备集群。主集群下面所有用户租户都是主租户;备集群下面所有用户租户都是备租户,备集群会自动同步主集群的租户变更操作。

  • 主备租户: OceanBase v4.1.0 之后,物理备库的产品形态变更为租户级主备,即主或备的角色信息属于租户,分为主租户和备租户,集群不再有主备角色的概念,而只是承载租户的容器。

安装部署

1.1 OceanBase 单机版部署方式

OceanBase 单机社区版部署方式有 3 种,分别是:

  1. 通过 OBD ALL-IN-ONE 包部署

    • 推荐,轻量级部署,所需资源少(OBD 和 OceanBase 单机版数据库可复用1台服务器),方便快速
  2. 通过命令行方式部署

    • 需纯手工命令行操作
  3. 通过 OCP 社区版平台部署

    • 适合规模化部署,需要额外资源部署 OCP 云平台,运维方便

    • 生产环境推荐

1.2 OceanBase 单机版最简部署

需要提前在 OceanBase 官网上下载 OBD all-in-one 安装包,下载地址:https://www.oceanbase.com/softwarecenter

1. 通过 all-in-one 安装包部署 OBD 环境

su - admin
tar -xzf oceanbase-all-in-one-*.tar.gz
cd oceanbase-all-in-one/bin/
./install.sh
source ~/.oceanbase-all-in-one/bin/env.sh

2. 禁用远程仓库

obd mirror disable remote
obd mirror list
# 查看 Type=remote 对应的 Enabled 变成了 False,说明已关闭远程镜像源

3. 查看本地镜像中安装包列表

obd mirror list local

4. 准备配置文件

cd ~/.oceanbase-all-in-one/obd/usr/obd/example/
cp mini-single-example.yaml mini-single-20240221.yaml
vim mini-single-20240221.yaml

添加如下参数到配置文件。

user:
    username: admin
    password: OceanBase_123#
    port: 22
oceanbase-ce:
  servers:
    - 10.186.58.87
  global:
    home_path: /home/admin/observer
    data_dir: /data/1
    redo_dir: /data/log1
    devname: eth0
    mysql_port: 2881
    rpc_port: 2882
    zone: zone1
    cluster_id: 1
    memory_limit: 12G
    system_memory: 1G
    datafile_size: 10G
    datafile_next: 2G
    datafile_maxsize: 20G
    log_disk_size: 20G
    cpu_count: 12
    production_mode: false
    enable_syslog_wf: false
    enable_syslog_recycle: true
    max_syslog_file_count: 4
    root_password: OceanBase_123#

5. 部署 OceanBase 数据库

下述命令创建一个名字为 obtest 的单节点集群

obd cluster deploy obtest -c mini-single-20240221.yaml

输出 obtest deployed 表示该集群创建完成。

6. 配置 lib 环境变量

通过 OCP 社区版或 OBD 启动时不会有环境变量问题(启动时带了相关库),手工启动或执行 observer 命令将报错,解决方式如下。

echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/admin/observer/lib' >> ~/.bash_profile
source ~/.bash_profile

7. 检查和启动数据库

确认 observer 程序在目标机器安装成功。

/home/admin/observer/bin/observer --version

结果为 observer (OceanBase_CE 4.2.2.0)。

启动 OceanBase 数据库。

obd cluster start obtest

启动完成后,使用 root 登录数据库(默认登录 sys 租户)进行创建业务租户等操作。

mysql -h10.186.58.87 -P2881 -uroot -p'OceanBase_123#' -Doceanbase -A
show full processlist;

主备架构

2.1 单机版主备租户简述

OceanBase 单机版支持主备租户架构,并采用异步方式做数据同步。由于 OceanBase 集群支持部署多个业务租户,所以主备租户架构有三种部署方式:

  1. 集群中仅有主租户或备租户

    • 典型场景,适用于两地容灾等多种业务场景

  1. 集群中既有主租户又有备租户

    • 适用于两地多写(容灾)场景

  1. 主租户和备租户在同一个集群中

    • 适用于业务升级(保留数据镜像)场景

2.2 单机版主备租户部署

本章以经典架构(集群中仅有主租户或备租户)为例进行部署,部署方式使用相对简便的 OCP 社区版云平台进行部署。

2.2.1 部署 OCP 社区版

使用 OBD 白屏工具部署 OCP 社区版,具体步骤略。

2.2.2 添加主备主机

OCP 社区版部署完成后,登录到 OCP Web 控制台,添加 2 台主备服务器。

2.2.3 安装两个集群

上传需要部署的 OceanBase 数据库安装包到 OCP 中,需要上传的包如下(具体版本以实际为准):

  • oceanbase-ce-utils-4.2.2.0-100000192024011915.el7.x86_64.rpm

  • oceanbase-ce-libs-4.2.2.0-100000192024011915.el7.x86_64.rpm

  • oceanbase-ce-4.2.2.0-100000192024011915.el7.x86_64.rpm

安装包上传完成后,分别创建 2 个单机集中式集群。

2.2.4 创建主备租户

第一步,集群 1 中创建示例主租户 tmysql

第二步,集群 2 中创建实例备租户 tmysql

2.2.5 数据同步验证

安装完成后可通过 OCP - 租户 - 拓扑图 界面验证主备关系,查看同步延时。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值