Vastbase 沙箱多模式部署

SKILL运维和基础设施
运维和基础设施 未标注权限 许可证不明确
安装这个技能

在 WorkBuddy 沙箱(Docker/Linux 容器)里从零部署 Vastbase G100,并同时拉起 A(Oracle)、B(MySQL)、PG、MSSQL 多种兼容模式的独立实例。适用于「在 WorkBuddy 沙箱里临时装一套 Vastbase 验证某个兼容模式的语法」「需要多个兼容模式并存对比」「沙箱休眠或重启后把实例重新拉起来」等场景;覆盖官网申请签名下载链接、Ubuntu 依赖适配、交互式 installer 安装、追加实例、批量启停,到 select vb_version() 验证的全过程。

一句话选型结论

按资料字段整理

Vastbase 沙箱多模式部署是运维和基础设施类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类运维和基础设施 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_620d780d/vastbase-workbuddy-sandbox
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

运维和基础设施
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_620d780d仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验2026-11-06上游最后核验时间 · 数据更新 2026-11-06
正文体量13.1 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
查服务与日志

按现象定位服务状态与日志线索。

写部署与巡检脚本

把重复的部署、巡检写成脚本。

故障排查

按步骤排查网络、依赖与配置。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在运维和基础设施场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
Vastbase 沙箱多模式部署当前 未标注权限 未标注 未标注 未标注 有
Azure 部署 调用外部服务 GitHub 仓库 664.2 万 Codex、Claude、Cursor 有
Azure diagnostics 问题管理 调用外部服务 GitHub 仓库 657.6 万 Codex、Claude、Cursor 有
Azure aigateway 部署 调用外部服务 GitHub 仓库 655.3 万 Codex、Claude、Cursor 有
Azure AI 搜索 调用外部服务 GitHub 仓库 651.4 万 Codex、Claude、Cursor 有
Azure Cloud migrate 部署 调用外部服务 GitHub 仓库 650.7 万 Codex、Claude、Cursor 有

SKILL.md 全文

13.1 KB
模型实际读到的说明书原文,来自技能仓库

Vastbase 多兼容模式实例部署(WorkBuddy 沙箱)

面向 WorkBuddy 沙箱(以及同构的 Docker/Linux 容器)写的落地流程。沙箱没有 systemd、
依赖包名与 RHEL 不同、休眠后进程会被回收——这些坑在下面各步都做了针对性处理。

Vastbase G100 的兼容模式是实例级属性(initdb --dbcompatibility),合法值只有
A(Oracle)/ B(MySQL)/ PG / MSSQL。本版本 CREATE DATABASE ... DBCOMPATIBILITY
不被支持,无法在单实例内混建不同兼容模式的库——想同时用多种模式,只能一个模式一个实例。

实例之间是「共享二进制 + 独立数据目录 + 独立端口」的关系,二进制只装一份,追加实例约 1 分钟。

二进制放置策略(先算清磁盘再决定)

实测单份 GAUSSHOME(二进制集)1006 MB(lib 461M + bin 201M + python 155M + jre 143M),
单个实例数据目录 730~770 MB。

方式 4 个实例总占用 适用
installer 装 4 次 ≈ 7.1 GB(4×1G + 4×0.75G) 要多版本并存(如 3.0.8 vs 3.0.9 对比)、要故障隔离
installer 装 1 次 + vb_initdb 追加 3 次 ≈ 3.9 GB(1G + 4×0.75G) 只是对比兼容模式语法,默认选这个

两条硬事实:

  1. add_instance.sh 不会复制二进制——它只 source $HOME/.Vastbase 复用同一份 GAUSSHOME,
    装完只多出数据目录(0.75 GB)。
  2. installer 重复跑也不会"自动多一份"——默认安装目录固定为
    /home/<user>/local/vastbase(软链到 vastbase_<build>),同一用户重复装是覆盖同一目标。
    想真得到第二份二进制,必须显式 --install-dir 换目录,或换系统用户(各自 $HOME 独立)。

需要第二份二进制做版本对比时,用 --gausshome 让新实例引用另一份,而不是复制:

tar xzf Vastbase-G100-<另一个版本>.tar.gz -C /opt
# /opt/vastbase-installer 装到 /opt/vb_alt309(或直接把展开后的 GAUSSHOME 拷过去)

bash scripts/add_instance.sh --name vb_old --compat A --port 15482 \
    --password 'Vastbase@2026' --gausshome /opt/vb_alt309

实例是不是真的跑在那份二进制上,用 /proc 一眼确认:

pid=$(head -1 /home/vastbase/data/vb_old/postmaster.pid); ls -l /proc/$pid/exe
# -> /opt/vb_alt309/bin/vastbase

