OpenEuler22.03 LTS自动安装单机版OpenGauss 5.0.2脚本

1,将脚本和opengauss软件包放到同一个目录下(不要放到/root下面,建议放到/opt/soft下面目录权限要有755),不需要进行解压缩,安装包下载地址如下:

软件包 | openGauss

2.规划好gs的数据目录,提前创建好目录,例如放到/data/guassdb/data下面,你只需要提前创建好/data就行了

3.将操作系统镜像ISO挂载到/os下面

下面就是执行安装脚本就行了:

#!/usr/bin/bash

export LANG=en_US

##check current dir
CURRENT_DIR=$(pwd)

if [ CDIR=${CURRENT_DIR:0:5} == '/root' ]
then
	echo "Error: current dir can\'t be /root!"
	exit
fi

#check db package

DB_PKG=`ls $CURRENT_DIR/openGauss-*-64bit-all.tar.gz |wc -l`
if [ $DB_PKG -lt 1 ]
then
	echo "Error: Current Dir can\'t find package: openGauss-xx-64bit-all.tar.gz"
	echo "You need put this scripts to openGauss package directory!!!"
	exit
fi

###check iso mount point

if  [ -d /os/Packages ]
then
	if  [ `du -sm /os |awk '{print $1}'` -lt 3000 ]
	then
		echo "Error:You Need mount ISO to /os"
		exit
	fi
else
	echo "Error:You Need mount ISO to /os"
	exit
fi
clear

echo "--------------------------------------------------------------------------------"
echo "---------------                                                 ----------------"
echo "---------------      Welcome to Single openGauss install        ----------------"
echo "---------------                             --by Brent 20240601 ----------------"
echo "--------------------------------------------------------------------------------"

echo "Please Enter HOSTNAME:"
read HOSTNAME
echo "Please Enter Local IP :"
read IP
echo "Please Enter OpenGauss Setup Dir[/opt/huawei]:"
read SETUP_DIR
echo "Please Enter OpenGauss Data Dir[/data/opengauss/data]:"
read DATA_DIR
echo "Please Enter OpenGauss ClusterName:"
read CLUSTER_NAME
echo "Please Enter OpenGauss Listen Port[15400]:"
read PORT
echo "Please Enter OpenGauss CharSet[UTF8]:"
read CHARSET


if [ -z $SETUP_DIR ]
then
	SETUP_DIR='/opt/huawei'
fi

if [ -z $CHARSET ]
then
	CHARSET=UTF-8
fi

if [ -z $DATA_DIR ]
then
	DATA_DIR=/data/opengauss/data
fi

if [ -z $PORT ]
then
	PORT=15400
fi


KERNEL=`uname -r`
KERNEL_S=${KERNEL:0:1}


echo "################################################################################################"
echo "########################################System Env Config#######################################"
echo "################################################################################################"

echo "    #######################################Modify HOSTNAME######################################"
case "$KERNEL_S" in
2)
	sed -i 's/HOSTNAME=/#HOSTNAME=/' /etc/sysconfig/network
	echo "HOSTNAME=$HOSTNAME" >>/etc/sysconfig/network
	echo "##############################Disable Firewalld#############################"
	service  iptables stop
  chkconfig iptables off
	;;
*)
	hostnamectl --static set-hostname $HOSTNAME
echo "    ######################################Disable Firewalld#####################################"
	systemctl disable firewalld
	systemctl stop firewalld
	timedatectl set-timezone "Asia/Shanghai"
	
	systemctl stop avahi-dnsconfd
	systemctl stop avahi-daemon
	systemctl disable avahi-dnsconfd
	systemctl disable avahi-daemon
	systemctl stop NetworkManager
	systemctl disable NetworkManager
	#关闭时间同步
	systemctl stop chronyd
	systemctl disable chronyd
	mv /etc/chrony.conf /etc/chrony.conf.bak
	echo "NOZEROCONF=yes" >>/etc/sysconfig/network
    ;;
esac

echo "$IP $HOSTNAME" >> /etc/hosts



echo "    #####################################Disable selinux########################################"
sed -i 's/=enforcing/=disabled/g' /etc/selinux/config
setenforce 0


echo "    ####################################Config Yum Source#######################################"
mkdir -p /etc/yum.repos.d/bak
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak/

echo "
[OpenEuler]
name = Enterprise Linux OpenEuler DVD
baseurl=file:///os
gpgcheck=0
enabled=1
"  >/etc/yum.repos.d/OpenEuler.repo



echo "    #####################################Install Packages#######################################"
for i in tar libaio-devel compat-libstdc++  ksh  compat-libcap1  elfutils-libelf-devel   unixODBC-devel  numactl-devel  gcc  gcc-c++  xorg-x11-xauth xterm make sysstat readline readline-devel openssl openssl-devel glibc libaio unzip libXtst java smartmontools openssh-clients compat-libstdc++  device-mapper-multipath compat-libcap1 dstat net-tools psmisc 
do
yum install -y $i  >/dev/null
done

for i in bc gcc gcc-c++ binutils make gdb cmake glibc ksh xterm elfutils-libelf elfutils-libelf-devel fontconfig-devel glibc-devel  libaio libaio-devel libXrender libXrender-devel libX11 libXau sysstat  libXi libXtst libgcc librdmacm-devel libstdc++ libstdc++-devel libxcb  net-tools nfs-utils compat-libcap1 compat-libstdc++ smartmontools targetcli  python python-configshell python-rtslib python-six unixODBC unixODBC-devel unzip wget device-mapper device-mapper-multipath lrzsz
do
yum install -y $i  >/dev/null
done

echo "################################################################################################"
echo "#######################################openGauss preinstall#####################################"
echo "################################################################################################"
echo "    ################################Generate cluster_config.xml#################################"

