• openGauss本地Centos7.6单机安装和简单应用


    openGauss基础环境配置

    1. 在VMware Workstation中安装一台 centos7.6

      1. 内存:8GB,亲测4GB安装不够

      2. 磁盘:测试50GB-100GB够用

      3. 非必须,记得配置网卡 vim /etc/sysconfig/network-script/ifcfg-ens33

        可以直接配置静态IP,根据个人习惯

      4. 非必须,ifconfig要能使用,不能使用的可以按照下面操作

        yum install -y net-tools.x86_64
        
        • 1
    2. 查看centos的版本

      cat /etc/redhat-release
      
      • 1
    3. 非必须:如果后面下载速度非常慢的话,可更换yum源为aliyun,速度快则不用在意这一步

      1. 删除系统自带的yum源
        rm -rf /etc/yum.repo.d/*
        
        • 1
      2. 下载新的yum源
        curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
        
        • 1
      3. 生成仓库缓存
        yum makecache  
        
        • 1
    4. 安装openGauss需要的依赖包

      yum -y install libaio-devel flex bison ncurses-devel glibc-devel lsb_release 
      
      • 1
      所需软件建议版本
      libaio-devel建议版本:0.3.109-13
      flex要求版本:2.5.31 以上
      bison建议版本:2.7-4
      ncurses-devel建议版本:5.9-13.20130511
      glibc-devel建议版本:2.17-111
      patch建议版本:2.7.1-10
      redhat-lsb-core建议版本:4.1
      readline-devel建议版本:7.0-13
      libnsl(openEuler+x86环境中)建议版本:2.28-36
    5. 安装python 3.6

      #安装python 3.6
      yum install -y python
      
      #查看python版本
      python -V
      
      • 1
      • 2
      • 3
      • 4
      • 5
    6. 关闭防火墙firewall和SELINUX

      1. 关闭firewall
        1. 停止firewall
          systemctl stop firewalld.service
          
          • 1
        2. 关闭firewall开机自启
          systemctl disable firewalld.service
          
          • 1
        3. 可以查看以下firewall的状态
          systemctl status firewalld.service
          
          • 1
      2. 关闭SELINUX
        1. 使用VIM打开SELINUX的config文件
          vim /etc/selinux/config
          
          • 1
        2. 修改SELINUX的值,然后保存退出
          SELINUX=enforcing 修改为 ELINUX=disabled
          
          • 1
        3. 重启centos
          reboot
          
          • 1
    7. 关闭内存交换

      swapoff -a
      
      • 1
    8. 关闭透明大页

      注: 透明大页是一种内存管理技术,它可以将多个物理页合并成一个大页,以提高内存访问效率。但是,透明大页可能会导致openGauss的性能下降和稳定性问题,因为openGauss使用的是自己的内存管理机制,与透明大页不兼容。关闭透明大页可以避免这些问题,提高openGauss的性能和稳定性。

      1. 使用vim打开rc.local
        vim /etc/rc.d/rc.local
        
        • 1
      2. 在文件中添加
        if test ‐f /sys/kernel/mm/transparent_hugepage/enabled;
        then
        echo never > /sys/kernel/mm/transparent_hugepage/enabled
        fi
        if test ‐f /sys/kernel/mm/transparent_hugepage/defrag;
        then
        echo never > /sys/kernel/mm/transparent_hugepage/defrag
        fi
        
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
    9. 修改主机名

      1. 设置主机名
        hostnamectl set-hostname --static 主机名
        
        • 1
      2. 添加主机映射关系
        1. 使用vim打开hosts
          vim /etc/hosts
          
          • 1
        2. 在文件中最后添加centos的ip和主机名
          ip 主机名
          
          • 1

    openGauss安装

    1. 获取openGauss安装包(本操作为3.0.0)
    2. 在开源官网选择需要的版本进行下载,在上传到centos7.6中:https://opengauss.org/zh/download/archive/
    3. 在后面的安装过程中使用wget在线下载
      wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/3.0.0/x86/openGauss-3.0.0-CentOS-64bit-all.tar.gz
      
      • 1
    4. openGauss详细安装步骤
      1. 创建用户组和用户
        #1、创建用户组dbgroup:
        groupadd dbgroup
        #2、创建用户omm,并让他属于dbgroup用户组
        useradd -g dbgroup /home/omm -m -s /bin/bash omm
        #3、设置用户omm的登录密码
        passwd omm
        #回车输入密码: Gauss_1234 (自定义)
        
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
      2. 创建一个目录soft并授权
        mkdir -p /opt/soft/openGauss
        chmod 755 -R /opt/soft
        chown -R omm:dbgroup /opt/soft/openGauss
        
        • 1
        • 2
        • 3
      3. 在/opt/soft/openGauss/目录下,下载openGauss 3.0.0 安装包
        wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/3.0.0/x86/openGauss-3.0.0-CentOS-64bit-all.tar.gz
        
        • 1
      4. 解压压缩包
        tar -zvxf openGauss-3.0.0-CentOS-64bit-all.tar.gz
        tar -zvxf openGauss-3.0.0-CentOS-64bit-om.tar.gz
        
        • 1
        • 2
      5. 配置openGauss的cluster_config_template.xml文件
        1. 将配置文件从下载包中复制到openGauss目录下
          cp /opt/soft/openGauss/script/gspylib/etc/conf/cluster_config_templae.xml /opt/soft/openGauss/
          
          • 1
        2. 使用vim打开文件并修改主机名和主机iP,如果是单机,只保留一个节点的信息即可
          
          <ROOT>
            <CLUSTER>
              
              <PARAM name="clusterName" value="Cluster_template" />
              
              <PARAM name="nodeNames" value="node1_hostname,node2_hostname"/>
              <PARAM name="gaussdbAppPath" value="/opt/huawei/install/app" />
              <PARAM name="gaussdbLogPath" value="/var/log/omm" />
              <PARAM name="tmpMppdbPath" value="/opt/huawei/tmp"/>
              <PARAM name="gaussdbToolPath" value="/opt/huawei/install/om" />
              <PARAM name="corePath" value="/opt/huawei/corefile"/>
              
              <PARAM name="backIp1s" value="192.168.0.1,192.168.0.2"/>
            CLUSTER>
          
            <DEVICELIST>
              
              <DEVICE sn="node1_hostname">
                <PARAM name="name" value="node1_hostname"/>
                <PARAM name="azName" value="AZ1"/>
                <PARAM name="azPriority" value="1"/>
                <PARAM name="backIp1" value="192.168.0.1"/>
                <PARAM name="sshIp1" value="192.168.0.1"/>
                
                <PARAM name="dataNum" value="1"/>
                <PARAM name="dataPortBase" value="15400"/>
                <PARAM name="dataNode1" value="/opt/huawei/install/data/dn,node2_hostname,/opt/huawei/install/data/dn"/>
                <PARAM name="dataNode1_syncNum" value="0"/>
              DEVICE>
            
              <DEVICE sn="node2_hostname">
                <PARAM name="name" value="node2_hostname"/>
                <PARAM name="azName" value="AZ1"/>
                <PARAM name="azPriority" value="1"/>
                <PARAM name="backIp1" value="192.168.0.2"/>
                <PARAM name="sshIp1" value="192.168.0.2"/>
              DEVICE>
            DEVICELIST>
          ROOT>
          
          • 1
          • 2
          • 3
          • 4
          • 5
          • 6
          • 7
          • 8
          • 9
          • 10
          • 11
          • 12
          • 13
          • 14
          • 15
          • 16
          • 17
          • 18
          • 19
          • 20
          • 21
          • 22
          • 23
          • 24
          • 25
          • 26
          • 27
          • 28
          • 29
          • 30
          • 31
          • 32
          • 33
          • 34
          • 35
          • 36
          • 37
          • 38
          • 39
          • 40
      6. 设置lib库,在根目录 **/root/**目录下的.bashrc文件中,该文件开机自动扫描
        1. 使用vim打开.bashrc
          vim .bashrc
          
          • 1
        2. 添加如下内容,记得修改openGauss集群名称
          export GPHOME=/opt/huawei/install/om
          export PATH=$GPHOME/script/gspylib/pssh/bin:$GPHOME/script:$PATH
          export LD_LIBRARY_PATH=$GPHOME/lib:$LD_LIBRARY_PATH
          export PYTHONPATH=$GPHOME/lib
          export GAUSSHOME=/opt/huawei/install/app
          export PATH=$GAUSSHOME/bin:$PATH
          export LD_LIBRARY_PATH=$GAUSSHOME/lib:$LD_LIBRARY_PATH
          export S3_CLIENT_CRT_FILE=$GAUSSHOME/lib/client.crt
          # notice openGauss's version
          export GAUSS_VERSION=3.0.0
          export PGHOST=/opt/huawei/tmp
          export GAUSSLOG=/opt/huawei/log/omm
          umask 077
          export GAUSS_ENV=2
          export GS_CLUSTER_NAME=集群名称
          
          • 1
          • 2
          • 3
          • 4
          • 5
          • 6
          • 7
          • 8
          • 9
          • 10
          • 11
          • 12
          • 13
          • 14
          • 15
      7. 执行交互式初始化
        1. 切换为omm用户

          su omm
          
          • 1
        2. 进入到/opt/soft/openGauss/script/目录下

        3. 预安装

          python3 gs_preinstall -U omm -G dbgroup -X /opt/soft/openGauss/cluster_config_template.xml 
          
          • 1

          注意:当输出最后是以下内容时表示 预安装成功

          Successfully set finish flag.
          Preinstallation succeeded.

        4. 真正安装

          1. 执行安装命令

            ./gs_install -X /opt/soft/openGauss/cluster_config_template.xml
            
            • 1
          2. 输入密码:最少8个字符,需包含大小写字母、数字、字符

            该密码为后期连接openGauss时使用的密码勿忘

          3. 安装成功:最后输出如下,很可能会因为内存不够而报错,一定要注意看报错日志。

            Successfully started cluster.
            Successfully installed application.
            end deploy.

          4. 接下来进行openGauss简单应用测试

    openGauss使用测试

    1. openGauss服务启/停
      #分布式
      gs_om -t start   #启动服务
      gs-om -t restart #重启服务
      #集中式
      gs_om -t stop    #关闭服务
      gs-om -t restart #启动服务
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
    2. 查看openGauss数据库状态
      gs_om -t status --detail
      
      • 1
    3. 检查性能
      gs_checkperf
      gs_checkperf -i pmk -U omm
      gs_checkperf -i pmk -U omm --detail
      
      • 1
      • 2
      • 3
    4. 查看数据库端口号
      cat /opt/huawei/install/data/dn/postgresql.conf | grep port
      
      • 1
    5. 以omm远程连接上centos7.6,登录openGauss
      gsql -d postgres -p 15400 #在cluster_config_templae.conf中设置的连接端口
      
      • 1
    6. 应用
      1. 创建/删除 用户
        create user 用户名 with passwd "密码";   #新用户
        drop user 用户名 cascade;   #删除前需确保该用户下没有任何资源
        
        • 1
        • 2
      2. 创建/删除 数据库
        create database 库名 owner 用户名; #创建数据库,不指定owner默认omm
        drop database 库名; #删除数据库
        
        • 1
        • 2
      3. 创建/删除 表
        create table stu(id int,name varchar(10),gender varchar(10),age int);
        drop table stu;
        
        • 1
        • 2
      4. 修改表结构-(新增一列)
        alter table stu add hobby varchar(20);
        
        • 1
      5. 查询数据
        select * from stu;
        
        • 1
      6. 新增数据
        insert into stu values(1001,'ethan','male',24,'play basketball');
        
        • 1
      7. 更新数据
        update stu set hobby='play football' where id=1001;
        
        • 1
      8. 删除数据
        delete from stu where id=1001;
        
        • 1

    openGauss常用命令

    1. 退出数据库

      Postgres=# \q
      
      • 1
    2. 进入数据库可以直接用help获取帮助信息
      版权信息

      Postgres=# \copyright
      
      • 1
    3. 查看数据库对象
      查看帮助信息

      postgres=# \?
      
      • 1
    4. 切换数据库

      postgres=# \c dbname
      
      • 1
    5. 列举数据库:
      使用\l元命令查看数据库系统的数据库列表。

      postgres=# \l
      
      • 1
    6. 使用如下命令通过系统表pg_database查询数据库列表。

      postgres=# SELECT datname FROM pg_database;
      
      • 1
    7. 列举表:

      postgres=# \dt
      
      • 1
    8. 列举所有表、视图和索引:

      postgres=# \d+
      
      • 1
    9. 使用gsql的\d+命令查询表的属性

      postgres=# \d+ tablename
      
      • 1
    10. 查看表结构:

      postgres=# \d tablename
      
      • 1
    11. 列举schema:

      postgres=# \dn
      
      • 1
    12. 查看索引:

      postgres=# \di
      
      • 1
    13. 查询表空间:
      使用gsql程序的元命令查询表空间。

      postgres=# \db
      
      • 1
    14. 检查pg_tablespace系统表。如下命令可查到系统和用户定义的全部表空间。

      postgres=# SELECT spcname FROM pg_tablespace;
      
      • 1
    15. 查看数据库用户列表:

      postgres=# SELECT * FROM pg_user;
      
      • 1
    16. 要查看用户属性:

      postgres=# SELECT * FROM pg_authid; 
      
      postgres=# SELECT * FROM PG_ROLES;
      
      • 1
      • 2
      • 3
    17. 其他操作
      切换数据库:

      postgres=# \c dbname
      
      • 1
    18. 切换用户:

      postgres=# \c – username
      
      • 1

    接下来我会在虚拟机测试进行openEuler操作系统进行安装部署openGauss,不知道结果会怎么样,完成再写一篇文共享给大家,有兴趣的铁汁可以期待一波,不一定能成功!!

    在这里插入图片描述

  • 相关阅读:
    一周速学SQL Server(第五天)
    【视觉SLAM14讲】【汇总】
    容器类之QT
    【Labview】通过串口通信从上位机读取和写入数据
    前端零代码开发实践:页面嵌套+逻辑连线0开发扩展组件,实现切换开关控制扇叶转动。能无代码封装扩展组件,有别于常规的web组态或低代码平台
    防御安全第四次作业
    java8 stream list 操作
    自定义pycharm的debug控件
    吃透这份“腾讯限量版”Java架构笔记,要个40k不过分吧
    leetcode面试题之链表
  • 原文地址:https://blog.csdn.net/IT_technologier/article/details/133815561