/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