##############
# HIVE 3.1.2 #
##############
# 1、解压并重命名
cd /opt/download
tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /opt/software/
mv /opt/software/apache-hive-3.1.2-bin/ /opt/software/hive312
cd /opt/software/hive312
# 2、环境变量并激活
vim /etc/profile.d/my.sh
#-----------------------------------------
# hive
export HIVE_HOME=/opt/software/hive312
export PATH=$PATH:$HIVE_HOME/bin
#-----------------------------------------
source /etc/profile
# 3、配置文件
mv conf/hive-default.xml.template conf/hive-default.xml
vim conf/hive-site.xml
#-----------------------------------------
<configuration>
<!--hdfs仓库路径-->
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/hive312/warehouse</value>
</property>
<!--metastore(元)数据库类型-->
<property>
<name>hive.metastore.db.type</name>
<value>mysql</value>
<description>Expects one of [derby, oracle, mysql, mssql, postgres].</description>
</property>
<!--连接mysql字符串-->
<property>
<name>javax.jdo.option.ConnectionURL</name>mysql
<value>jdbc:mysql://192.168.43.150:3306/hive312?createDatabaseIfNotExist=true</value>
</property>
<!--mysql连接驱动-->
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<!--mysql连接账号-->
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<!--mysql本地连接密码-->
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>ok</value>
</property>
<!--关闭schema验证-->
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
<!--提示当前库名-->
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
<description>Whether to include the current database in the Hive prompt.</description>
</property>
<!--查询输出显示列名-->
<property>
<name>hive.cli.print.header</name>
<value>true</value>
<description>Whether to print the names of the columns in query output.</description>
</property>
</configuration>
#-----------------------------------------
${hive.exec.scratchdir} =DEFAULT=> /tmp/hive
is still used for other temporary files, such as job plans
#4、拷贝mysql驱动
cp /opt/download/mysql-connector-java-5.1.47.jar lib/
#5、更新guava包和hadoop一致
ls lib/|grep guava
# guava-19.0.jar
rm -f lib/guava-19.0.jar
find /opt/software/hadoop-3.1.3/ -name guava*
#/opt/software/hadoop313/share/hadoop/common/lib/guava-27.0-jre.jar
#/opt/software/hadoop313/share/hadoop/hdfs/lib/guava-27.0-jre.jar
cp /opt/software/hadoop-3.1.3/share/hadoop/hdfs/lib/guava-27.0-jre.jar lib/
#6、mysql授权
grant all on *.* to root@master01 identified by 'ok';
flush privileges;
#7、初始化
schematool -dbType mysql -initSchema
#8、hive启动模式 在/opt/software/hive312/bin目录下启动
[root@single01 ~]# cd /opt/software/hive312/bin
#首先启动元数据服务
nohup hive --service metastore 1>/dev/null 2>&1 &
#1、方法一 hive客户端
hive
#2、方法二 基于metastore和hiveserver2的beeline
hdfs dfsadmin -safemode get =>on|off 查看
#启动hiveserver2服务
nohup hive --service hiveserver2 1>/dev/null 2>&1 &
beeline -u jdbc:hive2://localhost:10000
beeline -u jdbc:hive2://master01:10000
beeline -u jdbc:hive2://192.168.43.150:10000
关闭hive
[root@single01 bin]# jps
#-------------------------------
89809 SecondaryNameNode
90096 ResourceManager
91363 RunJar
89575 DataNode
122998 Jps
4396 JobHistoryServer
90255 NodeManager
91551 RunJar
89390 NameNode
#---------------------------------
[root@single01 bin]# kill -9 91363
[root@single01 bin]# kill -9 91551
#----------------------------------------------------------------------------------
vim /opt/software/hadoop313/etc/hadoop/core-site.xml
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
#-------------------------------------------------------------------