Centos服务器Open Gauss 部署

news/2024/6/15 14:56:03/文章来源:https://blog.csdn.net/GISuuser/article/details/137154118

近期很多的项目由于信创要求使用一些国产的数据库,比如OpenGauss。OpenGuass是华为高斯DB的开源版,内核还是PostgreSQL,商业版是收费的。这里记录一下是如何安装部署 的。

官方中文文档
官方下载地址

部署要求

  1. 操作系统要求
  • ARM:
    • openEuler 20.3LTS
    • 麒麟V10
    • Asianux 7.5
  • X86:
    • openEuler 20.3LTS
    • CentOS 7.6
    • Asianux 7.6

我使用的使用是Centos7.4

操作系统环境依赖安装

  1. 一般以来
yum repolist
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel bzip2  
  1. python3环境部署

OpenGauss的部署依赖于Python3的环境,我使用的Python3.6.10。下载地址

mkdir -p /opt/python3   	#(将python-3.6.10.tgz放入)
python -V				#查看当前python版本,centos默认为2.7版本
cd /opt/python3
tar xf Python-3.6.10.tgz					#解压软件包
cd  Python-3.6.10								#进入文件目录
./configure --prefix=/usr/local/python3 --enable-shared CFLAGS=-fPIC						#若报错就是没有安装gcc,yum install gcc(yum源配置里我加了gcc了)
make 
make install								#(进行python3的安装)
cd /usr/local				
ll						#(该目录下出现python3即安装完毕)
unlink /usr/bin/pythonln -s /usr/local/python3/bin/python3.6 /usr/bin/python   #(创建软连接)
ln -s /usr/local/python3/bin/python3.6 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3.6 /usr/bin/pip
cp /usr/local/python3/lib/libpython3.6m.so.1.0 /usr/lib64
python -V  		#(此时python版本变为3.6)
yum repolist
#(更改了默认python版本的话,yum命令就用不了,因为yum文件是按照老版本的python2.7编译执行的,所以要将yum文件里面的第一行注释给定义到老版本的python2
vi /usr/bin/yum
#修改第一行python为python2
#此时yum恢复
yum repolist

创建文件夹

注意需要创建两个文件夹,一个用于放置部署文件,另一个空置

mkdir/home/openGauss   # 用于自动化部署到此位置
mkdir /home/open       # 后续安装文件解压到此目录,xml上传至此目录

创建用户组

创建OpenGauss默认的用户组,并给与这两个文件夹的权限

sudo groupadd dbgrp
sudo chgrp  -R  dbgrp  /home/openGauss
sudo chgrp  -R  dbgrp  /home/open

下载安装包

官方下载地址

注意只支持x86_64架构Centos系统

下载安装包

解压安装包

tar xvf /home/openGauss/openGauss-5.0.1-CentOS-64bit-all.tar.gz -C /home/open
cd /home/open
tar xvf openGauss-5.0.1-CentOS-64bit-om.tar.gz # 解压脚本工具

配置xml文件

配置之前,需要将服务器名称改了与xml中的一致。

hostnamectl set-hostname opengauss1

高斯数据库的部署,主要依赖与xml配置文件。我是参考官网文档配置的单实例,多实例的官网也有说明,注意替换自己的ip与服务器名称。

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

将xml保存为clusterconfig.xml,并上传至/home/open

执行预安装

cd /home/open/script/
./gs_preinstall -U omm -G dbgrp -X /home/open/clusterconfig.xml

注意安装过程中,会提示创建omm用户,让设置用户的密码。

一般都是会报python、或者文件权限的错误
预安装

正式安装

预安装成功后,最好再给一遍权限

chmod -R 775 /home/open
chmod -R 777 /home/openGauss

切换到omm用户,正式安装,安装过程中,会让设置一个长度不低于8位的密码

su omm
cd /home/open/script
./gs_install -X ../clusterconfig.xml
gs_om -t start # 启动数据库
gs_om -t status # 查看数据库状态
gs_om -t status  --detail # 查看详细数据库状态
gs_om -t stop # 关闭数据库

安装成功

最后查看安装文件,发现里面很多还都是postgresql的原文件

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

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

docker-compse安装es(包括IK分词器扩展)、kibana、libreoffice

Kibana是一个开源的分析与可视化平台&#xff0c;设计出来用于和Elasticsearch一起使用的。你可以用kibana搜索、查看存放在Elasticsearch中的数据。 Kibana与Elasticsearch的交互方式是各种不同的图表、表格、地图等&#xff0c;直观的展示数据&#xff0c;从而达到高级的数据…

电梯四种事故检测YOLOV8

电梯四种事故检测&#xff0c;采用YOLOV8训练得到PT模型&#xff0c;然后转换成ONNX&#xff0c;OPENCV调用&#xff0c;支持C/PYTHON/ANDORID开发 电梯四种事故检测YOLOV8

一个问题串联 Java 的几个基础知识

前言 关于 “” 和 equals() 的区别这个问题&#xff0c;我之前一直搞的很乱&#xff0c;虽然面试的时候一直没有被问到&#xff0c;但是我感觉这种是属于最基础的知识&#xff0c;如果不懂好像不是很好。后来我发现通过这个问题&#xff0c;可以串联起很多的知识点&#xff0…

Flutter仿Boss-2.启动页、引导页

简述 在移动应用开发中&#xff0c;启动页和引导页是用户初次接触应用时的重要组成部分&#xff0c;能够提升用户体验和导航用户了解应用功能。本文将介绍如何使用Flutter实现启动页和引导页&#xff0c;并展示相关代码实现。 启动页 启动页是应用的第一个页面&#xff0c;首…

Mac电脑Jmeter集成到Jenkins,压测多个接口并生成测试报告

Jenkins支持的JDK版本17、21&#xff0c;通过java -version查看当前JDK版本&#xff0c;确认是否匹配 打开网址https://www.jenkins.io/download 点击下载&#xff0c;选择mac版本 commend空格打开终端&#xff0c;输入安装命令brew install jenkins 安装完成后输入brew servi…

Github 2024-04-01 开源项目月报 Top20

根据Github Trendings的统计,本月(2024-04-01统计)共有20个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目9TypeScript项目2非开发语言项目2Jupyter Notebook项目2HTML项目1CSS项目1C#项目1Shell项目1Lua项目1JavaScript项目1C项目1Java项目…

【二叉树】Leetcode 437. 路径总和 III【中等】

路径总和 III 给定一个二叉树的根节点 root &#xff0c;和一个整数 targetSum &#xff0c;求该二叉树里节点值之和等于 targetSum 的 路径 的数目。 路径 不需要从根节点开始&#xff0c;也不需要在叶子节点结束&#xff0c;但是路径方向必须是向下的&#xff08;只能从父节…

Qt加载.css/.qss文件设置控件的QSS样式(支持程序运行时修改且立即生效类似换肤效果)

初学Qt时&#xff0c;你是如何设置QWidget&#xff0c;QPushButton等原生基础控件的样式的&#xff1f;是不是主要是两种方法&#xff1f; 1.直接在可视化的.ui文件中直接添加qss语句。 2.在代码中通过setStyleSheet(QString qss)来设置qss语句。 上述两种方法&#xff0c;在程…

深度思考:雪花算法snowflake分布式id生成原理详解

雪花算法snowflake是一种优秀的分布式ID生成方案&#xff0c;其优点突出&#xff1a;它能生成全局唯一且递增的ID&#xff0c;确保了数据的一致性和准确性&#xff1b;同时&#xff0c;该算法灵活性强&#xff0c;可自定义各部分bit位&#xff0c;满足不同业务场景的需求&#…

ROS2从入门到精通1-2:详解ROS2服务通信机制与自定义服务

目录 0 专栏介绍1 服务通信模型2 服务模型实现(C)3 服务模型实现(Python)4 自定义服务5 话题、服务通信的异同 0 专栏介绍 本专栏旨在通过对ROS2的系统学习&#xff0c;掌握ROS2底层基本分布式原理&#xff0c;并具有机器人建模和应用ROS2进行实际项目的开发和调试的工程能力。…

Linux基础命令篇:Linux文件权限与访问控制基础

Linux文件权限与访问控制基础 下面将详细介绍Linux文件权限管理&#xff0c;帮助有需要的ikun理解和应用这些概念。从基本的权限概念开始&#xff0c;然后介绍如何查看和修改权限。最后&#xff0c;我们整点高级的东西&#xff0c;如访问控制列表&#xff08;ACL&#xff09;。…

[Leetcode笔记] 动态规划相关

前言 写题目写到了一些和动态规划相关的内容&#xff0c;所以在这里记录一下 LCR 089 题解思路 总的来说&#xff0c;就是用一个数组去存储当前的最优解&#xff0c;然后从0开始一路向上顺推过去&#xff0c;求得最后一位的最优解。 class Solution { public:int rob(vect…

207基于matlab Simulink的无人机模型模拟飞机飞行过程

基于matlab Simulink的无人机模型模拟飞机飞行过程&#xff0c;具有GUI界面&#xff0c;可自行设置四旋翼飞行器结构参数&#xff0c;设有模拟仿真飞机动画。程序运行步骤&#xff1a;1&#xff0c;将Copy_4_of_quadrotorsflyerGU.mdlI文件拖入matlab命令窗口&#xff1b;2&…

算法——矩阵,被围绕的区域

. - 力扣&#xff08;LeetCode&#xff09; 最开始也是考虑使用dfs&#xff0c;对于矩阵中的每个点&#xff0c;如果能到达边界的O&#xff0c;则跳过继续dfs。否则如果上下左右四个方向都无法到达边界的O&#xff0c;则说明当前的无法到达&#xff0c;在一个set中记录他的行数…

1.5编写一个程序,输入梯形的上底,下底和高,输出梯形的面积。

1、编写一个程序,输入梯形的上底,下底和高,输出梯形的面积。 package com.kangning.web.controller.system;import java.util.Scanner;/*** 编写一个程序,输入梯形的上底,下底和高,输出梯形的面积。*/ public class CountArea {public static void main(String[] args) …

【操作系统】想要更好的学习计算机,操作系统的知识必不可少!!!

操作系统的概念 导言一、日常生活中的操作系统二、计算机系统层次结构三、操作系统的定义3.1 控制和管理计算机资源3.2 组织、调度计算机的工作与资源的分配3.3 给用户和其他软件提供方便接口与环境3.4 总结 四、操作系统的目标和功能4.1 作为管理者4.1.1 处理机管理4.1.2 存储…

【A-006】基于SSH的新闻发布系统(含论文)

【A-006】基于SSH的新闻发布系统&#xff08;含论文&#xff09; 开发环境&#xff1a; Jdk7(8)Tomcat7(8)MySQLIntelliJ IDEA(Eclipse) 数据库&#xff1a; MySQL 技术&#xff1a; SpringStruts2HiberanteJSPJquery 适用于&#xff1a; 课程设计&#xff0c;毕业设计&…

算法系列--递归,回溯,剪枝的综合应用(1)

&#x1f495;"对相爱的人来说&#xff0c;对方的心意&#xff0c;才是最好的房子。"&#x1f495; 作者&#xff1a;Lvzi 文章主要内容&#xff1a;算法系列–递归,回溯,剪枝的综合应用(1) 大家好,今天为大家带来的是算法系列--递归,回溯,剪枝的综合应用(1) 1.全排…

Higress 基于自定义插件访问 Redis

作者&#xff1a;钰诚 简介 基于 wasm 机制&#xff0c;Higress 提供了优秀的可扩展性&#xff0c;用户可以基于 Go/C/Rust 编写 wasm 插件&#xff0c;自定义请求处理逻辑&#xff0c;满足用户的个性化需求&#xff0c;目前插件已经支持 redis 调用&#xff0c;使得用户能够…

蓝桥杯-岛屿个数

solution 数1的块数题&#xff0c;加了内岛不计入的小限制&#xff0c;以及输入数据间没有空格&#xff0c;不是矩阵形式的整数输入。 判断是否是子岛屿&#xff1a;如果该岛屿有边缘部分或者可以通过外海走到边缘部分说明不是子岛屿 #include<iostream> #include<…