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

news2024/12/23 8:28:08

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

  • openGauss基础环境配置
  • openGauss安装
  • openGauss使用测试
  • openGauss常用命令

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
      
  2. 查看centos的版本

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

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

    yum -y install libaio-devel flex bison ncurses-devel glibc-devel lsb_release 
    
    所需软件建议版本
    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
    
  6. 关闭防火墙firewall和SELINUX

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

    swapoff -a
    
  8. 关闭透明大页

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

    1. 使用vim打开rc.local
      vim /etc/rc.d/rc.local
      
    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
      
  9. 修改主机名

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

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
    
  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 (自定义)
      
    2. 创建一个目录soft并授权
      mkdir -p /opt/software/openGauss
      chmod 755 -R /opt/soft
      chown -R omm:dbgroup /opt/soft/openGauss
      
    3. 在线下载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
      
    4. 配置openGauss的cluster_config_template.xml文件
      1. 将配置文件从下载包中复制到openGauss目录下
        cp /opt/soft/openGauss/script/gspylib/etc/conf/cluster_config_templae.xml /opt/soft/openGauss/
        
      2. 使用vim打开文件并修改主机名和主机iP,如果是单机,只保留一个节点的信息即可
        <?xml version="1.0" encoding="utf-8"?>
        <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"/>
            <!--主机ip,如果是部署单机的,就只写一个-->
            <PARAM name="backIp1s" value="192.168.0.1,192.168.0.2"/>
          </CLUSTER>
        
          <DEVICELIST>
            <!--集群节点名称,如果是单节点,只保留一个DEVICE即可-->
            <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"/>
              <!-- dn -->
              <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>
        
    5. 设置lib库,在根目录 **/root/**目录下的.bashrc文件中,该文件开机自动扫描
      1. 使用vim打开.bashrc
        vim .bashrc
        
      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=集群名称
        
    6. 执行交互式初始化
      1. 切换为omm用户

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

      3. 预安装

        python3 gs_preinstall -U omm -G dbgrp -X /opt/software/openGauss/cluster_config_template.xml 
        

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

        Successfully set finish flag.
        Preinstallation succeeded.

      4. 真正安装

        1. 执行安装命令

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

openGauss常用命令

  1. 退出数据库

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    postgres=# \c – username
    

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

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/948866.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

谈了千百遍的数据一致性

今天来说一个老生常谈的问题&#xff0c;来看一个实际案例&#xff1a; 现有业务中往往都会通过缓存来提高查询效率&#xff0c;降低数据库的压力&#xff0c;尤其是在分布式高并发场景下&#xff0c;大量的请求直接访问Mysql很容易造成性能问题。 有一天老板找到了你… 老板…

四川玖璨电子商务有限公司:开抖店怎么运营

开抖店是一种越来越流行的创业方式&#xff0c;在社交媒体平台上开店销售各种商品&#xff0c;比如服装、配饰、美妆和家居用品等等。对于新手来说&#xff0c;他们可能会很关心自己开抖店能够多久出单。虽然这个问题没有一个固定的答案&#xff0c;但是以下是一些关键的运营方…

一文讲透:低代码平台是什么?低代码平台应该如何挑选?

低代码平台是什么&#xff1f;低代码平台的边界在哪&#xff1f;低代码平台的优势&#xff1f;低代码平台哪个好用&#xff1f;2023年有哪些国内值得关注的低代码平台&#xff1f;本文将深入浅出的带大家了解低代码平台&#xff0c;并且为大家带来2023年国内最热六款低代码平台…

【MySQL系列】-ORDER BY……HAVING详解及limit

&#x1f490; &#x1f338; &#x1f337; &#x1f340; &#x1f339; &#x1f33b; &#x1f33a; &#x1f341; &#x1f343; &#x1f342; &#x1f33f; &#x1f344;&#x1f35d; &#x1f35b; &#x1f364; &#x1f4c3;个人主页 &#xff1a;阿然成长日记 …

【ELK日志收集系统】

目录 一、概述 1.作用 2.为什么使用&#xff1f; 二、组件 1.elasticsearch 1.1 作用 1.2 特点 2.logstash 2.1 作用 2.2 工作过程 2.3 INPUT 2.4 FILETER 2.5 OUTPUTS 3.kibana 三、架构类型 1.ELK 2.ELKK 3.ELFK 4.ELFKK 四、案例 - 构建ELK集群 1.环境…

【行为树】py_trees 学习笔记

学习资料 《Introduction to behavior trees》 1. 概念说明 1.1 Action&#xff1a;pt.behaviour.Behaviour 在一个行为树中&#xff0c;Action 是一个叶节点&#xff08;Leaf Node&#xff09;&#xff0c;它实际执行某种行为或任务&#xff0c;并返回成功、失败或运行中的…

微服务·架构组件之注册与发现

引言 微服务架构在现代软件开发中越来越受欢迎&#xff0c;它通过将系统拆分为多个小型、自治的服务来提高可维护性、可扩展性和灵活性。然而随着服务数量的增多&#xff0c;服务之间的通信何发现变得更加复杂。本报告旨在深入探讨微服务中的注册与发现&#xff0c;介绍其背景…

使用rem + sass + 媒体查询 进行横竖屏适配移动端项目

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一、 媒体查询&#xff08;Media Query&#xff09;1.简单了解2.简单例子3. 语法&#xff08;1&#xff09;媒体类型&#xff08;mediatype &#xff09;&#xff0…

【黑科技】游戏开发程序员必备工具【一】

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;元宇宙-秩沅 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 秩沅 原创 &#x1f468;‍&#x1f4bb; 收录于专栏&#xff1a;效率…

MongoDB实验——在Java应用程序中操作 MongoDB 数据

在Java应用程序中操作 MongoDB 数据 1. 启动MongoDB Shell 2. 切换到admin数据库&#xff0c;使用root账户 3.开启Eclipse&#xff0c;创建Java Project项目&#xff0c;命名为MongoJava File --> New --> Java Project 4.在MongoJava项目下新建包&#xff0c;包名为mo…

【SpringBoot系列】 测试框架之@SpringBootTest的使用

SpringBootTest的详细介绍 SpringBootTest 是 Spring Boot 测试框架中的注解&#xff0c;用于标识一个测试类&#xff0c;以指示该类是一个 Spring Boot 应用程序的测试类。它允许你在测试环境中加载整个 Spring Boot 应用程序上下文&#xff0c;测试应用程序的各种组件、服务…

如何备考 PMP 考试?

一、PMP学习7步走攻略 ​1、熟悉考试大纲&#xff1a; PMP考试大纲是备考的基础&#xff0c;考生需要详细熟悉考试大纲&#xff0c;了解各个知识领域的重点和难点。 2、制定学习计划&#xff1a; 根据考试大纲和个人情况&#xff0c;制定学习计划&#xff0c;合理分配学习时间…

OA项目之我的会议(查询会议排座送审)

目录 会议查询 会议排座 会议送审 思路&#xff1a; 关键性会议SQL的编写后台实现前台实现 会议查询 MeetingInfoDao.java // 通用的会议查询SQL语句&#xff0c;包含会议信息表数据&#xff0c;主持人姓名、审批人姓名、会议状态private String getSQL() {return "…

android:新建工程文件介绍

一、前言当我们新建一个app时会呈现出固定的工程文件&#xff0c;这篇文章介绍新建工程里的文件。 二、介绍 Structure:就是你选择哪个页面就会显示那个页面的结构&#xff0c;就比如说我选择的是MainActivity他就会显示这个页面所使用的方法。 1-2&#xff1a;是android自动生…

【ESP32】解决接串口助手时,无法启动问题

本文主要记录ESP32正常烧录程序后&#xff0c;接上串口助手就无法启动&#xff0c;报错 waiting for download&#xff0c;拔掉串口助手后&#xff0c;程序可以正常启动 &#x1f4cb; 个人简介 &#x1f496; 作者简介&#xff1a;大家好&#xff0c;我是喜欢记录零碎知识点的…

小程序隐私保护授权处理方式之弹窗组件

欢迎点击关注-前端面试进阶指南&#xff1a;前端登顶之巅-最全面的前端知识点梳理总结 *分享一个使用比较久的&#x1fa9c; 小程序隐私保护授权弹窗组件 调用wx.getUserProfile进行授权时&#xff0c;返回错误信息&#xff1a;{errMsg: “getUserProfile:fail api scope is…

nvm和volta对node版本控制的区别

前言——我们做前端开发的都会需要node.js环境&#xff0c;我们直接安装指定的版本可以么&#xff1f;可以&#xff0c;只不过在需要换版本的时候还得卸载重新装。那有工具可以帮助我们不用卸载就更改node版本么&#xff1f;有啊&#xff0c;nvm就可以。那又有没有什么工具不用…

高忆管理:沪指震荡微涨,半导体板块走强,卫星导航概念拉升

30日早盘&#xff0c;A股两市维持震动格式。到午间收盘&#xff0c;沪指涨0.06%报3137.72点&#xff0c;深成指涨0.33%&#xff0c;创业板指涨0.12%&#xff0c;两市合计成交6424亿元。北向资金净流出8.82亿元。盘面上&#xff0c;半导体、纺织机械、元器件、通信设备、软件服务…

1.网络空间搜素引擎

网络空间搜素引擎 地址 &#xff1a;shodan.io 简介 &#xff1a; 这句话还是有点东西得 。 区别&#xff1a; 平常得搜素引擎主要搜网页&#xff0c;shadan可以搜所以带有ip地址的设备。使用 &#xff1a; 1.提供官方api 2.可以去淘宝15元买个初级会员 3.过滤器查看官方…

C# Dapper 操作Oracle数据库

nuget安装内容 1.配置连接字符串 OracleConnectionString这个可用 {"Logging": {"LogLevel": {"Default": "Information","Microsoft.AspNetCore": "Warning"}},"AllowedHosts": "*","…