前言:
因项目与工作实际需求,本人已撰写多篇关于国产数据库的部署流程文档,涵盖神舟通用、人大金仓、达梦、华为高斯等主流数据库产品。本文将重点介绍南大通用GBase 8s V8.8版本的完整部署过程。
本次采用 Docker 方式进行快速部署,操作便捷且环境隔离性好,适用于开发测试及部分生产场景。
整体部署方案基于以下结构实现:
docker-compose的方式
同时提供完整的配置模板文件:
docker-compose.yml的文件内容
只需根据自身环境调整对应路径即可直接使用。
一、Docker 部署流程
1. 获取镜像资源
可通过 Docker Hub 获取官方或社区维护的 GBase 8s 镜像:
Docker Hub 镜像地址:
点击跳转即可
该镜像基于 v8.8 版本构建,标签为:
liaosnet/gbase8s:v8.8_3513x25_csdk_x64
(建议后续可尝试更新版本如 363 系列以获得更好兼容性)
这里的相关镜像包,官网技术建议仅测试环境使用即可,如果生产环境,还是建议官网联系进行下载
2. 创建本地目录结构
规划如下项目目录布局:
~/gbase8s-docker/
├── docker-compose.yml # Docker 编排配置
├── manage.sh # 自定义管理脚本
└── data/
└── gbase8s/
├── data/ # 数据存储目录
├── log/ # 日志输出路径
└── backup/ # 备份文件存放
2.1 指定基础路径(可根据实际情况自定义)
示例路径:
/opt/docker-soft/gbase8s-docker
2.2 执行目录创建命令
进入主目录并建立所需子目录:
cd /opt/docker-soft/gbase8s-docker
mkdir -p data/gbase8s/{data,log,backup}
设置正确权限(关键步骤,避免运行时权限问题):
chmod -R 755 data/
2.3 编写 docker-compose.yml 文件
请确保该文件位于 `/opt/docker-soft/gbase8s-docker` 目录下,内容如下:
version: '3.8'
services:
gbase8s:
image: liaosnet/gbase8s:v8.8_3513x25_csdk_x64
container_name: gbase8s
hostname: gbase8s
restart: unless-stopped
privileged: true
shm_size: 2g
ports:
- "9088:9088"
- "9089:9089"
volumes:
- ./data/gbase8s/data:/opt/gbase/data
- ./data/gbase8s/log:/opt/gbase/log
- ./data/gbase8s/backup:/opt/gbase/backup
networks:
- gbase-network
networks:
gbase-network:
driver: bridge
最终目录应包含如下文件:
3. 启动容器服务
首次部署需先拉取镜像:
docker pull liaosnet/gbase8s:v8.8_3513x25_csdk_x64
启动服务容器:
docker compose up -d
查看当前服务状态:
docker compose ps
实时查看启动日志(推荐用于排查初始化异常):
docker compose logs -f gbase8s
4. 等待数据库完成初始化
系统初次启动会自动执行数据库初始化流程,完成后状态如下所示:
docker ps
5. 进入容器并验证配置信息
连接至运行中的容器:
docker exec -it gbase8s bash
在容器内部依次执行以下操作:
切换到数据库专用用户:
su - gbasedbt
检查关键环境变量是否加载:
env | grep -E 'GBASE|INFORMIX'
查看服务器通信配置文件:
cat $GBASEDBTDIR/etc/sqlhosts
查询数据库当前运行状态:
onstat -
若显示未启动,可手动初始化实例:
# oninit -v
完成操作后退出用户和容器:
exit # 退出 gbasedbt 用户
exit # 退出容器
6. 常用运维命令速查表
启动服务(后台运行):
docker-compose up -d
停止服务:
docker-compose stop
重启服务:
docker-compose restart
关闭并移除容器(保留数据卷):
docker-compose down
彻底清除服务及所有数据(慎用!):
docker-compose down -v
rm -rf data/
查看服务日志输出:
docker-compose logs -f
进入容器终端:
docker exec -it gbase8s bash
直接在容器内执行单条命令(无需交互):
docker exec -it gbase8s [command]
附注说明:
本文档仅针对 GBase 8s V8.8 的 Docker 化部署提供指引,所有操作均基于 Linux 环境设计。图形标记位置已按原文逻辑同步调整,便于对照理解。
执行如下命令进入 GBase 8s 容器并运行 onstat 状态检查:
docker exec gbase8s bash -c "su - gbasedbt -c 'onstat -'"
以下是默认的数据库连接参数信息:
- JDBC 驱动下载地址:https://gbasedbt.com/dl/jdbc
- 驱动类名:com.gbasedbt.jdbc.Driver
- JDBC URL 格式:jdbc:gbasedbt-sqli://IPADDR:9088/testdb:GBASEDBTSERVER=gbase01;DB_LOCALE=zh_CN.utf8;CLIENT_LOCALE=zh_CN.utf8;IFX_LOCK_MODE_WAIT=30;
- 用户名:gbasedbt
- 密码:GBase123$%
注意:IPADDR 需替换为运行 Docker 的主机实际 IP 地址,并确保系统已开放 9088 端口的网络访问权限。
推荐使用 DBeaver 作为数据库连接工具进行操作。
官网有驱动,导入到工具中就行,之前应该在达梦连接那里有写过怎么导入驱动,这个一模一样,可以去其它文章中参考一下