注意:此方法仅适用于Windows10,其中开启wsl2的方法仅适用于2004版本以上。

因为课程需要学习这个opengauss数据库,发挥一下传统艺能,翻译翻译什么叫opengauss:

openGauss是一款开源关系型数据库管理系统,采用木兰宽松许可证v2发行 。openGauss内核源自PostgreSQL, 深度融合华为在数据库领域多年的经验,结合企业级场景需求,持续构建竞争力特性。同时openGauss也是一个开源、免费的数据库平台,鼓励社区贡献、合作。

第一步,开启windows的子系统功能,推荐wsl2在程序与功能中勾选适用于Linux的Windows子系统,或者以管理员身份打开 PowerShell 并执行: 

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

勾选虚拟机平台(勾选Hyper-V,可选,我这里选了,因为要安装docker),或者以管理员身份打开 PowerShell 并运行:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

下载并安装wsl2的linux内核:

wsl2内核

使用powershell设置wsl版本为2

wsl --set-default-version 2

第二步,安装适用于Windows的docker

在以下链接中点击download for windows:

下载docker

等待下载完成安装然后打开即可,docker的每一次启动都需要一点时间

当你看到以下界面就ok了,下一步

第三步,拉取opengauss镜像

先设置一个镜像加速,使用163的镜像:http://hub-mirror.c.163.com

如下(我这里申请的阿里云的私有镜像加速,你看也可以试试):

将以上所有文本替换为下面这样:

{
  "registry-mirrors": [
    "http://hub-mirror.c.163.com"
  ],
  "insecure-registries": [],
  "debug": false,
  "experimental": false,
  "features": {
    "buildkit": true
  }
}

然后点击Apply&Restart,等待docker重启

打开power shell,开始拉取镜像,输入命令:

docker pull enmotech/opengauss

等待完成即可

第四步,创建opengauss容器

我们需要持久化存储数据,容器一旦被删除,容器内的所有数据和配置也均会丢失,而从镜像重新运行一个容器的话,则所有数据又都是呈现在初始化状态,因此对于数据库容器来说,为了防止因为容器的消亡或者损坏导致的数据丢失,需要进行持久化存储数据的操作。通过在docker run的时候指定-v参数来实现。比如以下命令将会指定将openGauss的所有数据文件存储在宿主机的C:\opengauss下。注:如果使用podman,会有目标路径检查,因此需要预先创建目标路径。

在C盘或者D盘或者其他根目录下创建一个文件夹为opengauss,确保这个文件夹绝对路径为“C:\opengauss”或者“D:\opengauss”

打开powershell,输入以下内容:

docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Chainsx@123 -v C:\opengauss:/var/lib/opengauss -p 15432:5432 enmotech/opengauss:latest

注意,将Chainsx@123换成你的想设置的密码,华为规定的密码规则好像是数字+大小写字符+常规符号;C:\opengauss换成你的文件夹的绝对路径。

上面这样就是ok了,这时候会弹出一个窗口,公用和家庭网络都打上勾,避免后面出现问题,还会弹出这样的窗口:

 

没事不管他,没有问题,因为我们就是这样设置的。

然后我们打开docker,大概是这样:

如果没有运行的话点击run。如果点击run之后立刻又停止了的话检查一下你上一步的密码设置是否符合规范,这时就要删掉这个容器重新创建。

如果没有任何问题,那么你的opengauss就安装好了,下面说一下怎么连接。

点击在终端中打开,然后切换用户为omm,输入以下命令

su - omm

然后连接到数据库,输入以下命令:

gsql -d postgres -p 5432

因为这个容器是已经安装好的opengauss,设置的数据库端口为5432,所以-p参数后面跟5432

出现以下界面即可

本地连接不需要输入密码,然后就可以正常使用了,opengauss就安装完成了。

运行后可以点击关闭来关闭容器服务,避免占用计算机资源,使用时再开启。

 

——————如果你想使用DataGrip进行远程连接请继续看——————

如何使用DataGrip进行远程连接,如果你不使用这个软件的话教程就到此结束了

附加:

如何使用DataGrip进行远程连接

DataGrip时Jetbrains公司开发的数据库可视化操作软件,如果你有使用过Clion,pyCharm,Intellij Idea的话,你也可以选择使用此软件,tip:申请一个学校邮箱可以免费使用。

如下图,选择postgres数据库,因为opengauss就是基于postgres数据库的

如下设置:

注意,我们设置的将容器内的5432映射到15432,所以在这里的端口要填15432,

User为gaussdb,密码为上面你设置的密码,然后点击ok就行了,连接成功之后就可以使用了。

 

 

 

 

 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