搭建vmware 17+openEuler-22.03+openGauss6.0单机环境,并通过navicat17远程连接数据库

前言

最近在备考gaussDB HCIE认证,需要搭建数据库环境,记录一下自己的搭建步骤。搭建华为openGauss本地虚拟机单节点环境,并通过navicat连接数据库。

组件版本:

组件名称版本号
VMwareVMware® Workstation 17 Pro
openEuleropenEuler-22.03-LTS-SP3-x86_64
openGaussopenGauss-6.0.0
NavicatNavicat 17

一、安装vmware

参考:虚拟机安装

二、安装openEuler-22.03

1、下载安装包

下载地址:openEuler下载地址
在这里插入图片描述

下载后得到安装包:openEuler-22.03-LTS-SP3-x86_64-dvd.iso

2、安装openEuler

参考:openEuler安装方法

安装的时候有个挂载分区,选automatic就行

三、安装GaussDB (for mysql)

参考:openGauss-6.0.0单节点安装

1、安装前准备

我当前节点信息如下:

节点名称(hostname)节点ip地址节点配置信息
openEuler192.168.240.128

说明

(1)、节点名称为安装虚拟机的时候起的名字,可以通过命令获取节点名称

[root@openEuler ~]# hostname
openEuler

(2)、节点ip为虚拟机的内网ip

