从零搭建:VMware 银河麒麟V10部署 OceanBase 4.2.5 企业版集中式数据库

前言

本文参照 OceanBase 官方文档《使用 obd 白屏部署集中式版》进行实操落地,结合 VMware 虚拟机环境,从零完成 OceanBase 集中式企业版单机部署 。操作系统选用银河麒麟高级服务器 V10(戟龙 Halberd),使用介质包 oceanbase-standalone-all-in-one-4.2.5_bp7_hotfix3_20260127.el7.x86_64.tar.gz

该部署方案为单机集中式架构,无需多台服务器,适合开发调试、功能验证、国产化适配学习、新手入门。企业版相比社区版支持审计日志、官方技术支持、企业权限管控等高级特性。

环境清单

  • 虚拟化测试平台:VMware Workstation
  • 操作系统:Kylin Linux Advanced Server release V10 (Halberd)
  • 系统内核:4.19.90-89.11.v2401.ky10.x86_64
  • OceanBase版本:集中式企业版 4.2.5_bp7_hotfix3_20260127
  • 安装介质:oceanbase-standalone-all-in-one-4.2.5_bp7_hotfix3_20260127.el7.x86_64.tar.gz
  • 部署工具:OBD(all-in-one包内置,支持Web白屏可视化部署)
  • 适用人群:新手入门、虚拟机测试环境搭建、开发测试环境部署
  • 前置硬件要求:宿主机开启硬件虚拟化;虚拟机配置 CPU 2核、内存16GB、空闲磁盘 ≥60GB

一、部署前置检查(root 用户执行)

1.1 虚拟机基础配置确认

  1. VMware 虚拟机处理器选项中开启【虚拟化性能扩展】,确保CPU指令集正常暴露;
  2. 虚拟磁盘推荐SSD模式,文件系统使用 EXT4 / XFS;
  3. 网卡使用 NAT/桥接模式,保证宿主机能够访问虚拟机IP。

1.2 系统信息校验

bash 复制代码
# 查看麒麟系统版本
cat /etc/kylin-release

# 查看内核版本
uname -r
# 预期输出:4.19.90-89.11.v2401.ky10.x86_64

1.3 内存、磁盘校验

bash 复制代码
# 查看内存
free -g

# 查看磁盘空间与文件系统
df -Th

1.4 CPU AVX指令检测

bash 复制代码
lscpu | grep -i avx

1.5 网络连通测试

bash 复制代码
ping www.baidu.com

二、操作系统环境初始化(root 用户)

麒麟V10默认参数无法满足OceanBase运行规范,下面为标准化配置,全部命令可直接复制执行。

2.1 安装依赖包

bash 复制代码
yum install -y tar wget curl libaio-devel openssl-devel python3 python3-pip git fio

2.2 关闭防火墙与SELinux

bash 复制代码
systemctl stop firewalld
systemctl disable firewalld

setenforce 0
sed -i 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
sestatus

2.3 关闭透明大页 THP(官方强制要求)

bash 复制代码
# 即时生效
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag

# 开机自动配置
cat >> /etc/rc.local << EOF
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
EOF
chmod +x /etc/rc.local

2.4 内核参数调优

bash 复制代码
cat > /etc/sysctl.d/99-ob-standalone.conf << EOF
fs.aio-max-nr = 1048576
net.core.somaxconn = 2048
net.core.netdev_max_backlog = 10000
net.core.rmem_default = 16777216
net.core.wmem_default = 16777216
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.tcp_fin_timeout = 15
vm.swappiness = 0
vm.min_free_kbytes = 2097152
vm.max_map_count = 655360
fs.file-max = 6573688
EOF

sysctl --system

2.5 资源限制 limits 配置

bash 复制代码
cat > /etc/security/limits.d/99-ob-limits.conf << EOF
* soft nofile 655350
* hard nofile 655350
* soft nproc 655360
* hard nproc 655360
* soft stack unlimited
* hard stack unlimited
* soft core unlimited
* hard core unlimited
EOF

修改limits后建议重启服务器生效:reboot

三、创建部署用户与目录规划

OceanBase 禁止使用 root 用户运行数据库进程,统一使用 admin 用户部署。

bash 复制代码
# 创建用户
useradd -U admin -d /home/admin -s /bin/bash
# 设置密码
passwd admin

# 配置免密sudo
echo "admin ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
sudo -l -U admin

# 创建目录
mkdir -p /home/admin/myob /data/ob_data /data/ob_log

# 授权目录归属
chown -R admin:admin /home/admin /data
chmod -R 750 /home/admin /data

目录说明:

  • /home/admin/myoceanbase:OceanBase软件安装目录
  • /data/ob_data:数据文件目录
  • /data/ob_log:日志、REDO日志目录

四、安装 OBD 部署工具(切换admin用户操作)

bash 复制代码
su - admin

# 将安装包上传至 /home/admin 目录
# 解压离线包
tar -zxvf oceanbase-standalone-all-in-one-4.2.5_bp7_hotfix3_20260127.el7.x86_64.tar.gz