>$CURRENT_DIR/cluster_config.xml

echo '<?xml version="1.0" encoding="UTF-8"?>                                                       ' >>$CURRENT_DIR/cluster_config.xml
echo ' <ROOT>                                                                                       ' >>$CURRENT_DIR/cluster_config.xml
echo '     <CLUSTER>                                                                                ' >>$CURRENT_DIR/cluster_config.xml
echo '         <PARAM name="clusterName" value="'$CLUSTER_NAME'" />                                        ' >>$CURRENT_DIR/cluster_config.xml
echo '         <PARAM name="nodeNames" value="'$HOSTNAME'" />                                              ' >>$CURRENT_DIR/cluster_config.xml
echo '         <PARAM name="gaussdbAppPath" value="'$SETUP_DIR'/install/app" />                      ' >>$CURRENT_DIR/cluster_config.xml
echo '         <PARAM name="gaussdbLogPath" value="'$SETUP_DIR'/log/omm" />                          ' >>$CURRENT_DIR/cluster_config.xml
echo '         <PARAM name="tmpMppdbPath" value="'$SETUP_DIR'/tmp" />                                ' >>$CURRENT_DIR/cluster_config.xml
echo '         <PARAM name="gaussdbToolPath" value="'$SETUP_DIR'/install/om" />                      ' >>$CURRENT_DIR/cluster_config.xml
echo '         <PARAM name="corePath" value="'$SETUP_DIR'/corefile" />                               ' >>$CURRENT_DIR/cluster_config.xml
echo '         <PARAM name="backIp1s" value="'$IP'"/>                                      ' >>$CURRENT_DIR/cluster_config.xml
echo '     </CLUSTER>                                                                               ' >>$CURRENT_DIR/cluster_config.xml
echo '     <DEVICELIST>                                                                             ' >>$CURRENT_DIR/cluster_config.xml
echo '         <DEVICE sn="'$HOSTNAME'">                                                                   ' >>$CURRENT_DIR/cluster_config.xml
echo '             <PARAM name="name" value="'$HOSTNAME'"/>                                                ' >>$CURRENT_DIR/cluster_config.xml
echo '             <PARAM name="azName" value="AZ1"/>                                               ' >>$CURRENT_DIR/cluster_config.xml
echo '             <PARAM name="azPriority" value="1"/>                                             ' >>$CURRENT_DIR/cluster_config.xml
echo '             <PARAM name="backIp1" value="'$IP'"/>                                   ' >>$CURRENT_DIR/cluster_config.xml
echo '             <PARAM name="sshIp1" value="'$IP'"/>                                    ' >>$CURRENT_DIR/cluster_config.xml
echo ' 	    <!--dbnode-->                                                                           ' >>$CURRENT_DIR/cluster_config.xml
echo ' 	    <PARAM name="dataNum" value="1"/>                                                       ' >>$CURRENT_DIR/cluster_config.xml
echo ' 	    <PARAM name="dataPortBase" value="'$PORT'"/>                                              ' >>$CURRENT_DIR/cluster_config.xml
echo ' 		<PARAM name="dataListenIp1" value="'$IP'"/>                                      ' >>$CURRENT_DIR/cluster_config.xml
echo ' 	    <PARAM name="dataNode1" value="'$DATA_DIR'"/>                               ' >>$CURRENT_DIR/cluster_config.xml
echo '             <PARAM name="dataNode1_syncNum" value="0"/>                                      ' >>$CURRENT_DIR/cluster_config.xml
echo '         </DEVICE>                                                                            ' >>$CURRENT_DIR/cluster_config.xml
echo '     </DEVICELIST>                                                                            ' >>$CURRENT_DIR/cluster_config.xml
echo '</ROOT>                                                                                      ' >>$CURRENT_DIR/cluster_config.xml




tar -zxf openGauss-*-openEuler-64bit-all.tar.gz
tar -zxf openGauss-*-openEuler-64bit-om.tar.gz

cd script

##preinstall

./gs_preinstall -U omm -G dbgrp -X $CURRENT_DIR/cluster_config.xml 




##install
echo "################################################################################################"
echo "#########################################openGauss install######################################"
echo "################################################################################################"
su - omm -c "gs_install -X $CURRENT_DIR/cluster_config.xml --gsinit-parameter=\"--locale=en_US.${CHARSET}\""


##status

su - omm -c "gs_om -t status"

echo ""
echo ""
echo "You Can See preinstall log at : $SETUP_DIR/log/omm/omm/om/gs_preinstall-xxxxx.log"
echo "You Can See install log at : $SETUP_DIR/log/omm/omm/om/gs_install-xxxxx.log or $SETUP_DIR/log/omm/omm/om/gs_local-xxxx.log"



安装截图如下:

中间需要输入操作系统omm密码和数据库omm密码两次

安装完成后,可以切换到omm用户登录到数据库:

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
您可以通过访问以下链接来下载openEuler 22.03 LTS操作系统:https://repo.openeuler.org/openEuler-22.03-LTS-SP1/OS/x86_64/ 这个链接将带您进入openEuler的官方下载页面,您可以选择适合您系统的版本进行下载。 另外,根据引用中的信息,openEuler 22.03-LTS是基于5.10内核构建的,这将为您提供更好的操作系统性能和稳定性。希望这个信息对您有所帮助!<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [在OpenEuler 22.03 LTS-SP1上下载yum源并安装tar命令](https://blog.csdn.net/m0_63428773/article/details/130177326)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [openEuler22.03LTS操作系统用pip安装saltstack3003.1所需的文件包](https://download.csdn.net/download/forestqq/87339063)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [国产操作系统安装openEuler-22.03-LTS](https://blog.csdn.net/WeiHao0240/article/details/126024754)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值