何时用本 skill

  • 在 WorkBuddy 沙箱里验证 Vastbase 的 Oracle/MySQL/MSSQL 兼容语法,需要并行对比
  • 沙箱里快速搭一套测试库做功能/POC 验证(不建议用于生产)
  • 沙箱休眠或会话重开后实例不见了,要把它们重新拉起来(直接从「步骤 6」开始)
  • 已有 Vastbase 安装,只是想补一个其他兼容模式的实例(直接从「步骤 4」开始)

WorkBuddy 沙箱专有约束

这四条是通用 Linux 部署文档里没有、但在沙箱里一定会撞上的:

沙箱特性 撞上的现象 本 skill 的应对
容器内没有 systemd 运行 installer 校验 RemoveIPC 失败 prepare_host.sh 直接改配置文件绕过
Ubuntu 包名与 RHEL 不同 报缺 libreadline8 / libaio1 脚本构造兼容 deb 包 + libaio.so.1 软链
空闲约 10 分钟休眠、进程被回收 端口全消失,postmaster.pid 残留 start_all.sh 判活清 pid 后重启
只有一个 overlay 可写层 Session 回收即连数据一起销毁 只当临时环境;要留的产物导出到沙箱外

步骤 1:获取安装包

官网下载中心有「留资表单 + 短信验证码」门禁,没有匿名直链。脚本已复刻其调用链。

先收集申请人信息

发短信前需要:手机号、姓名、邮箱、公司、职位。不要逐条追问,直接把
assets/apply_form.html 的全部内容作为 widget_code 传给 show_widget 渲染交互表单
(内置 17 项职位下拉、字段校验、防重复提交)。用户提交后表单会把

【Vastbase 申请信息】
手机号:… 姓名:… 邮箱:… 公司:… 职位:…

发回对话,照此执行 --send-sms;用户回复验证码后带 --code 完成申请并下载。

安装包不要问用户:先 uname -m 看本机架构,再对照 --list 输出自己挑条目
(x86_64→73,aarch64 鲲鹏 920→74,飞腾/申威/龙芯同理;docker 镜像是单独条目)。
表单里不出现安装包选项。

# 查看当前在架条目(73=x86,74=鲲鹏920,75=飞腾2000)
python3 scripts/get_download_url.py --list

# 全新申请:先发短信,拿到验证码后再执行一次
python3 scripts/get_download_url.py --mobile 138xxxxxxxx --name 张三 \
    --email a@corp.com --company 某公司 --position 架构师 --send-sms
python3 scripts/get_download_url.py --mobile 138xxxxxxxx --name 张三 \
    --email a@corp.com --company 某公司 --position 架构师 --code 123456 --download /tmp

# 更常用:复用 applyId 换新签名链接(无需再收短信)
python3 scripts/get_download_url.py --apply-id 4923 --download /tmp

要点:
- 签名链接 1 小时过期;applyId 可反复换新链接
- 签名绑定 GET,别用 HEAD 判断有效性(必然 403),用 curl -r 0-0 发 GET
- 下载完别急着删,后续可能重装

步骤 2:环境准备

bash scripts/prepare_host.sh

脚本做的事(幂等,可重复跑):
1. 建系统用户 vastbase
2. 装 expect bzip2 libreadline-dev python3-dev libaio1t64
3. 构建 libreadline8、libaio1 兼容包——安装器按 RHEL 包名查 dpkg-query,而 Ubuntu 24.04 已改名
4. 建 libaio.so.1 -> libaio.so.1t64 软链(二进制依赖旧 SONAME)
5. 写 RemoveIPC=no(容器无 systemd 运行,改文件即可过校验)

步骤 3:安装首个实例

解压安装包。注意:cp -r * 会漏掉 .checksum 隐藏文件,会导致报「安装包不完整」。

mkdir -p /opt/vbst
tar xzf /tmp/Vastbase-G100-*.tar.gz
cp -a vastbase-installer/. /opt/vbst/     # -a 带隐藏文件
chown -R vastbase:vastbase /opt/vbst

python3 scripts/install_base_instance.py --installer-dir /opt/vbst \
    --password 'Vastbase@2026' --compat A --shared-buffers 512

默认端口按兼容模式自动取值,不传 --port 即可:

兼容模式 默认端口 同时占用
A(Oracle) 15432 15432 / 15433
B(MySQL) 15436 15436 / 15437
MSSQL 15439 15439 / 15440
PG 15442 15442 / 15443

脚本会在安装前预检端口(含 port+1)是否被占,避免装到最后一刻才失败。
想先看参数不真装:--dry-run。

installer 是纯交互的,脚本按提示顺序应答(3 次回车 → Y 实例化 → 2 自定义 → 密码两次 →
加密密钥回车 → 目录回车 → 端口 → 连接数 → shared_buffers → 兼容模式 → 汇总回车 → 不加载 License → 退出)。

