在win10环境部署opengauss数据库(包含各种可能遇到的问题解决)

适用于windows环境下通过docker desktop实现opengauss部署,请审题。

文章目录


前言

注意事项:后面docker拉取镜像源最好电脑有科学上网工具如果没有科学上网工具,我也有国产镜像源这边提供,但是稍微有点繁琐有需要可以私信我也可以自己去找

可用的镜像源是动态变化的,所以最新的docker国内镜像源拉取,最好还是自己动动小手找一下大佬发布的可用镜像源网站挨个尝试一下。


一、部署适合deskdocker的环境

众所周知windows环境并不适配docker,所以这里我推荐使用docker desktop,这个既有可视化界面,而且部署完之后启动简单便捷。

1.搜索控制面板。

2.点击里面的程序。

3.选择启用或关闭windows功能,勾选使用于Hype-V、Linux的windows子系统

4.在重启电脑之后,安装docker desktop.

5.安装完后最好再重启一下,如果小鲸鱼变红出现关于wsl启动报错,说面电脑wsl没配置好,搜索下资源或是私信一下我。利用这个更新一下,重启电脑,再点击docker desktop小鲸鱼图标打开。

此时你就是已经成功安装完成docker desktop。

6.确认安装完成,win+r打开输入cmd指令,弹出命令行界面输入docker - v,能够显示docker版本说明安装成功了,下面走第二个流程。

二、安装opengauss数据库

1.配置docker镜像源

这个就说到了我前言中提到的镜像源配置,打开你的docker desktop,选择如图所示的设置按钮

选择这个,然后把你自己搜索到的可用国内镜像源 或我提供的放置进去(有科学上网工具则不考虑这个),放置的位置在registry-mirrors 中不要放错了。

2.拉取镜像源

win+r打开输入cmd指令,弹出命令行界面输入,开始拉取镜像,输入命令:

c 复制代码
docker pull enmotech/opengauss

等待拉取完成

c 复制代码
docker iamges

观察是否拉取成功,安全起见之后可能会遇到一个文件找不到的问题,你还可以下载一个轻量库镜像。

c 复制代码
docker pull enmotech/opengauss-lite

我之前也是遇到了这个问题怀疑可能是这个原因,然后切换成轻量库解决了,我看网上也有降低dockerdesktop版本解决了(这个没尝试过有待后来者尝试)

还原镜像库

复制代码
docker run --name 镜像源名字 --privileged=true -d -e GS_PASSWORD=Chainsx@123 -v 你的镜像源名字 -p 本机接口:容器内接口 

例如

复制代码
docker run --name opengauss --privileged=true -d -e GS_PASSWORD=password@123 -p 5566:5432 enmotech/opengauss:5.0.2

这句代码大意是创建容器,然后使容器内接口对应本机的5566接口,同时设置数据库的密码为password@123设置名字为opengauss。

还原镜像,注意这里还有个易错点就是密码的设置一定要大小字符加英文,否则容易导致容器无法正常启动。

使用

复制代码
docker ps

查看正在跑的容器,如果发现没用,采用

复制代码
docker logs 容器名字

查看容器报错是否是因为上述的密码设置不对报错,如果是重新执行指令,修改为符合规范的密码执行。使用

复制代码
docker start 容器名字

使容器启动,容器启动后,你可以在鲸鱼的可视化页面

这里看到对应的容器在跑,

此时你点击他后面的一个命令行页面的按钮,进入到容器内部(省得你敲指令了)

输入

复制代码
su - omm

omm默认为管理用户的,在切换到这个用户的基础上使用

复制代码
gsql

观察是否有版本后显示,如果有显示,则视为安装成功。
后续连接问题

opengauss基于postgresql,所以选择postgresql连接即可选择使用postgresql驱动的连接即可,注意事项是你要把容器内的5432端口对应到本机的端口上去,navacite或什么工具连接你安装的电脑的暴露的端口位置即可,默认数据库为postgres,默认用户此时不要用omm了,用gaussdb,密码为你之前设置的密码,连上操作即可。


总结

希望能够有帮助到你建立线下测试数据库,不喜勿喷,欢迎交流指正。

相关推荐
SelectDB1 天前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc
这个DBA有点耶1 天前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵1 天前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
Nturmoils1 天前
WHERE 条件别凭习惯写,常用查询先跑一遍
数据库
Databend2 天前
在 AWS 中国峰会逛了一天,我在 Databend 展台看到了 Agent 数据基础设施的新思路
数据库·人工智能·agent
ClouGence3 天前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
飞将3 天前
从零实现数据库(2)——HashIndex + IndexManager
数据库
Nturmoils4 天前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
渣波4 天前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
倔强的石头_5 天前
KingbaseES 新版MySQL 兼容版体验:旧版迁移 + 功能实测
数据库