# 进入脚本目录
cd oceanbase-standalone-all-in-one/bin

# 执行OBD安装脚本
bash install_obd.sh

# 加载环境变量
source ~/.oceanbase-all-in-one/bin/env.sh

# 验证OBD版本
obd --version

五、启动 OBD Web 白屏可视化部署(官方推荐方式)

bash 复制代码
# 启动web部署服务,默认监听8680端口
obd web

访问地址:http://虚拟机IP:8680

Web向导部署步骤

  1. 欢迎页面:点击【开启体验之旅】
  2. 组件选择:选择 OceanBase及配套工具
  3. 部署模式选择
    • 集群名称:自定义(示例:ob-425-standalone)
    • 部署模式:单机(standalone)集中式
    • 数据库版本:4.2.5_bp7_hotfix3_20260127
    • 负载类型:HTAP(测试环境通用)
    • 组件选择:仅保留OceanBase Database,可取消OBAgent、监控组件节省内存
  1. 节点配置
    • Zone名称:zone1
    • OBServer节点:填写虚拟机内网IP
    • 部署用户名:admin,填写admin登录密码
    • 软件路径:/home/admin/myoceanbase
  1. 集群参数配置
    • root@sys 密码:自定义妥善保存
    • 数据目录:/data/ob_data
    • 日志目录:/data/ob_log
    • 端口保持默认:2881(SQL)、2882(RPC)、2886
    • 资源模式:虚拟机测试选择【最小可用】

配置确认

  1. 预检查:等待全部检查项无失败;存在异常按照提示修复后重新预检查
  2. 点击【部署】,等待5~10分钟自动完成集群初始化与服务启动
  3. 部署完成后,可按需创建MySQL模式业务租户
  4. 信息记录

六、企业版 License 授权激活(重要)

all-in-one内置短期试用授权,长期使用需要导入正式商业license文件。

bash 复制代码
# admin用户执行,上传license文件到 /home/admin
obd license --import /home/admin/xxx.license

# 重启集群生效(集群名称替换为你web部署填写的集群名)
obd cluster restart ob-425-standalone

# 查看授权信息
obd license list

七、部署验证

7.1 查看集群状态

bash 复制代码
obd cluster status ob-425-standalone
obd cluster display ob-425-standalone

7.2 登录数据库验证

bash 复制代码
# 登录系统租户 sys
obclient -h127.0.0.1 -P2881 -uroot@sys -p'你的密码' -Doceanbase -A

# 查看数据库版本
show version;

7.3 业务租户读写测试

bash 复制代码
create database test_db;
use test_db;
create table t_demo(id int primary key,info varchar(100));
insert into t_demo values(1,'Kylin V10 + OB 4.2.5 企业单机集中式');
select * from t_demo;

八、常见问题与排查

  1. 宿主机浏览器无法访问8680端口
    确认防火墙、SELinux全部关闭;使用虚拟机内网IP访问,不要使用127.0.0.1。
  2. 预检查提示目录权限异常
bash 复制代码
chown -R admin:admin /home/admin /data
  1. 内存不足导致初始化失败
    虚拟机关机调整内存至16G,启动前执行缓存清理:
bash 复制代码
echo 3 > /proc/sys/vm/drop_caches
  1. AVX指令检查不通过
    关闭虚拟机,在VMware处理器设置开启虚拟化性能扩展。
  2. license导入失败
    确认license适配 el7 x86_64、4.2.5版本,联系厂商获取匹配授权文件。

九、部署总结

整套流程标准链路:

虚拟机资源核验 → 麒麟V10系统内核与安全策略初始化 → 创建admin运维用户与存储目录 → 上传解压oceanbase-standalone-all-in-one-4.2.5_bp7_hotfix3_20260127.el7.x86_64.tar.gz → 安装OBD → obd web可视化单机集中式部署 → 导入企业授权license → 集群状态与SQL功能验证。

本文所有命令、路径、包名均已固化,你可以直接复制文档到记事本,按需修改集群名称、IP、密码、目录路径使用。

相关推荐
西门老铁1 小时前
JWT 是什么?三段式结构、签名原理与 6 个安全坑一次讲透
后端·面试
Codelinghu1 小时前
DeepSeek Harness 出来了,干硬件的我琢磨了一下它到底能干啥
后端
eralong1 小时前
Java 面向对象:继承、多态、接口
java·后端
苏三说技术2 小时前
DeepSeek Harness必装的10个插件
后端
阿弱2 小时前
graph-core 策略合并机制的设计与用法
后端·agent
fatcoder2 小时前
玩转Docker 08 — 实战:容器化真实后端并编排
后端·docker·容器
神奇小汤圆2 小时前
从原始的CRUD 到高并发架构:关于秒杀系统的问题拆解与推演
后端
魔兽大山哥2 小时前
NL2SQL 最怕越权:我在执行层叠了好几层 SQL 闸门
后端
foggyprojects3 小时前
当 AI 输出销售额时,如何让它解释这个数字是怎么算出来的?
后端