openGauss本地Centos7.6单机安装和简单应用
openGauss本地Centos7.6单机安装和简单应用
- openGauss基础环境配置
- openGauss安装
- openGauss使用测试
- openGauss常用命令
openGauss基础环境配置
-
在VMware Workstation中安装一台 centos7.6
-
内存:8GB,亲测4GB安装不够
-
磁盘:测试50GB-100GB够用
-
非必须,记得配置网卡 vim /etc/sysconfig/network-script/ifcfg-ens33
可以直接配置静态IP,根据个人习惯
-
非必须,ifconfig要能使用,不能使用的可以按照下面操作
yum install -y net-tools.x86_64
-
-
查看centos的版本
cat /etc/redhat-release
-
非必须:如果后面下载速度非常慢的话,可更换yum源为aliyun,速度快则不用在意这一步
- 删除系统自带的yum源
rm -rf /etc/yum.repo.d/*
- 下载新的yum源
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
- 生成仓库缓存
yum makecache
- 删除系统自带的yum源
-
安装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 -
安装python 3.6
#安装python 3.6 yum install -y python#查看python版本 python -V
-
关闭防火墙firewall和SELINUX
- 关闭firewall
- 停止firewall
systemctl stop firewalld.service
- 关闭firewall开机自启
systemctl disable firewalld.service
- 可以查看以下firewall的状态
systemctl status firewalld.service
- 停止firewall
- 关闭SELINUX
- 使用VIM打开SELINUX的config文件
vim /etc/selinux/config
- 修改SELINUX的值,然后保存退出
SELINUX=enforcing 修改为 ELINUX=disabled
- 重启centos
reboot
- 使用VIM打开SELINUX的config文件
- 关闭firewall
-
关闭内存交换
swapoff -a
-
关闭透明大页
注: 透明大页是一种内存管理技术,它可以将多个物理页合并成一个大页,以提高内存访问效率。但是,透明大页可能会导致openGauss的性能下降和稳定性问题,因为openGauss使用的是自己的内存管理机制,与透明大页不兼容。关闭透明大页可以避免这些问题,提高openGauss的性能和稳定性。
- 使用vim打开rc.local
vim /etc/rc.d/rc.local
- 在文件中添加
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
- 使用vim打开rc.local
-
修改主机名
- 设置主机名
hostnamectl set-hostname --static 主机名
- 添加主机映射关系
- 使用vim打开hosts
vim /etc/hosts
- 在文件中最后添加centos的ip和主机名
ip 主机名
- 使用vim打开hosts
- 设置主机名
openGauss安装
- 获取openGauss安装包(本操作为3.0.0)
- 在开源官网选择需要的版本进行下载,在上传到centos7.6中:https://opengauss.org/zh/download/archive/
- 在后面的安装过程中使用wget在线下载
wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/3.0.0/x86/openGauss-3.0.0-CentOS-64bit-all.tar.gz
- openGauss详细安装步骤
- 创建用户组和用户
#1、创建用户组dbgroup: groupadd dbgroup #2、创建用户omm,并让他属于dbgroup用户组 useradd -g dbgroup /home/omm -m -s /bin/bash omm #3、设置用户omm的登录密码 passwd omm #回车输入密码: Gauss_1234 (自定义)
- 创建一个目录soft并授权
mkdir -p /opt/soft/openGauss chmod 755 -R /opt/soft chown -R omm:dbgroup /opt/soft/openGauss
- 在/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
- 解压压缩包
tar -zvxf openGauss-3.0.0-CentOS-64bit-all.tar.gz tar -zvxf openGauss-3.0.0-CentOS-64bit-om.tar.gz
- 配置openGauss的cluster_config_template.xml文件
- 将配置文件从下载包中复制到openGauss目录下
cp /opt/soft/openGauss/script/gspylib/etc/conf/cluster_config_templae.xml /opt/soft/openGauss/
- 使用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>
- 将配置文件从下载包中复制到openGauss目录下
- 设置lib库,在根目录 **/root/**目录下的.bashrc文件中,该文件开机自动扫描
- 使用vim打开.bashrc
vim .bashrc
- 添加如下内容,记得修改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=集群名称
- 使用vim打开.bashrc
- 执行交互式初始化
-
切换为omm用户
su omm
-
进入到/opt/soft/openGauss/script/目录下
-
预安装
python3 gs_preinstall -U omm -G dbgroup -X /opt/soft/openGauss/cluster_config_template.xml
注意:当输出最后是以下内容时表示 预安装成功
Successfully set finish flag.
Preinstallation succeeded. -
真正安装
-
执行安装命令
./gs_install -X /opt/soft/openGauss/cluster_config_template.xml
-
输入密码:最少8个字符,需包含大小写字母、数字、字符
该密码为后期连接openGauss时使用的密码勿忘
-
安装成功:最后输出如下,很可能会因为内存不够而报错,一定要注意看报错日志。
Successfully started cluster.
Successfully installed application.
end deploy. -
接下来进行openGauss简单应用测试
-
-
- 创建用户组和用户
openGauss使用测试
- openGauss服务启/停
#分布式 gs_om -t start #启动服务 gs-om -t restart #重启服务 #集中式 gs_om -t stop #关闭服务 gs-om -t restart #启动服务
- 查看openGauss数据库状态
gs_om -t status --detail
- 检查性能
gs_checkperf gs_checkperf -i pmk -U omm gs_checkperf -i pmk -U omm --detail
- 查看数据库端口号
cat /opt/huawei/install/data/dn/postgresql.conf | grep port
- 以omm远程连接上centos7.6,登录openGauss
gsql -d postgres -p 15400 #在cluster_config_templae.conf中设置的连接端口
- 应用
- 创建/删除 用户
create user 用户名 with passwd "密码"; #新用户 drop user 用户名 cascade; #删除前需确保该用户下没有任何资源
- 创建/删除 数据库
create database 库名 owner 用户名; #创建数据库,不指定owner默认omm drop database 库名; #删除数据库
- 创建/删除 表
create table stu(id int,name varchar(10),gender varchar(10),age int); drop table stu;
- 修改表结构-(新增一列)
alter table stu add hobby varchar(20);
- 查询数据
select * from stu;
- 新增数据
insert into stu values(1001,'ethan','male',24,'play basketball');
- 更新数据
update stu set hobby='play football' where id=1001;
- 删除数据
delete from stu where id=1001;
- 创建/删除 用户
openGauss常用命令
-
退出数据库
Postgres=# \q
-
进入数据库可以直接用help获取帮助信息
版权信息Postgres=# \copyright
-
查看数据库对象
查看帮助信息postgres=# \?
-
切换数据库
postgres=# \c dbname
-
列举数据库:
使用\l元命令查看数据库系统的数据库列表。postgres=# \l
-
使用如下命令通过系统表pg_database查询数据库列表。
postgres=# SELECT datname FROM pg_database;
-
列举表:
postgres=# \dt
-
列举所有表、视图和索引:
postgres=# \d+
-
使用gsql的\d+命令查询表的属性
postgres=# \d+ tablename
-
查看表结构:
postgres=# \d tablename
-
列举schema:
postgres=# \dn
-
查看索引:
postgres=# \di
-
查询表空间:
使用gsql程序的元命令查询表空间。postgres=# \db
-
检查pg_tablespace系统表。如下命令可查到系统和用户定义的全部表空间。
postgres=# SELECT spcname FROM pg_tablespace;
-
查看数据库用户列表:
postgres=# SELECT * FROM pg_user;
-
要查看用户属性:
postgres=# SELECT * FROM pg_authid; postgres=# SELECT * FROM PG_ROLES;
-
其他操作
切换数据库:postgres=# \c dbname
-
切换用户:
postgres=# \c – username
接下来我会在虚拟机测试进行openEuler操作系统进行安装部署openGauss,不知道结果会怎么样,完成再写一篇文共享给大家,有兴趣的铁汁可以期待一波,不一定能成功!!
相关文章:

openGauss本地Centos7.6单机安装和简单应用
openGauss本地Centos7.6单机安装和简单应用 openGauss基础环境配置openGauss安装openGauss使用测试openGauss常用命令 openGauss基础环境配置 在VMware Workstation中安装一台 centos7.6 内存:8GB,亲测4GB安装不够 磁盘:测试50GB-100GB够用 …...

LeetCode--1 两数之和
文章目录 1 题目描述2 解题思路2.1 暴力破解2.2 使用 Map 1 题目描述 给定一个整数数组 nums 和一个整数目标值 target, 请你在该数组中找出 和为目标值 target 的那 两个 整数, 并返回它们的数组下标 你可以假设每种输入只会对应一个答案。但是, 数组中同一个元素在答案里不…...

Hafnium安全分区管理器和示例参考软件栈
安全之安全(security)博客目录导读 目录 一、安全分区管理器 1、术语 2、对旧平台的支持 二、示例参考软件栈 一、安全分区管理器 安全分区管理器的三种实现在TF-A代码库并存: 1.基于FF-A规范的S-EL2 SPMC(SPM Core),使能安全…...

Python解读市场趋势:LSTM 和 GRU 在预测 Google 股价方面的探索
我将向您展示如何使用 LSTM 和 GRU 预测股票价格。 导入库 import pandas as pd import numpy as np import seaborn as sns import matplotlib.pyplot as plt import matplotlib.dates as mdates import plotly.express as pxfrom keras.preprocessing.sequence import Timese…...

vue源码分析(二)——vue的入口发生了什么
文章目录 前言(1)vue 项目构建的时候,通过package.json文件看到构建入口(2) 构建入口页面:导入同级模块config的getAllbuilds方法(3) 通过传入参数中的builds对象使用map获取&#x…...

系统架构师论文总结【持续更新】
系统架构师考试是对计算机从业人员,以考代评的重要考试,近几年一直在参加考试,屡战屡败,后又屡败屡战,记录总结论文相关的知识点,方便考前查看。 一、2010年论文 1)论软件的静态演化和动态演化…...

STM32-LCD中英文显示及应用
目录 字符编码 ASCII码(8位) 中文编码(16位) GB2312标准 GBK编码 GB18030标准(32位) Big5编码 Unicode字符集和编码 UTF-32(32位) UTF-16(16位/32位࿰…...

13.4web自动化测试(Selenium3+Java)
一.定义 用来做web自动化测试的框架. 二.特点 1.支持各种浏览器. 2.支持各种平台(操作系统). 3.支持各种编程语言. 4.有丰富的api. 三.工作原理 四.搭环境 1.对照Chrome浏览器版本号,下载ChromeDriver,配置环境变量,我直接把.exe文件放在了jdk安装路径的bin文件夹下了(j…...

P1966 [NOIP2013 提高组] 火柴排队
洛谷的一道原题,方法有很多,树状数组以及排序,对刚学树状数组的人来说用排序会比较好理解。 本题最重要的结论就是,要保证两个数组中相同位置的差最小,但是不一定两个数组中数值相同,所以只需要保证相同位…...

Linux文件I/O
下面的内容需要了解系统调用,可看下面的链接: 系统调用来龙去脉-CSDN博客 1.底层文件IO和标准IO 这里指的是操作系统提供的IO服务,不同于ANSI建立的标准IO。 底层IO和标准IO各自所使用的函数: 区别: 1.底层文件IO不…...

卡巴斯基2009杀毒软件
下载地址:https://user.qzone.qq.com/512526231/main https://user.qzone.qq.com/3503787372/main...

Docker 容器服务的注册、发现及Docker安全
目录 Docker容器服务的注册和发现 1、什么是服务注册与发现? 2、什么是consul consul的部署 1、环境准备 2、部署consul服务器 1)建立 Consul 服务 2)设置代理,在后台启动 consul 服务端 3)查看集群信息 4&a…...

UE5 Blueprint发送http请求
一、下载插件HttpBlueprint、Json Blueprint Utilities两个插件是互相依赖的,启用,重启项目 目前两个是Beta的状态,如果你使用的平台支持就可以使用,我们的项目因为需要取Header的值,所有没法使用这两个插件࿰…...

SpringBoot 分布式验证码登录方案
前言 为了防止验证系统被暴力破解,很多系统都增加了验证码效验,比较常见的就是图片二维码,业内比较安全的是短信验证码,当然还有一些拼图验证码,加入人工智能的二维码等等,我们今天的主题就是前后端分离的…...

vite.config.js文件配置代理设置VITE_APP_BASE_API
.env.development文件 ENV development # base api VITE_APP_BASE_API /dev-api.env.production文件 ENV production # base api VITE_APP_BASE_API /apidefine: {process.env: {VITE_APP_BASE_API: https://xxx.com}},server: {hmr: true, // vue3 vite配置热更新不用手动…...

优橙内推海南专场——5G网络优化(中高级)工程师
可加入就业QQ群:801549240 联系老师内推简历投递邮箱:hrictyc.com 内推公司1:南京华苏科技有限公司 内推公司2:南京欣网通信股份有限公司 内推公司3:广东华讯工程有限公司 南京华苏科技有限公司 南京华苏科技有…...

5083: 【递推】走方格
题目描述 在平面上有一些二维的点阵。 这些点的编号就像二维数组的编号一样,从上到下依次为第 1 至第 n 行,从左到右依次为第 1 至第 m 列,每一个点可以用行号和列号来表示。 现在有个人站在第 1 行第 1 列,要走到第 n 行第 m …...

多种方式计算当天与另一天的间隔天数 Java实现
这里不会记录纯原生写法,因为现在基本都是被工具类封装好的,所以会记录好用的工具类来简化开发,当然自己可以研究写一个年月日各自做减法的纯原生工具类。 踩坑处(System.currentTimeMillis) 这里指的是使用System.currentTimeMillis()方法。…...

Python基础学习004——for循环与字符串
""" 1.for循环基本语法 2.做指定次数的循环,range()函数 3.continue的使用 4.字符串的定义与使用:转义符,原生字符 5.获取字符串长度,字符串索引的使用 6.切片,翻转字符串 7.字符串的查找find 8.字符串的替换replace 9.字符串的拆分split 10.字符串的链接join &…...

【发展史】鼠标的发展史
最早可以追溯到1952年,皇家加拿大海军将5针保龄球放在能够侦测球面转动的硬件上,这个硬件再将信息转化成光标在屏幕上移动,用作军事计算机输入。这是我们能够追溯到的最早的依靠手部运动进行光标移动的输入设备。但当时这个东西不叫鼠标&…...

ThinkPHP6 多应用模式之验证码模块的配置与验证
Thinphp6 官方的验证码模块的配置是有问题的,或者说需要手工配置。 在配置期间,我尝试了多种(包括按照官方文档、路由等)方法都验证失败。 存在2个问题: 1、多应用模式下,验证码的配置文件依然读取全局的…...

数据结构笔记——树和图(王道408)(持续更新)
文章目录 传送门前言树(重点)树的数据结构定义性质 二叉树的数据结构定义性质储存结构 二叉树算法先中后序遍历层次展开法递归模拟法 层次遍历遍历序列逆向构造二叉树 线索二叉树(难点)定义线索化的本质 二叉树线索化线索二叉树中…...

Redis 主从
目录 编辑一、构建主从架构 1、集群结构 2、准备实例和配置 (1)创建目录 (2)修改原始配置 (3)拷贝配置文件到每个实例目录 (4)修改每个实例的端口,工作目录 &a…...

嵌入式学习笔记(63)位操作实战
(1)给定一个整型数a,设置a的bit3,保证其他位不变。 a | (1<<3) (2)给定一个整形数a,设置a的bit3~bit7,保持其他位不变 a | (0x1f<<3) (3)给定一个整型数a,清除a的bit15,保证其他位不变。 a …...

8位机adc采样正弦波频率
相位/峰峰值高电平? 检 测峰值电压? y 开始计数 检测零电压 y 计数器值16ms/20ms 斩波开x关x延时 tt 频率 1/2t 电路 增减常数 aT...

react中使用监听
在 React 中,您可以使用 addEventListener 函数来监听事件。以下是一个示例: import React, { useRef, useEffect } from react;function App() {const inputRef useRef(null);useEffect(() > {inputRef.current.addEventListener(input, handleInp…...

Java基础总结
0、Java语言 1.java和c 2.编译和解释 3.jre和jdk,jvm 简单来说,编译型语言是指编译器针对特定的操作系统将源代码一次性翻译成可被该平台执行的机器码;解释型语言是指解释器对源程序逐行解释成特定平台的机器码并立即执行。 Java 语言既具…...

基于SSM的OA办公系统
末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…...

【第25例】IPD体系进阶:需求分析团队RAT
目录 简介 RAT CSDN学院相关内容推荐 作者简介 简介 RAT是英文Requirement Analysis Team英文首字母的简称,也即需求分析团队,每个产品线都需要设定对应的一个RAT的组织。 RAT主要负责产品领域内需求的分析活动,是RMT的支撑团队: 这个时候可以将RAT细化为PL-RAT团队,…...

5G与无人驾驶:引领未来交通的新潮流
5G与无人驾驶:引领未来交通的新潮流 随着5G技术的快速发展和普及,无人驾驶技术也日益受到人们的关注。5G技术为无人驾驶提供了更高效、更准确、更及时的通信方式,从而改变了我们对交通出行的认知和使用方式。本文将探讨5G技术在无人驾驶领域的…...