借助docker搭建openGauss测试环境

借助docker搭建openGauss测试环境

华为的 openGauss 数据库是一款基于 Postgres 数据库内核开发的一款高性能、高安全、高可靠的企业级关系型数据库。

本来是想跟着官方文档手动搭建环境将 openGauss 的数据库后端给跑起来的,但是无奈官方要求的安装环境过于严苛,我尝试了好几天终究还是失败了。最终选择 docker 方案,幸好已经有前辈做好相关的镜像了,我们只需拉取下来,直接运行就好:

1
2
docker pull enmotech/opengauss # 拉取镜像
docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -p 5432:5432 enmotech/opengauss:latest # 启动容器

运行容器后,openGauss 的数据库后端将监听在 5432 端口,有以下两种方式可以连接到 openGauss 数据库:

  1. 通过 gsql 命令连接到 openGauss 数据库

首先进入容器

1
2
docker ps # 查看所有正在运行的 docker 容器,确定当前 openGauss 容器的 id
docker exec -it <container-id> /bin/bash; exit # 进入该 docker 容器进行操作

进入容器后,切换到 omm 用户后即可使用 gsql 命令来对数据库执行相应操作

1
2
su - omm # 切换到 omm 用户 
gsql # 连接到 openGauss 数据库
  1. 使用 JetBrains 的 DataGrip 来连接

下载好 DataGrip 后,新建一个 postgres 的 data source,配置信息如下:

默认的用户名是 gaussdb,默认的密码是 Enmo@123,默认的数据库名称是 postgres,默认端口是 5432。

连接成功后,如果只是编写应用项目的话,只需要当作是一般的关系型数据库一样用就可以了,openGauss 支持绝大部分 SQL 特性,基本可以满足日常开发需求。

参考链接

  1. openGauss 官方文档
  2. enmotech/opengauss README - docker hub
  3. 怎样使用 DataGrip 连接数据库