暂无图片
暂无图片
2
暂无图片
暂无图片
暂无图片

LInux 7 上安装 Vastbase V3.0.9PSU0 实战指南

很多人第一次安装 Vastbase,卡住的往往不是安装命令本身,而是操作系统环境没有提前处理好。

比如:

  • 依赖包缺失
  • RemoveIPC 检查不过
  • SELinux 干扰启动
  • 磁盘 IO 调度策略不符合数据库场景
  • license 没配置导致数据库无法正常启动

这篇文章基于一台 Red Hat 7 兼容环境 的实际安装过程整理,完整介绍 Vastbase V3.0.9PSU0 的安装方法,重点不只是“怎么装”,更包括“为什么会失败”和“怎么避免踩坑”。

一、环境说明

本文适用环境:

  • 操作系统:Red Hat Enterprise Linux 7.x
  • 架构:x86_64
  • 数据库版本:Vastbase V3.0.9PSU0
  • 安装方式:静默安装
  • 初始化方式:实例化安装
  • 兼容模式:Oracle 兼容模式(A)

说明:

本文同样适用于 Oracle Linux 7、CentOS 7 等 RHEL 7 兼容系统。

二、为什么建议优先用静默安装

Vastbase 支持两种安装方式:

  • 交互安装
  • 静默安装

实际项目中,更建议优先使用 静默安装,原因很简单:

  • 安装参数可复用
  • 适合标准化交付
  • 多台主机部署时更稳定
  • 更便于审计和排障

交互安装更适合演示,静默安装更适合生产和交付。

三、安装前准备

3.1 准备安装包

先将安装包上传到服务器,例如:

/home/opc/Vastbase-G100-3.0_Build9_30156-Linux-x86_64-no_mot-202601221034.tar.gz

实际文件名以你拿到的安装包为准。本次测试在甲骨文云上进行!

3.2 创建数据库安装用户

必须使用普通用户安装数据库,不能直接使用 root 运行安装程序。

使用 root 用户执行:

useradd -m vastbase
passwd vastbase

建议安装用户使用全小写命名,避免后续 SQL 识别带来额外麻烦。

3.3 创建目录

提前创建数据库数据目录、软件目录和 coredump 目录:

mkdir -p /home/vastbase/data/db_coredump
mkdir -p /home/vastbase/data/vastbase
mkdir -p /home/vastbase/local/vastbase

设置权限:

chmod 770 /home/vastbase/data
chmod 700 /home/vastbase/data/vastbase
chown -R vastbase:vastbase /home/vastbase

3.4 修改资源限制

编辑 /etc/security/limits.conf,追加如下内容:

vastbase soft nproc unlimited
vastbase hard nproc unlimited
vastbase soft stack unlimited
vastbase hard stack unlimited
vastbase soft core unlimited
vastbase hard core unlimited
vastbase soft memlock unlimited
vastbase hard memlock unlimited
vastbase soft nofile 1024000
vastbase hard nofile 1024000

这一步的目的是避免数据库在启动或高并发场景下被系统资源限制卡住。

四、安装依赖包

很多安装失败,根因不是数据库,而是操作系统依赖没装全。

在 RHEL 7 上,至少建议安装:

yum install -y libxslt tcl

如果你希望把基础依赖一次性补齐,可以执行:

yum install -y readline python libicu cracklib perl openldap pam systemd-libs bzip2 gettext libaio ncurses-libs libxslt tcl

如果依赖不完整,安装器通常会提示:

Lack of dependency: libxslt,tcl

五、安装前必须处理的系统项

这一部分是 Vastbase 安装成功的关键。

5.1 处理 RemoveIPC 检查

grep -n '^RemoveIPC' /etc/systemd/logind.conf

如果没有配置:

echo "RemoveIPC=no" >> /etc/systemd/logind.conf

必要时修改:

vi /usr/lib/systemd/system/systemd-logind.service

添加:

[Service]
RemoveIPC=no

执行:

systemctl daemon-reload
systemctl restart systemd-logind

5.2 处理 SELinux

getenforce

如果返回:

Enforcing

先临时关闭:

setenforce 0

再修改永久配置:

sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config

修改后需要重启系统才会真正变为 Disabled。

5.3 处理磁盘 IO 调度算法

查看当前调度算法:

cat /sys/block/sda/queue/scheduler

如果看到:

[none] mq-deadline kyber bfq

建议切换为:

echo mq-deadline > /sys/block/sda/queue/scheduler

持久化:

grubby --update-kernel=ALL --args="elevator=mq-deadline"

数据库对 IO 时延敏感,mq-deadline 通常更稳定。

六、解压安装包

mkdir -p /soft/vb
cd /soft/vb

tar -xvf Vastbase-G100-3.0_Build9_30156-Linux-x86_64-no_mot-202601221034.tar.gz

授权:

chown -R vastbase:vastbase /soft/vb/
chmod -R 775 /soft/vb/
chmod 755 /soft

/soft 目录必须保证 vastbase 用户可访问。

七、创建静默安装参数文件

cd /soft/vb
vi db_install.rsp

写入:

vastbase_password=Xxx12345
encryption_key=Xxx12345
vastbase_home=/home/vastbase/local/vastbase
vastbase_data=/home/vastbase/data/vastbase
port=5432
max_connections=500
shared_buffers=7951
db_compatibility=A
isinitdb=true

