sheel脚本 sentos7环境 hive自动安装

/opt/download/hiveinstall 中有2个准备好的文件 运行前配置好参数

hive-site.xml

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
	<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
	<configuration>
	  <property>
		<name>javax.jdo.option.ConnectionURL</name>
		<value>jdbc:mysql://localhost:3306/hive312?createDatabaseIfNotExist=true</value>
		<description>connect to mysql for hive metastore</description>
	  </property>
	  <property>
		<name>javax.jdo.option.ConnectionDriverName</name>
		<value>com.mysql.jdbc.Driver</value>
		<description>driver for mysql</description>
	  </property>
	  <property>
		<name>javax.jdo.option.ConnectionUserName</name>
		<value>root</value>
		<description>username to mysql</description>
	  </property>
	  <property>
		<name>javax.jdo.option.ConnectionPassword</name>
		<value>12345678</value>
		<description>password to mysql</description>
	  </property>
		<!--关闭权限认证-->
		  <property>
				<name>hive.server2.authentication</name>
				<value>NONE</value>
		  </property>
		  <!--root用户访问放过-->
		  <property>
				<name>hive.server2.thrift.client.user</name>
				<value>root</value>
		  </property>
		  <property>
				<name>hive.server2.thrift.client.password</name>
				<value>root</value>
		  </property>
	</configuration>

到windows系统 的maven文件路径中

maven/repostory/mysql/mysql_connector-java-5.1.1.47 找到此文件
拖拽到 vmware centos环境的 /opt/download/hiveinstall目录 中

./hivefourthinstall.sh

#!/bin/bash

#注意事项 
	#1/opt/download中有apache-hive-3.1.2-bin.tar.gz
	#2/opt/download/hiveinstall 中有2个准备好的文件
							#1/opt/download/hiveinstall/mysql-connector-java-5.1.47.jar
							#2/opt/download/hiveinstall/hive-site.xml
source /etc/profile
ENV_DIR='/etc/profile.d/'
SOFTWARE_DIR='/opt/software/'
DOWNLOAD_DIR='/opt/download/'
HIVE_ENV='#hive;export-HIVE_HOME=/opt/software/hive312;export-PATH=$HIVE_HOME/bin:$PATH'

