当前位置: 首页 > news >正文

银河麒麟通过 docker 离线安装 opengauss 数据库(单节点部署)

  1. 准备合适的 docker 镜像
  2. 通过文件传输工具将镜像传输至服务器
  3. 加载镜像文件
docker load -i opengauss_3.0.0.tar

正常应该是输出类似这样的内容:

6f37ca73c74f: Loading layer [==================================================>]  75.16MB/75.16MB
fbf2d42d54b9: Loading layer [==================================================>]   57.7MB/57.7MB
c777acc6f953: Loading layer [==================================================>]  20.48kB/20.48kB
a8d219ac51aa: Loading layer [==================================================>]  337.4MB/337.4MB
63f854361eb8: Loading layer [==================================================>]  20.99kB/20.99kB
Loaded image: enmotech/opengauss:5.0.0

如果提示下面的内容,可能是你的 docker 没有启动

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

systemctl start docker
  1. 验证镜像是否加载成功,返回如下情况即为成功,下面的 enmotech/opengauss是你的镜像名称,不同地方下载的镜像该名称可能不同,这个名称后面会用到
docker images ls
# 下面这个是正常输出
REPOSITORY           TAG       IMAGE ID       CREATED       SIZE
enmotech/opengauss   5.0.0     c69c8aebefe8   2 years ago   465MB
  1. 创建挂载数据目录
mkdir -p /example/opengauss/data
  1. 启动容器,可以根据你的需要修改容器名称(--name 后面的参数),修改数据库密码,修改映射端口(-p参数的冒号前面的端口)
docker run \
> --name opengauss \
> --privileged=true \
> -d \
> -e GS_PASSWORD=your-password \
> -p 1234:5432 \
> -v /example/opengauss/data:/var/lib/opengauss/data \
> enmotech/opengauss:5.0.0

成功后会输出一长串容器ID(如果成功后又快速退出了也会,这个不代表已经成功了)
7. 查看容器运行状态,如果 STATUS 是 UP,就是启动成功了。如果你看到的是 Exited,那说明启动后又退出了,没有成功跑起来。

docker ps -a
CONTAINER ID   IMAGE                      COMMAND                   CREATED        STATUS      PORTS                                         NAMES
31858d593b66   enmotech/opengauss:5.0.0   "entrypoint.sh gauss…"   2 months ago   Up 4 days   0.0.0.0:14869->5432/tcp, :::1234->5432/tcp   opengauss
一种可能的错误情况 如果你看到的是 Exited,那说明启动后又退出了,没有成功跑起来。
docker ps -a | grep opengauss
CONTAINER ID   IMAGE          COMMAND           CREATED          STATUS                      PORTS     NAMES
1b87a6e93e3f   478a00294137   "entrypoint.sh"   35 seconds ago   Exited (1) 34 seconds ago             opengauss

可以用以下命令查看情况:

# docker logs 容器ID
docker logs 1b876e93e3f

如果你得到的是如下的提示:

Primary host is empty, at least one primary and one standby host are needed

那有可能是你的镜像不支持单节点部署,建议你更换镜像文件

  1. 通过以下命令就可以进入容器了
docker exec -it opengauss /bin/bash

如果你觉得这个命令太长,可以配置一个简化命令

vim ~/.bashrc
# 添加别名
alias enter-gauss='docker exec -it opengauss /bin/bash'
source ~/.bashrc

以上步骤完成后,你就可以直接使用 enter-gauss 进入容器

  1. openGauss安装时默认会创建omm超级用户,容器内切换到该用户
su - omm
  1. 输入 gsql 就可以进入数据库了,之后的赋权操作都需要在此处进行,\q 可以退出数据库
    注意:默认是不允许 omm 用户远程连接数据库的

参考资料

  • 单节点安装 容器 | openGauss文档 | openGauss社区
http://www.vanclimg.com/news/2986.html

相关文章:

  • npm 发布工具包
  • 解析 RS485 总线:从技术内核到终端电阻的可靠性密码
  • dify之类工作流的理解
  • Unity Mask遮罩失效问题
  • 详细讲解了Linux定时任务调度的两种任务调度的机制和语法:crond周期任务调度、at一次性任务调度 - 实践
  • suse系统上创建用户和组
  • 新增SSH免密设置
  • 莫比乌斯
  • 图像生成-条件概率与边缘概率-10 - jack
  • GBase8a使用like %%进行模糊查询时,返回结果不符合预期
  • GBase8a查询decimal类型的字段时,返回结果集不符合预期
  • GBase8a使用sql找出表中有乱码的数据
  • NumPy的reshape自动计算(-1表示​​自动计算该维度的大小)
  • GBase8a安装部署集群时,提示gbase密码不正确,已确认密码无误
  • CF2096H Wonderful XOR Problem 题解
  • GBase8a安装部署集群时,报错Invalid or offline nodes:ip
  • Feign框架中一处编码不合理导致的异常
  • nginx 文件服务器
  • 阿里通义发布 Qwen3-30B-A3B-Instruct-2507 模型
  • 基于深度学习YOLO框架的城市道路损伤检测与评估项目系统【附完整源码+数据集】
  • GBase8a获取某个服务的堆栈信息
  • PostgreSQL 分区最佳实践
  • sqlacodegen使用方法
  • [Flink/Java] Flink Job 运行问题 FAQ
  • CF 1093 Div
  • Linux Cgroups(Control Groups)限制不同用户的CPU和内存资源
  • 动态代码记录
  • 怎么查看系统的上下⽂切换情况 - BinBin
  • 7.30
  • C语言基础-练习:猜数字