7.1 参数说明

  • vastbase_password:数据库管理员密码
  • encryption_key:数据库加密密钥
  • vastbase_home:软件安装目录
  • vastbase_data:数据目录
  • port:监听端口
  • max_connections:最大连接数
  • shared_buffers:共享内存(MB)
  • db_compatibility:兼容模式(A/B/PG/MSSQL)
  • isinitdb:是否初始化实例

兼容模式在初始化后不可修改。

7.2 参数文件注意事项

  1. 文件名必须是 db_install.rsp
  2. 参数格式必须是 key=value
  3. 文件末尾不要留空行
  4. 不要写未支持参数

八、执行静默安装

su - vastbase
cd /soft/vb/vastbase-installer

./vastbase_installer --silent -responseFile /soft/vb/db_install.rsp

安装流程包括:

  1. 安装包检查
  2. 参数检查
  3. 系统检查
  4. 依赖检查
  5. IPC 检查
  6. IO 调度检查
  7. 安装并初始化
  8. 更新配置
  9. 写入环境变量

成功输出:

Installation complete

并生成默认密码:

system admin[vbadmin] initial password: xxxxxxxx
security admin[vbsso] initial password: xxxxxxxx
audit admin[vbaudit] initial password: xxxxxxxx

九、配置 License

vi /home/vastbase/data/vastbase/postgresql.conf

追加:

license_path='/home/vastbase/local/vastbase_30156/etc/.lic'

十、初始化环境变量

source ~/.bashrc

十一、启动数据库

vb_ctl start
vb_ctl status

十二、验证数据库是否可用

12.1 端口

ss -lntp | grep 5432

12.2 进程

ps -ef | grep vastbase

12.3 登录验证

gsql -d postgres -p 5432 -U vbadmin
select version();

十三、配置 Core Pattern

mkdir -p /omTmp/corefile
chown vastbase:vastbase /omTmp/corefile
chmod 770 /omTmp/corefile

echo "/omTmp/corefile/core-%e-%p-%t" > /proc/sys/kernel/core_pattern

十四、常见问题

14.1 缺依赖

yum install -y libxslt tcl

14.2 IPC 检查失败

systemctl daemon-reload
systemctl restart systemd-logind

14.3 License 未配置

license_path='路径'

14.4 SELinux 问题

setenforce 0

14.5 IO 调度问题

echo mq-deadline > /sys/block/sda/queue/scheduler

十五、生产环境建议补充动作

15.1 修改默认密码

  • vbadmin
  • vbsso
  • vbaudit

15.2 防火墙检查

  • firewalld
  • iptables
  • 安全组

15.3 重启验证

getenforce
cat /sys/block/sda/queue/scheduler
vb_ctl status
ss -lntp | grep 5432

15.4 备份配置

  • postgresql.conf
  • .bashrc
  • .Vastbase
  • db_install.rsp

十六、完整命令清单

useradd -m vastbase
passwd vastbase

mkdir -p /home/vastbase/data/db_coredump
mkdir -p /home/vastbase/data/vastbase
mkdir -p /home/vastbase/local/vastbase

chmod 770 /home/vastbase/data
chmod 700 /home/vastbase/data/vastbase
chown -R vastbase:vastbase /home/vastbase
cat >> /etc/security/limits.conf <<EOF
vastbase soft nproc unlimited
vastbase hard nproc unlimited
vastbase soft stack unlimited
vastbase hard stack unlimited
vastbase soft core unlimited
vastbase hard core unlimited
vastbase soft memlock unlimited
vastbase hard memlock unlimited
vastbase soft nofile 1024000
vastbase hard nofile 1024000
EOF
yum install -y libxslt tcl
echo "RemoveIPC=no" >> /etc/systemd/logind.conf
setenforce 0
sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
echo mq-deadline > /sys/block/sda/queue/scheduler
grubby --update-kernel=ALL --args="elevator=mq-deadline"
mkdir -p /soft/vb
cd /soft/vb
tar -xvf Vastbase-G100-3.0_Build9_30156-Linux-x86_64-no_mot-202601221034.tar.gz
cat > /soft/vb/db_install.rsp <<EOF
vastbase_password=Xxx12345
encryption_key=Xxx12345
vastbase_home=/home/vastbase/local/vastbase
vastbase_data=/home/vastbase/data/vastbase
port=5432
max_connections=500
shared_buffers=7951
db_compatibility=A
isinitdb=true
EOF
su - vastbase
cd /soft/vb/vastbase-installer
./vastbase_installer --silent -responseFile /soft/vb/db_install.rsp
echo "license_path='/home/vastbase/local/vastbase_30156/etc/.lic'" >> /home/vastbase/data/vastbase/postgresql.conf
source ~/.bashrc
vb_ctl start

十七、总结

在 Red Hat 7 上安装 Vastbase V3.0.9PSU0,真正决定成败的,不只是安装命令,而是安装前后的系统环境处理是否到位。

这次实践下来,最核心的经验有四点:

  • 先补依赖,再跑安装器,不要边装边猜
  • RemoveIPC、SELinux、IO 调度这些系统项必须提前处理
  • 静默安装比交互安装更适合标准化交付
  • 安装完成后别急着收工,license、启动、监听、连接验证都要做完
  • 测试环境用了/home作为软件目录,生产上大家不要这么用哦
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论