关键:installer 的自定义安装就能直接指定兼容模式、端口、连接数、shared_buffers,
不必装完再改配置。默认值很坑:shared_buffers 按物理内存推算(123GB 机器会给 31569MB),
务必显式传 --shared-buffers 512。

密码要求:≥8 位,含大小写 + 数字 + 特殊字符。

步骤 4:追加其他兼容模式实例

bash scripts/add_instance.sh --name vb_b     --compat B     --password 'Vastbase@2026'
bash scripts/add_instance.sh --name vb_mssql --compat MSSQL --password 'Vastbase@2026'

不传 --port 时按上表的模式默认端口分配(B→15436、MSSQL→15439)。

端口必须间隔 ≥ 2:每个实例会同时监听 port 和 port+1(内部保留端口),
所以 15433 / 15437 / 15440 这些不能用,会被前一个实例占着。脚本会自动检查。

内存参数默认 shared_buffers=256MB / max_process_memory=8192MB / max_connections=100,
适合测试环境。max_process_memory 是上限不是预留,实测 RSS 只有 0.5~1.5 GB。

其他可选参数:

参数 用途
--user <系统用户> 换运行用户(数据目录随之落到该用户 $HOME/data 下)
--gausshome <路径> 引用另一份二进制(版本对比用);只设环境变量,不复制文件
--shared-buffers / --max-connections / --max-process-memory 覆盖默认内存与连接数

每个实例会登记进 /home/<user>/instances.tsv(名称 端口 兼容模式 数据目录 [GAUSSHOME]),
verify_all.py 和 start_all.sh 都读这张表。

步骤 6:重启 / 休眠恢复后拉起全部实例

机器的进程会被回收(容器休眠、重启),但数据目录在。此时直接 vb_ctl start 常因残留
postmaster.pid 报错,需先判活再清 pid:

bash scripts/start_all.sh            # 清残留 pid + 逐个启动(已在运行的跳过)
bash scripts/start_all.sh --status   # 只看状态
bash scripts/start_all.sh --stop     # 全部停止

脚本按 instances.tsv 遍历,自带 --gausshome 实例的环境切换,幂等可重复跑。

步骤 5:验证

python3 scripts/verify_all.py

输出一张表:每个实例的 vb_version() 摘要 + 该模式的特性语句是否跑通
(A 用 sysdate from dual,B 用 ifnull/date_format,MSSQL 用 getdate(),PG 用 current_database())。

单实例手动查(注意 -d postgres:vsql 默认连与系统用户同名的库,用户不是 vastbase 时会报库不存在):

su - vastbase -c "source /home/vastbase/.Vastbase && vsql -p 15436 -d postgres -c 'select vb_version();'"

关键约束速查

约束 说明
兼容模式 实例级,A/B/PG/MSSQL;CREATE DATABASE ... DBCOMPATIBILITY 不支持
端口 每实例占 port 与 port+1,规划间隔 ≥2
内存下限 max_process_memory ≥ 2GB + cstore_buffers(512MB) + shared_buffers + 保留内存(~3.6GB),低于 8GB 基本起不来
连接身份 初始用户 vastbase 禁止远程登录;走 su - vastbase + 本地 socket,或 TCP + 密码
多实例连错 .Vastbase 的 PGPORT 是本实例端口(A 默认 15432),连其他实例必须显式 -p
版本号 version() 返回 PostgreSQL 9.2.4 是兼容标识;真实版本看 vb_version()

脚本清单

脚本 作用 幂等
scripts/get_download_url.py 官网申请/复用 applyId 换签名链接并下载 —
scripts/prepare_host.sh 建用户、装依赖、造兼容包、改 RemoveIPC ✅
scripts/install_base_instance.py pexpect 驱动 installer 装首个实例 ❌ 重复跑覆盖同一目录
scripts/add_instance.sh vb_initdb 追加实例(任意兼容模式 / 任意 GAUSSHOME) ❌ 数据目录已存在则退出
scripts/start_all.sh 批量启动/停止/状态,清残留 pid ✅
scripts/verify_all.py 批量验 vb_version() + 各模式特性语句 ✅
assets/apply_form.html 留资信息收集表单(show_widget 渲染),提交后自动回传对话 —

常见故障

依赖检查失败、libaio.so.1 缺失、installer 报「安装包不完整」、启动报内存超限、
端口冲突、重启后服务不见了、自动化 installer 时参数填错位——逐条排查见
references/troubleshooting.md。

常见问题

5 问
答案由本站依据条目字段整理
Vastbase 沙箱多模式部署怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_620d780d/vastbase-workbuddy-sandbox。安装方式为未标注。装完刷新技能列表或重开客户端。

Vastbase 沙箱多模式部署支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

Vastbase 沙箱多模式部署权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

Vastbase 沙箱多模式部署收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

Vastbase 沙箱多模式部署用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 2026-11-06。