由于没接触过的Linux系统的人首次接触这样的系统
还要在这样系统下安装openGauss实在是太难了!
前人栽树后人乘凉,用了两天终于肝出来了!当然是有老师给我们教程的帮助!
话先放前头这个安装需要的时间因人而异,熟悉Linux得快!但是不熟悉得估计要搞很长时间,建议先看完这个教程多看几遍再下手!!!
如果你真的需要想要装opengauss这篇就够了!按步骤来!
Win10 /11环境下使用VMware Workstation 16安装openGauss 3.1.0 Lite(轻量版)
一、基础环境要求
硬件条件:内存16G
操作系统:Win10/Win11
虚拟机软件:VMware Workstation 16,应已安装
openGauss运行系统:openEuler(欧拉操作系统)22.09
二、虚拟机环境设置
1.OpenEuler系统安装与设置
1.1 下载openEuler系统光盘映像文件。
https://repo.openeuler.org/openEuler-22.09/ISO/
1.2 创建虚拟机
文件–>新建虚拟机–>自定义(高级)–>虚拟机应检兼容性(workstation 16.x)
–>安装客户机操作系统(安装程序光盘映像文件–>选择下载的openEuler光盘ISO文件)
–>客户机操作系统(linux,版本:其他Linux 5.x 内核64位)
–>命名虚拟机(自己取名,比如openEuler 20.03 LTS)
–>处理器配置(1处理器-4内核)–>虚拟机内存(8G)–>网络类型(NAT)
–>IO控制器(LSI Logic)–>磁盘类型(SCSI)
–>选择磁盘(创建新虚拟磁盘)–>磁盘容量(120,不用担心一下就占用120G,将虚拟磁盘拆分成多个文件)–>指定磁盘文件(下一步)
–>完成
–>针对创建的虚拟机“编辑虚拟机设置”–>“选项”–>“共享文件夹”–>“总是启用”–>“添加…”(添加文件夹,比如“下载”文件夹,名称为Downloads)
–>开启此虚拟机–>Test this media & install openEuler 22.09
–>安装过程使用“中文”
–>继续–>安装目的地(自动分区)–>根密码(设置root密码,千万要自己记住,建议符合要求的简单密码)
–>软件选择(服务器: 硬件监控工具+性能工具+linux的远程管理+windows文件服务器+开发工具+无图形终端系统管理工具+传统unix兼容性+安全性工具+系统工具,注意不能最小安装,否则连最基本要用到的ifconfig和tar都没有)
–>网络和主机名(–>启用,千万注意记住IP地址+网关+DNS。我的ip是192.168.176.134,网关是192.168.176.2,网关:192.168.176.2。
因为是NAT,所以会使用vmware创建的内部网络,和宿主机的外部网络不在一个网段)–>修改主机名–>完成
–>开始安装–>等待完成
–>重启系统–>用root登录系统–>点击VMware弹出的“我已完成安装”–>在shell中执行shutdown now关机。
1.3 Vmware-Tools安装
启动虚拟机中的openEuler–>以root身份登录
–>点击Vmware软件的“虚拟机”菜单项–>“安装Vmware Tools”(Vmware会替换虚拟光驱中的光盘映像文件)
–>(挂载vmware-tools光盘映像文件)
mkdir /dev/cdrom /mnt/cdrom
-> mount -t iso9660 /dev/cdrom /mnt/cdrom
(注意:dev/cdrom和/mnt/cdrom之间要有空格)
->输入:ls /mnt/cdrom 查看自己的vmware tools版本
要记得该自己的版本号!!!VMwareTools-10.3.23-16594550是不一样的
–>(复制安装文件到当前用户目录)cp /mnt/cdrom/VMwareTools-10.3.23-16594550.tar.gz ~/
->cd /root
->(解压缩文件)tar -xzf VMwareTools-10.3.23-16594550.tar.gz
–>(安装)cd vmware-tools-distrib
-> ./vmware-install.pl
->一路按enter按默认执行
1.4 共享文件夹设置(如果1.2中没做,此处设置)
编辑虚拟机设置–>选项–>共享文件夹–>总是启用–>添加–>下一步–>浏览–>指定一个宿主系统文件夹(比如下载目录)–>下一步–>确保选上“启用此共享”–>完成
输入命令vmware-hgfsclient查看共享目录是否已经设置成功
如果出现目录(比如Downloads)说明共享目录设置成功
使用如下命令挂载共享文件夹
sudo vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other -o nonempty
检查共享文件夹是否可用
执行后,去/mnt/hgfs目录下能看到刚刚在主机设定的共享文件夹,在主机中在该文件夹放入文件,若在openEuler中文件夹下能看到文件,即表明配置成功!
但是这种挂载每次关机就会失效,我们还得重新执行一次挂载命令。
自动挂载共享目录
用vim打开/etc/fstab文件,添加一行挂载信息
vi /etc/fstab
键入o在下一行插入
.host:/ /mnt/hgfs fuse.vmhgfs-fuse nonempty,allow_other,defaults 0 0
然后 Esc–>Shift+z 保存退出
使用mount -a指令让刚刚写入的挂载信息立即生效。
1.5 openEuler上网环境设置
vi /etc/sysconfig/network-scripts/ifcfg-ens33
按照如下内容修改,openEuler默认不适用ipv4,而使用ipv6。通过修改将ipv6内容统统修改为no,并根据先前安装系统时所看到的网络设置信息设定ipv4设置(注意设置为静态ip地址)。
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
IPV6_AUTOCONF=no
IPV6_DEFROUTE=no
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=XXXXXXX #此行不改动,保持自己机器的设置
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.176.134 //自己的IP
NETMASK=255.255.255.0
GATEWAY=192.168.176.2 //自己的默认网关
DNS1=192.168.176.2 //可以8.8.8.8
DNS2=202.118.66.6 //可以114.114.114.114
IPV6_PRIVACY=no
设置完毕后存盘退出,reboot
重启后,ping以下百度,看看是否能ping通。
如果能ping通说明虚拟机中的openEuler系统已经可以联网。
2. openGauss支撑环境设置
2.1 设置openGauss安装脚本要求环境(人间大炮一级准备)
提示:以下操作都以root用户身份运行。
(1)安装 libaio等软件包
软件依赖包安装
yum install flex bison ncurses-devel glibc-devel patch readline-devel libnsl libaio* -y
(2)关闭操作系统防火墙
为了在防火墙开启的状态下,确保openGauss轻量版的正常使用。用户需要将轻量版相关的服务、协议、IP以及端口添加到主机的防火墙白名单中。
目前仅支持在防火墙关闭的状态下进行安装。
检查防火墙是否关闭。
systemctl status firewalld
若防火墙状态显示为active (running),则表示防火墙未关闭,请执行4;
若防火墙状态显示为inactive (dead),则无需再关闭防火墙。
关闭防火墙。
systemctl disable firewalld.service
systemctl stop firewalld.service
检查防火墙是否关闭。
systemctl status firewalld
(3)设置字符集参数
将各数据库节点的字符集设置为相同的字符集,可以在/etc/profile文件中添加”export LANG=XXX”(XXX为Unicode编码)。
echo "export LANG=XXX" >> /etc/profile
(4)关闭swap交换内存
关闭swap交换内存是为了保障数据库的访问性能,避免把数据库的缓冲区内存淘汰到磁盘上。 如果服务器内存比较小,内存过载时,可打开swap交换内存保障正常运行。
使用swapoff -a命令将交换内存关闭
(5)关闭RemoveIPC
修改/etc/systemd/logind.conf文件中的“RemoveIPC“值为“no“。
vi /etc/systemd/logind.conf
将RemoveIPC=no的注释去掉.
修改/usr/lib/systemd/system/systemd-logind.service文件中的“RemoveIPC“值为“no“。
vi /usr/lib/systemd/system/systemd-logind.service
在[Service]节末尾添加RemoveIPC=no
重新加载配置参数。
systemctl daemon-reload
systemctl restart systemd-logind
检查修改是否生效。
loginctl show-session | grep RemoveIPC
systemctl show systemd-logind | grep RemoveIPC
(6)设置网卡 MTU 值
ifconfig ens33 mtu 8192
2.2 openGauss安装用户准备(人间大炮二级准备)
提示:以下操作都以root用户身份运行。
(1)创建安装目录
mkdir -p /opt/software/openGauss
(2)设置数据库用户及用户组
创建用户组dbgroup。
groupadd dbgroup
创建用户组dbgroup下的普通用户omm,并设置密码为Gauss_234。(建议后续所有密码设置一样,避免出现遗忘的情况)
useradd -g dbgroup omm
passwd omm
将omm设置为sudoer
vi /etc/sudoers
修改 /etc/sudoers 文件,找到下面一行,在 root 下面添加一行,如下所示:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
omm ALL=(ALL) ALL
为omm用户赋予软件目录权限
chmod -R 775 /opt/software/
chown omm:dbgroup /opt/software -R
3. openGauss正式安装
提示:以下操作都以omm用户身份运行。
(1)使用omm登录系统
(2)下载openGauss安装文件(也可以通过共享目录将文件拷贝到omm用户目录)
sudo wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/3.1.1/x86_openEuler/openGauss-Lite-3.1.1-openEuler-x86_64.tar.gz
(3)拷贝解压文件
解压openGauss压缩包到安装目录。
sudo tar -xzvf openGauss-Lite-3.1.1-openEuler-x86_64.tar.gz -C /opt/software/openGauss
(4) 创建安装目录,数据目录
cd /opt/software/openGauss
mkdir data
mkdir install
(5) 安装openGauss
cd /opt/software/openGauss/
sudo echo Gauss_234 | sh ./install.sh --mode single -D ./data -R ./install --start
(如果遇到没有执行install.sh权限的提示,切换为root用户登录,重新执行一次
chown omm:dbgroup /opt/software -R)
(6)使得环境变量生效
source /home/omm/.bashrc
(7)检查安装是否成功
安装执行完成后,使用ps和gs_ctl查看进程是否正常。
ps ux | grep gaussdb
gs_ctl query -D /opt/software/openGauss/data
(8)关闭数据库,重启系统
gs_ctl stop -D /opt/software/openGauss/data
sudo reboot
4. 数据库设置
提示:以下操作都以omm用户身份运行。
4.1 以omm用户登录系统
4.2 设置数据库配置文件
(1)设置postgresql.conf
vi /opt/software/openGauss/data/postgresql.conf
找到对应内容,添加信息变为如下形态:
listen_addresses= 'localhost,192.168.176.134'
ssl=off
#ssl_ciphers ='ALL'
port = 5432
(注意:192.168.176.134是虚拟机的NAT下的IP地址,根据自己的情况修改,参见最开始的虚拟机设置章节中让记下来的地址。如果当时忘记了,可点击虚拟机菜单中的”编辑“-->"虚拟网络编辑器"-->点击NAT模式所在行-->下方"更改设置"按钮-->授权后查看或设置)
(2)设置pg_hba.conf
打开pg_hba.conf文件
vi /opt/software/openGauss/data/pg_hba.conf
找到如下信息
# IPv4 local connections:
在如下行的下面
host all 127.0.0.1/32 trust
添加(注意192.168.176.134是虚拟机的NAT下的IP地址,根据自己的情况修改,参见最开始的虚拟机设置章节中让记下来的地址。如果当时忘记了,可点击虚拟机菜单中的”编辑“–>“虚拟网络编辑器”–>点击NAT模式所在行–>下方"更改设置"按钮–>授权后查看或设置)
host all 192.168.176.134/32 sha256
host all 0.0.0.0/0 sha256
4.3 启动数据库
gs_ctl start -D /opt/software/openGauss/data
4.4 创建用于远程连接的数据库用户
创建数据库用户是为用于第三方软件通过网络连接openGauss。openGauss不允许使用omm用户(openGauss默认的管理员用户)来远程连接数据库。
(1)利用服务器上的gsql连接数据库
数据库安装完成后,默认生成名称为postgres的数据库。第一次连接数据库时可以连接到此数据库。执行如下命令连接数据库。
gsql -d postgres -p 5432
其中,postgres为需要连接的数据库名称,5432为数据库默认安装的端口号。
omm用户是管理员用户,因此系统显示“DBNAME=#”。若使用普通用户身份登录和连接数据库,系统显示“DBNAME=>”。提示符告诉您openGauss准备为您输入SQL语句。
“Non-SSL connection”表示未使用SSL方式连接数据库。
可以选择(作为学习用途可以忽略)首次登录建议修改密码以提高安全性。命令如下。
openGauss=# ALTER ROLE omm IDENTIFIED BY ‘XXXXXXXX’ REPLACE ‘XXXXXXXX’;
(2)创建一个新的业务数据库
如果要使用第三方连接,需要单独创建一个用户,不能使用omm用户进行远程连接。首先要创建一个数据库。
CREATE DATABASE opengauss ENCODING 'UTF-8' template = template0;
(3)创建数据库用户–opengauss
create user opengauss password 'Gauss_234';
首次登录建议修改密码以提高安全性。命令如下。
openGauss=# ALTER ROLE opengauss IDENTIFIED BY ‘你的密码’ REPLACE ‘Gauss_234’;
(4)将数据库 opengauss 的所属者改为opengauss
alter database opengauss owner to opengauss;
(5)将系统权限授权给用户或者角色
GRANT ALL PRIVILEGES TO opengauss;
至此,可以通过第三方工具,使用用户名opengauss,密码Gauss_234连接虚拟机上的openGauss服务器了。
建议在win10上安装opengauss官网提供的data studio(要求安装java11及以上)
Omm用户进入,修改根目录下面的启动文件,实现自启动
vi .bash_profile
加入:
gs_ctl start -D /opt/software/openGauss/data
使用gaussdba用户启动Gaussdb,启动失败,报错:gs_ctl: invalid data in pid file “/opt/GaussDB/data/ postmaster.pid”重命名异常DB服务器上的文件/opt/GaussDB/data/postmaster.pid
附上成功的图片: