openGauss源码编译安装

本文介绍在centos-8上从源码构建安装oepnGauss-3.0.0的过程。

1、安装依赖包

    yum install -y libaio-devel ncurses-devel pam-devel libffi-devel python3-devel libtool libtool-ltdl openssl-devel bison flex glibc-devel patch readline-devel lsb_release

2、添加openGauss用户

    useradd openGauss

3、下载三方依赖包

    # 切换到openGauss用户
	su - openGauss
	# 下载三方依赖包
	wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/3.0.0/openGauss-third_party_binarylibs.tar.gz
	# 解压三方包并重命名
	tar -zxf openGauss-third_party_binarylibs.tar.gz 
	mv openGauss-third_party_binarylibs binarylibs

4、下载openGauss-server源码

	# 下载openGauss-server源码
	git clone https://gitee.com/opengauss/openGauss-third_party.git
	# 切换到3.0.0版本的tag
	git checkout 3.0.0

5、在~/.bashrc中添加如下环境变量

export CODE_BASE=/home/openGauss/openGauss-server
export BINARYLIBS=/home/openGauss/binarylibs
export GAUSSHOME=/home/openGauss/install/
export GCC_PATH=$BINARYLIBS/buildtools/centos7.6_x86_64/gcc7.3/
export CC=$GCC_PATH/gcc/bin/gcc
export CXX=$GCC_PATH/gcc/bin/g++
export LD_LIBRARY_PATH=$GAUSSHOME/lib:$GCC_PATH/gcc/lib64:$GCC_PATH/isl/lib:$GCC_PATH/mpc/lib/:$GCC_PATH/mpfr/lib/:$GCC_PATH/gmp/lib/:$LD_LIBRARY_PATH
export PATH=$GAUSSHOME/bin:$GCC_PATH/gcc/bin:$PATH

6、执行命令source ~/.bashrc使环境变量生效
7、进入openGauss-server目录,执行以下命令,进行配置编译

./configure --gcc-version=7.3.0 CC=g++ CFLAGS='-O0' --prefix=$GAUSSHOME --3rd=$BINARYLIBS --enable-debug --enable-cassert --enable-thread-safety --with-readline --without-zlib
make -sj 8

8、执行make install安装openGauss数据库
9、创建数据目录,并初始化数据库

mkdir /home/openGauss/install/data
gs_initdb -D /home/openGauss/install/data/datanode1  --nodename=datanode1

10、初始化成功以后,显示如下
openGauss源码编译安装_第1张图片

11、现在就可以启动数据库了,启动停止命令如下

gs_ctl start -D /home/openGauss/install/data/datanode1 -Z single_node -l /home/openGauss/gauss.log
gs_ctl stop -D /home/openGauss/install/data/datanode1

问题记录

1、如果编译时报错,报python文件找不到,则可以安装python2,并将python2软连接为python

yum install python2
ln -s /usr/bin/python2 /usr/bin/python

2、gs_initdb初始化时报错如下,需要安装libnsl依赖
在这里插入图片描述

yum install -y libnsl

3、gs_initdb报错如下,需要修改配置文件/etc/profile,在最后增加的LANG设置,设置为locale -a能查到的值即可,比如en_US.utf8。
在这里插入图片描述

export LANG=en_US.utf8

你可能感兴趣的:(centos,数据库开发)