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

ops/2024/11/24 21:54:46/

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

文章目录

  • 前言
  • 一、部署适合deskdocker的环境
  • 二、安装opengauss数据库
    • 1.配置docker镜像源
    • 2.拉取镜像源
  • 总结


前言

注意事项:后面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指令,弹出命令行界面输入,开始拉取镜像,输入命令:

docker pull enmotech/opengauss

等待拉取完成

docker iamges

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

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,密码为你之前设置的密码,连上操作即可。


总结

希望能够有帮助到你建立线下测试数据库,不喜勿喷,欢迎交流指正。
在这里插入图片描述


http://www.ppmy.cn/ops/136411.html

相关文章

OAI-5G开源通信平台实践(三)

端到端验证相关问题及分析解决 PlmnTACSlice配置UE imsi配置opc/key配置问题5GC侧配置如下:错误现象解决PlmnTACSlice配置 #1. UERANSIM接5GS##AMF报错 02/21 18:05:18.949: [amf] INFO: gNB-N2 accepted[127.0.0.1] in master_sm module (../src/amf/amf-sm.c:741) 02/21 18…

2024年9月中国电子学会青少年软件编程(Python)等级考试试卷(六级)答案 + 解析

一、单选题 1、下面代码运行后出现的图像是?( ) import matplotlib.pyplot as plt import numpy as np x np.array([A, B, C, D]) y np.array([30, 25, 15, 35]) plt.bar(x, y) plt.show() A. B. C. D. 正确答案:A 答案…

Java 创建不可变集合

Java中为了安全起见,有时候不想让别人改集合中的数据,那么就可以使用不可变集合。 package listExercise;import java.util.HashMap; import java.util.Map; import java.util.Set;/*** 不可变集合* 长度不变,内容无法修改的集合* 当集合中的…

QSqlTableModel setModel 和 独立设置信号槽冲突

经测试,QSqlTableModel如果预先设置了和 sqlmodel->setTable(tableName); sqlmodel->select(); tableView->setModel(&sqlmodel);再对QSqlTableModel使用信号槽链接,会导致submitAll()提交成功但是数据库实际上没更新的情况。 connect(te…

vue3(十八)-基础入门之vue-nuxt自定义视图及页面组件的特殊配置

一、自定义视图 在没有指定视图的情况下&#xff0c;nuxt 使用的是默认视图 layouts/default.vue <template><nuxt /> </template>1、创建一个视图并将其保存到 layouts/blog.vue 别忘了在布局文件中添加 < nuxt /> 组件用于显示页面的主体内容。 …

输入/输出管理 III(磁盘和固态硬盘)

一、磁盘 【总结】&#xff1a; 磁盘&#xff08;Disk&#xff09;是由表面涂有磁性物质的物理盘片&#xff0c;通过一个称为磁头的导体线圈从磁盘存取数据。在读&#xff0f;写操作期间&#xff0c;磁头固定&#xff0c;磁盘在下面高速旋转。如下图所示&#xff1a; 磁盘盘面…

重生之我在学环境变量

环境变量 基本概念 环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数如&#xff1a;我们在编写C/C代码的时候&#xff0c;在链接的时候&#xff0c;从来不知道我们的所链接的动态静态库在哪里&#xff0c;但 是照样可以链接成功&#…

【视频】二维码识别:libzbar-dev、zbar-tools(zbarimg )

1、简介 ZBar可以使用多个方式识别各种条形码和二维码。 支持的格式有:EAN-13/UPC-A、UPC-E、EAN-8、Code 128、Code 93、Code 39、Codabar、Interleaved 2 of 5、QR Code和SQ Code 支持的来源有:视频流、图像文件等 libzbar-dev:二维码识别开发库 zbar-tools(zbarimg …