oceanbase如何单机部署
OceanBase 单机部署指南
OceanBase 支持在单台服务器上进行部署,适用于学习、测试或功能验证场景。根据官方文档(基于 OceanBase 4.2.0 版本),以下是两种主要的单机部署方法:
一、推荐方式:使用 OBD(OceanBase Deployer)部署
OBD 是 OceanBase 社区版推荐的自动化部署工具,支持通过命令行或图形化界面完成单机部署。
1. 环境准备
- 操作系统:CentOS 7.x / Alibaba Cloud Linux 等主流 Linux 发行版
- 最低资源配置:4 核 CPU、16 GB 内存、100 GB SSD
- 关闭透明大页(THP)
- 配置 SSH 免密登录本地主机(因 OBD 不允许使用
127.0.0.1
)
2. 安装 OBD 与组件包
方式一:在线安装(需联网)
# 添加 YUM 源
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/oceanbase/OceanBase.repo
# 安装 ob-deploy
sudo yum install -y ob-deploy
# 加载环境变量
source /etc/profile.d/obd.sh
方式二:离线安装(推荐用于无外网环境)
下载 OceanBase All-in-One 安装包,然后执行:
tar -xzf oceanbase-all-in-one-*.tar.gz
cd oceanbase-all-in-one/bin/
./install.sh
source ~/.oceanbase-all-in-one/bin/env.sh
3. 选择单机部署配置文件
OBD 提供了多个预设的配置文件模板,位于以下目录:
-
/usr/obd/example/
(直接安装 obd) -
~/.oceanbase-all-in-one/obd/usr/obd/example/
(All-in-One 安装)
推荐使用的单机部署配置文件:
配置文件 | 适用场景 |
---|---|
mini-single-example.yaml |
资源受限设备(≥8GB 内存) |
single-example.yaml |
标准开发/测试环境(≥16GB 内存) |
mini-single-with-obproxy-example.yaml |
含 ODP 代理的单机部署 |
这些配置文件仅包含一个 OBServer 节点,适合单机部署。
oceanbase-ce: servers: - name: server1 ip: 10.10.10.1 # 替换为实际 IP(不能是 127.0.0.1) global: devname: eth0 cluster_id: 1 memory_limit: 16G # 建议至少 16G system_memory: 4G # 系统保留内存 datafile_size: 100G # 数据文件大小 log_disk_size: 50G # 日志盘空间 appname: obdemo # 集群名称 mysql_port: 2881 # MySQL 租户端口 rpc_port: 2882 # RPC 端口
5. 执行部署命令
# 使用 OBD 部署集群
obd cluster deploy obdemo -c single-example.yaml
# 启动集群
obd cluster start obdemo
部署完成后可通过以下命令查看状态:
obd cluster list
obd cluster display obdemo
成功启动后,OceanBase 将运行在单台机器上,形成一个单副本、单 Zone、单节点的集群。
二、替代方式:使用 systemd 手动部署(仅限测试)
对于希望深入理解底层机制的用户,可使用 systemd
手动部署单节点 OceanBase 实例。
适用场景
- 学习 OceanBase 内部工作机制
- 极简环境快速启动
- 不适用于生产或长期运行
操作步骤概要
- 手动安装 RPM 包
- 初始化目录结构
- 编写 systemd service 文件(
/etc/systemd/system/oceanbase.service
) - 启动服务:
systemctl start oceanbase
详细步骤参见:使用 systemd 部署 OceanBase 数据库
三、验证部署结果
连接数据库验证是否正常运行:
# 使用 obclient 连接 MySQL 兼容租户
obclient -h10.10.10.1 -P2881 -uroot@sys -A
# 查看集群状态
SELECT * FROM __all_server;
SELECT zone, svr_type, with_rootserver, status FROM __all_server;
预期输出应显示一个 active 状态的 observer 节点。
四、注意事项
-
IP 地址限制
OBD 不允许使用127.0.0.1
或localhost
作为节点 IP,必须使用真实 IP 地址。 -
资源建议
即使是单机部署,也建议至少分配 4C16G 资源,否则可能因内存不足导致启动失败。 -
高可用性说明
单机部署不具备高可用能力,任何硬件故障都将导致服务中断,仅用于非关键场景。 -
后续管理
可选安装 OCP Express 或 ODP 以提升可观测性和连接管理能力。
五、参考文档
官网
参考obca教程,本机装一个docker,我觉得够用了
单机就是用OBD,obd demo