安装前启动start-all.sh
1.解压
[root@xtr141 install]# tar -zxf apache-hive-3.1.2-bin.tar.gz -C ../soft/
[root@xtr141 soft]# mv /opt/soft/apache-hive-3.1.2-bin/ /opt/soft/hive312
2.新建xml
[root@xtr141 soft]# touch /opt/soft/hive312/conf/hive-site.xml
[root@xtr141 soft]# vim /opt/soft/hive312/conf/hive-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/hive312/warehouse</value>
</property>
<property>
<name>hive.metastore.db.type</name>
<value>mysql</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://192.168.153.149:3306/xtr141?createDatabaseIfNotExist=true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.cj.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>root</value>
</property>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
</property>
<property>
<name>hive.cli.print.header</name>
<value>true</value>
</property>
</configuration>
3.把mysql的驱动包放进install(xftp)
D:\server\apache-maven-3.6.3\Repository\com\mysql\mysql-connector-j\8.0.33
[root@xtr141 conf]# cp /opt/install/mysql-connector-j-8.0.33.jar /opt/soft/hive312/lib/
4.删除hive的guave
[root@xtr141 lib]# rm -f /opt/soft/hive312/lib/guava-19.0.jar
5.把hadoop的guave拷贝到hive
[root@xtr141 hadoop313]# cp /opt/soft/hadoop313/share/hadoop/common/lib/guava-27.0-jre.jar /opt/soft/hive312/lib/
6.配置环境变量
#HIVE
export HIVE_HOME=/opt/soft/hadoop313
export PATH=$HIVE_HOME/bin:$PATH
[root@xtr141 hive312]# source /etc/profile
7.启动
[root@xtr141 hive312]# schematool -dbType mysql -initSchema
8.后台启动元数据服务
[root@xtr141 hive312]# nohup hive --service metastore &
9.后台启动hiveserver2服务
[root@xtr141 hive312]# nohup hive --service hiveserver2 &
10.启动
[root@xtr141 hive312]# beeline -ujdbc:hive2://192.168.153.141:10000
11.退出hadoop安全模式
hdfs dfsadmin -safemode leave
12.修改hdfs文件权限
hdfs dfs -chmod -R 777 /
14.自动安装hive+zk
if [ "$hive" = true ];then
echo 'install HIVE'
echo 'HIVE 3.1.2'
tar -zxf /opt/install/apache-hive-3.1.2-bin.tar.gz -C ../soft/
mv /opt/soft/apache-hive-3.1.2-bin/ /opt/soft/hive312
touch /opt/soft/hive312/conf/hive-site.xml
hivedir=/opt/soft/hive312/conf/hive-site.xml
echo '<?xml version="1.0" encoding="UTF-8"?>' >> $hivedir
echo '<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>' >> $hivedir
echo '<configuration>' >> $hivedir
echo '<property><name>hive.metastore.warehouse.dir</name><value>/hive312/warehouse</value></property>' >> $hivedir
echo '<property><name>hive.metastore.db.type</name><value>mysql</value></property>' >> $hivedir
echo "<property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://192.168.153.149:3306/$hostname?createDatabaseIfNotExist=true</value></property>" >> $hivedir
echo '<property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.cj.jdbc.Driver</value></property>' >> $hivedir
echo '<property><name>javax.jdo.option.ConnectionUserName</name><value>root</value></property>' >> $hivedir
echo '<property><name>javax.jdo.option.ConnectionPassword</name><value>root</value></property>' >> $hivedir
echo '<property><name>hive.metastore.schema.verification</name><value>false</value></property>' >> $hivedir
echo '<property><name>hive.cli.print.current.db</name><value>true</value></property>' >> $hivedir
echo '<property><name>hive.cli.print.header</name><value>true</value></property>' >> $hivedir
echo '</configuration>' >> $hivedir
cp /opt/install/mysql-connector-j-8.0.33.jar /opt/soft/hive312/lib/
rm -f /opt/soft/hive312/lib/guava-19.0.jar
cp /opt/soft/hadoop313/share/hadoop/common/lib/guava-27.0-jre.jar /opt/soft/hive312/lib/
echo "#hive" >> /etc/profile
echo 'export HIVE_HOME=/opt/soft/hive312' >> /etc/profile
echo 'export PATH=$HIVE_HOME/bin:$PATH' >> /etc/profile
source /etc/profile
schematool -dbType mysql -initSchema
fi
if [ "$zk" = true ];then
echo 'set up zookeeper'
tar -zxf /opt/install/apache-zookeeper-3.6.3-bin.tar.gz -C /opt/soft/
mv /opt/soft/apache-zookeeper-3.6.3-bin/ /opt/soft/zk363
cp /opt/soft/zk363/conf/zoo_sample.cfg /opt/soft/zk363/conf/zoo.cfg
mkdir -p /opt/soft/zk363/data
echo 0 > /opt/soft/zk363/data/myid
sed -i '12c\dataDir=/opt/soft/zk363/data' /opt/soft/zk363/conf/zoo.cfg
echo "server.0=$hostname:2287:3387" >> /opt/soft/zk363/conf/zoo.cfg
echo '#ZK' >> /etc/profile
echo 'export ZOOKEEPER_HOME=/opt/soft/zk363' >> /etc/profile
echo 'export PATH=$ZOOKEEPER_HOME/bin:$PATH' >> /etc/profile
fi