一、环境准备
1.Hadoop与MySQL自行安装好
2.环境变量配置
二、安装过程
mv hive-env.sh.template hive-env.sh
vim hive-env.sh
export JAVA_HOME=/opt/module/jdk
export HADOOP_HOME=/opt/module/hadoop
export HIVE_HOME=/opt/module/hive
export HIVE_CONF_DIR=/opt/module/hive/conf
export HIVE_AUX_JARS_PATH=/opt/module/hive/lib
vim hive-site.xml
注意点:
MySQL connector 版本
hdfs路径文件夹提前创建
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://node01:3306/hive?createDatabaseIfNotExist=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8</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.exec.scratchdir</name>
<value>/user/hive/tmp</value>
</property>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property>
<property>
<name>hive.querylog.location</name>
<value>/user/hive/log</value>
</property>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
<property>
<name>hive.metastore.uris</name>
<value>thrift://node01:9083</value>
</property>
<property>
<name>hive.server2.thrift.port</name>
<value>10000</value>
</property>
<property>
<name>hive.server2.thrift.bind.host</name>
<value>node01</value>
</property>
<property>
<name>hive.metastore.event.db.notification.api.auth</name>
<value>false</value>
</property>
<property>
<name>hive.cli.print.header</name>
<value>true</value>
</property>
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
</property>
</configuration>
初始化元数据
schematool -dbType mysql -initSchema
MySQL connector 安装包放到 hive lib 目录下
启动元数据服务
前台启动
hive --service metastore
后台启动
hive --service metastore &
启动hiveserver2
前台启动
hive --service hiveserver2
后台启动
hive --service hiveserver2 &
beline连接
beeline
!connect jdbc:hive2://hiveserver2所在节点主机名:10000
三、踩坑记录
1、docker mysql 版本问题
[root@docker ~]# docker exec -it lnmp_mysql bash
root@63259bee4195:/# mysql -uroot -p
mysql> alter user 'root'@'%' identified with mysql_native_password by 'root';
[root@docker ~]# mysql -h 192.168.100.101 -P 3306 -uroot -p
2、hive guava版本与 hadoop不一致,将 较高版本的保留就行
hive guava 位置 lib目录下
hadoop guava 位置 hadoop/share/hadoop/common/lib