[root@openEuler ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.240.128  netmask 255.255.255.0  broadcast 192.168.240.255
        inet6 fe80::20c:29ff:feec:23a2  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:ec:23:a2  txqueuelen 1000  (Ethernet)
        RX packets 296395  bytes 415070285 (395.8 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 39424  bytes 8861236 (8.4 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 15010  bytes 4554751 (4.3 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 15010  bytes 4554751 (4.3 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

2、下载GaussDB数据库安装包

两种下载方式:

①、wget方式

如果你本身虚拟机可以连接外网(比如你安装的时候选择桥接,NAT模式等),可以直接通过wget命令获取数据库安装文件。

mkdir -p /opt/software/openGauss
cd /opt/software/openGauss/
wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/6.0.0/openEuler22.03/x86/openGauss-All-6.0.0-openEuler22.03-x86_64.tar.gz

# wget后的地址从openGauss社区获取,社区地址:http://opengauss.org/zh/download/
②、文件传输到虚拟机

如果你本身虚拟机安装的时候,选择的是仅主机模式,那么,虚拟机只能和本地主机联通,需要自行从开源社区获取数据库安装文件到本地,然后通过ftp工具上传到虚拟机。

访问: https://opengauss.org/zh/download/
在这里插入图片描述

下载企业版本(需要注册登录openGauss)。

将下载文件上传到 虚拟机的 /opt/software/openGauss 目录下(需要提前新建目录)。

3、解压数据库tar包

# 解压数据库tar包
[root@openEuler openGauss]# tar -xvf openGauss-All-6.0.0-openEuler22.03-x86_64.tar.gz 
openGauss-CM-6.0.0-openEuler22.03-x86_64.tar.gz
openGauss-OM-6.0.0-openEuler22.03-x86_64.tar.gz
openGauss-Server-6.0.0-openEuler22.03-x86_64.tar.bz2
openGauss-CM-6.0.0-openEuler22.03-x86_64.sha256
openGauss-OM-6.0.0-openEuler22.03-x86_64.sha256
openGauss-Server-6.0.0-openEuler22.03-x86_64.sha256
upgrade_sql.tar.gz
upgrade_sql.sha256

解压后包含三个核心安装包如下:

  1. ‌Server主程序包‌
    文件名‌:openGauss-Server-6.0.0-openEuler22.03-x86_64.tar.bz2
    作用‌:包含数据库核心服务程序、SQL引擎及存储引擎等基础组件,支持单机或HA(高可用)部署模式。企业版提供原位更新存储引擎增强、SMP并行查询等特性‌。
    部署场景‌:为数据库实例提供数据存储、事务处理等核心功能‌。
  2. ‌OM运维管理工具包‌
    文件名‌:openGauss-OM-6.0.0-openEuler22.03-x86_64.tar.gz
    作用‌:集成安装部署工具(如gs_install、gs_ctl),支持通过配置文件自动化完成环境初始化、数据库安装及参数配置‌。
    使用规范‌:需与Server包配合使用,简化集群部署流程‌。
  3. ‌CM集群管理包‌
    文件名‌:openGauss-CM-6.0.0-openEuler22.03-x86_64.tar.gz
    作用‌:提供集群管理功能,支持主备切换、故障检测及自动恢复,保障高可用架构的稳定性‌。
    部署要求‌:在HA场景下必须安装,单机部署可省略‌
    补充说明
    安装流程‌:需先解压所有包至同一目录,通过OM工具指定配置文件完成安装‌。
    文件格式‌:.tar.gz和.tar.bz2均为压缩包格式,分别使用tar -zxvf和tar -jxvf解压‌。

4、解压om运维管理tar包

tar -xvf openGauss-OM-6.0.0-openEuler22.03-x86_64.tar.gz

5、新建安装的配置文件

本身配置文件不存在,需要手动创建,并修改内容匹配自己虚拟机信息。

vi clusterconfig.xml

输入以下内容:

<?xml version="1.0" encoding="UTF-8"?>
<ROOT>
    <!-- openGauss整体信息 -->
    <CLUSTER>
        <!-- 数据库名称 -->
        <PARAM name="clusterName" value="mycluster" />
        <!-- 数据库节点名称(hostname) -->
        <PARAM name="nodeNames" value="openEuler" />
        <!-- 数据库安装目录-->
        <PARAM name="gaussdbAppPath" value="/opt/install/app" />
        <!-- 日志目录-->
        <PARAM name="gaussdbLogPath" value="/opt/install/log" />
        <!-- 临时文件目录-->
        <PARAM name="tmpMppdbPath" value="/opt/install/tmp" />
        <!-- 数据库工具目录-->
        <PARAM name="gaussdbToolPath" value="/opt/install/om" />
        <!-- 数据库core文件目录-->
        <PARAM name="corePath" value="/opt/install/corefile" />
        <!-- 节点IP,与数据库节点名称列表一一对应 -->
        <PARAM name="backIp1s" value="192.168.240.128"/> 
    </CLUSTER>
    <!-- 每台服务器上的节点部署信息 -->
    <DEVICELIST>
        <!-- 节点1上的部署信息 -->
        <DEVICE sn="100001">
        <!-- 节点1的主机名称 -->
        <PARAM name="name" value="openEuler"/>
        <!-- 节点1所在的AZ及AZ优先级 -->
        <PARAM name="azName" value="AZ1"/>
        <PARAM name="azPriority" value="1"/>
        <!-- 节点1的IP,如果服务器只有一个网卡可用,将backIP1和sshIP1配置成同一个IP -->
        <PARAM name="backIp1" value="192.168.240.128"/>
        <PARAM name="sshIp1" value="192.168.240.128"/>   
	    <!--dbnode-->
	    <PARAM name="dataNum" value="1"/>
	    <PARAM name="dataPortBase" value="15400"/>
	    <PARAM name="dataNode1" value="/opt/install/data/dn"/>
        <PARAM name="dataNode1_syncNum" value="0"/>
        </DEVICE>
    </DEVICELIST>
</ROOT>

注意以下配置:
在这里插入图片描述

6、预安装

从安装日志来看,预安装包含创建omm系统级用户(此用户作用:执行openGauss的安装、配置及日常运维操作),创建数据库需要的目录,检查是否满足安装的配置等。

# 指定了用户名,组,配置文件信息
script/gs_preinstall -U omm -G dbgrp -X clusterconfig.xml

注意,中间会提示输入omm的密码,后续有几个步骤停顿时间较长,不用担心,等待原装完成即可。

7、切换omm用户,正式安装

su - omm
cd /opt/software/openGauss/script/
./gs_install -X ../clusterconfig.xml

安装还是比较快的,不需要操作,等待完成。

8、安装完成后验证

使用gs_om 命令进行验证,gs_om命令需要 -t 参数指定操作的类型,主要的操作类型如下:

-start # 启动数据库
-status # 查看数据库状态
-stop # 停止
-restart # 重启
-generateconf  # 生成静态配置文件

数据库安装完成后会自动启动,可以通过查看数据库状态验证是否安装完成

# 通过gs_om命令  --detail 代表显示详细信息
[omm@openEuler ~]$ gs_om -t status --detail
[   Cluster State   ]

cluster_state   : Normal
redistributing  : No
current_az      : AZ_ALL

[  Datanode State   ]

    node     node_ip         port      instance                     state
-----------------------------------------------------------------------------------------
1  openEuler 192.168.240.128 15400      6001 /opt/install/data/dn   P Primary Normal

可以看到节点名称,节点ip,端口号,实例地址,状态为Normal代表数据库状态正常。

四、数据库使用

当我们安装完成后,默认安装了三个数据库:

#连接到数据库 指定数据库和端口号
gsql -d postgres -p 15400 

# 通过 \l命令查询
openGauss=# \l
                          List of databases
   Name    | Owner | Encoding  | Collate | Ctype | Access privileges 
-----------+-------+-----------+---------+-------+-------------------
 postgres  | omm   | SQL_ASCII | C       | C     | 
 template0 | omm   | SQL_ASCII | C       | C     | =c/omm           +
           |       |           |         |       | omm=CTc/omm
 template1 | omm   | SQL_ASCII | C       | C     | =c/omm           +
           |       |           |         |       | omm=CTc/omm
(3 rows)
# 或者通过sql查询
openGauss=# select datname from pg_database;
  datname  
-----------
 template1
 template0
 postgres
(3 rows)

如果要退出当前连接

\q

或者

ctrl+d 

三个默认创建的数据库:

数据库名用户连接权限修改权限
postgres所有用户可连接‌允许用户操作‌
template0禁止连接‌禁止修改‌
template1仅管理员可连接‌仅管理员可连接‌

1、宿主机客户端远程连接数据库

# 切换到omm用户,连接数据库postgres
su - omm

Tips: 切换用户的时候推荐 加“-”,加 “-”会切换用户并进入用户家目录,并加载切换用户的环境配置信息,但不加“-” 只会切换用户,会停留在当前目录,使用原用户的环境变量

①、修改配置文件postgresql.conf的 listen_addresses和 password_encryption_type,两种方式:命令修改和直接修改配置文件。

listen_addresses 的作用是数据库与服务器ip绑定,可以使 客户机连接此ip的时候可以监听到连接。

password_encryption_type 参数是 设置数据库用户的密码加密方式,取值0,1,2 ,0

如果确保虚拟机ip不会变更(比如重启后ip不同的连接方式会变更),可以不用修改listen_addresses参数。

命令方式:

# 先查看当前配置 check是查看,-I表示具体哪个实例节点,0为主节点,1,2,3... 如果取值all或者不写 表示所有节点, -c代表参数名称

[omm@openEuler ~]$ gs_guc check -I all -c "listen_addresses"
The gs_guc run with the following arguments: [gs_guc -c listen_addresses check ].
expected guc information: openEuler: listen_addresses=NULL: [/opt/install/data/dn/postgresql.conf]
gs_guc check: openEuler: listen_addresses='localhost,192.168.240.128': [/opt/install/data/dn/postgresql.conf]

Total GUC values: 1. Failed GUC values: 0.
The value of parameter listen_addresses is same on all instances.
    listen_addresses='localhost,192.168.240.128'
# 如果测试环境防止虚拟机ip地址变更,可以将负责监听的地址改为*(非必须)
gs_guc set -I all c "listen_addresses='*'"

②、修改pg_hba.conf中 客户端ip许可

#查看数据库节点路径:
<PARAM name="dataNode1" value="/opt/install/data/dn"/>

#修改配置文件
vi /opt/install/data/dn/pg_hba.conf
#命令行模式下,/host all 查找 修改位置

# "local" is for Unix domain socket connections only
local   all             all                                     trust
host    all    omm    192.168.240.128/32    trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust
host    all    all    192.168.240.128/32    sha256

# IPv6 local connections:
host    all             all             ::1/128                 trust

#在ipv4后添加一行
host all all 0.0.0.0/0 sha256

在这里插入图片描述

③、因为是禁用初始化用户omm进行远程连接,新增数据库连接用户

#omm用户下,连接数据库 默认使用的是postgres数据库
gsql -d postgres 
# 创建用户
create user test password 'xxxxx'; 

④、重启数据库

# 先退出数据库
ctrl+d 或者  \q
# 重启数据库
gs_om -t restart

⑤、客户端工具连接数据库

选择华为云 GaussDB主备版
在这里插入图片描述

按照如下输入信息:
在这里插入图片描述

可以正常使用客户端操作数据库了:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值