#删除myenv.sh 文件中的配置内容
function removeIfExists(){
        if [ $# -lt 2 ]
        then
                echo '参数给的太少'
        fi
        sed -rin "/^#.*?$1/,+$2d" $ENV_DIR'myenv.sh'
}   

function addEnv(){
	DIR="$1"
        DIR=${DIR//;/ }
        for item in $DIR
        do
                sed -in '$a'$item $ENV_DIR'myenv.sh'
        done
        sed -in 's/-/ /g' $ENV_DIR'myenv.sh'
        echo 'myenv.sh添加hadoop配置文件信息'
}

RST=`ls $SOFTWARE_DIR|grep hive`
if [[ -z $RST ]]
then
        echo '原机未安装hive'
        tar -zxf $DOWNLOAD_DIR'apache-hive-3.1.2-bin.tar.gz' -C $SOFTWARE_DIR
				mv /opt/software/apache-hive* /opt/software/hive312
        echo '安装完毕'
else
        rm -rf $SOFTWARE_DIR'apache-hive*'
        echo '原机安装过hive'
        tar -zxf $DOWNLOAD_DIR'apache-hive-3.1.2-bin.tar.gz' -C $SOFTWARE_DIR
				mv /opt/software/apache-hive* /opt/software/hive312
        echo '删除原hive 重新安装成功'
fi


RST=`ls $ENV_DIR|grep myenv.sh`
if [[ -z $RST ]]
then
	touch $ENV_DIR'myenv.sh'
	echo '原myenv.sh配置文件不存在,新建完成'
else
	echo '原机存在myenv.sh配置文件'
	removeIfExists hive 2
	echo '原机myenv.sh中的hadoop配置文件信息已删除'
fi

addEnv $HIVE_ENV

mv /opt/software/hive312/conf/hive-default.xml.template hive-default.xml
echo '修改hive-default.xml.template文件成hive-default.xml'
cp /opt/download/hiveinstall/hive-site.xml /opt/software/hive312/conf/

cp /opt/download/hiveinstall/mysql-connector-java-5.1.47.jar /opt/software/hive312/lib
echo 'lib中添加文件mysql-connector-java-5.1.47.jar'
rm -rf /opt/software/hive312/lib/guava-19.0.j*
echo '删除hive312/lib/guava-19.0-jre.jar'
cp /opt/software/hadoop313/share/hadoop/common/lib/guava-27.0-jre.jar /opt/software/hive312/lib
echo '复制/hadoop312/share/hadoop/common/lib/guava-27.0
-jre.jar 到/opt/software/hive312/lib'
source /etc/profile
start-all.sh
cd /opt/software/hive312/bin
./schematool -dbType mysql -initSchema

echo '安装完毕可以使用命令挂起服务 也可以使用一键启动脚本开启服务 如下操作
nodup hive --service metastore>/dev/null 2>&1 &
nodup hive --service hiveserver2>/dev/null 2>&1 &
 jps -ml
查看连接端口 没有显示 隔10秒再次测试直到出现红色的10000

netstat -anp|grep 10000
连接hive
beeline -u jdbc:hive2://192.168.75.202:10000
'
cd ~
[root@singlefangliang installsheel]# vim hivefourthinstall.sh 
[root@singlefangliang installsheel]# vim hivefourthinstall.sh 
[root@singlefangliang installsheel]# cat hivefourthinstall.sh 
#!/bin/bash

#注意事项 
	#1/opt/download中有apache-hive-3.1.2-bin.tar.gz
	#2/opt/download中有2个准备好的文件
							#1/opt/download/mysql-connector-java-5.1.47.jar
							#2/opt/download/hive-site.xml
source /etc/profile
ENV_DIR='/etc/profile.d/'
SOFTWARE_DIR='/opt/software/'
DOWNLOAD_DIR='/opt/download/'
HIVE_ENV='#hive;export-HIVE_HOME=/opt/software/hive312;export-PATH=$HIVE_HOME/bin:$PATH'

#删除myenv.sh 文件中的配置内容
function removeIfExists(){
        if [ $# -lt 2 ]
        then
                echo '参数给的太少'
        fi
        sed -rin "/^#.*?$1/,+$2d" $ENV_DIR'myenv.sh'
}   

function addEnv(){
	DIR="$1"
        DIR=${DIR//;/ }
        for item in $DIR
        do
                sed -in '$a'$item $ENV_DIR'myenv.sh'
        done
        sed -in 's/-/ /g' $ENV_DIR'myenv.sh'
        echo 'myenv.sh添加hadoop配置文件信息'
}

RST=`ls $SOFTWARE_DIR|grep hive`
if [[ -z $RST ]]
then
        echo '原机未安装hive'
        tar -zxf $DOWNLOAD_DIR'apache-hive-3.1.2-bin.tar.gz' -C $SOFTWARE_DIR
				mv /opt/software/apache-hive* /opt/software/hive312
        echo '安装完毕'
else
        rm -rf $SOFTWARE_DIR'apache-hive*'
        echo '原机安装过hive'
        tar -zxf $DOWNLOAD_DIR'apache-hive-3.1.2-bin.tar.gz' -C $SOFTWARE_DIR
				mv /opt/software/apache-hive* /opt/software/hive312
        echo '删除原hive 重新安装成功'
fi


RST=`ls $ENV_DIR|grep myenv.sh`
if [[ -z $RST ]]
then
	touch $ENV_DIR'myenv.sh'
	echo '原myenv.sh配置文件不存在,新建完成'
else
	echo '原机存在myenv.sh配置文件'
	removeIfExists hive 2
	echo '原机myenv.sh中的hadoop配置文件信息已删除'
fi

addEnv $HIVE_ENV

mv /opt/software/hive312/conf/hive-default.xml.template hive-default.xml
echo '修改hive-default.xml.template文件成hive-default.xml'
cp /opt/download/hiveinstall/hive-site.xml /opt/software/hive312/conf/

cp /opt/download/hiveinstall/mysql-connector-java-5.1.47.jar /opt/software/hive312/lib
echo 'lib中添加文件mysql-connector-java-5.1.47.jar'
rm -rf /opt/software/hive312/lib/guava-19.0.j*
echo '删除hive312/lib/guava-19.0-jre.jar'
cp /opt/software/hadoop313/share/hadoop/common/lib/guava-27.0-jre.jar /opt/software/hive312/lib
echo '复制/hadoop312/share/hadoop/common/lib/guava-27.0
-jre.jar 到/opt/software/hive312/lib'
source /etc/profile
start-all.sh
cd /opt/software/hive312/bin
./schematool -dbType mysql -initSchema

echo '安装完毕可以使用命令挂起服务 也可以使用一键启动脚本开启服务 如下操作
nodup hive --service metastore>/dev/null 2>&1 &
nodup hive --service hiveserver2>/dev/null 2>&1 &
 jps -ml
查看连接端口 没有显示 隔10秒再次测试直到出现红色的10000

netstat -anp|grep 10000
连接hive
beeline -u jdbc:hive2://192.168.75.202:10000
'
cd ~/installsheel

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值