Hive 3.0.0 的安装(图文教程)

Hive 3.0.0 的安装(图文教程)

开门见山

点进来的大佬们肯定知道这东西干嘛用的,废话不多说,干就完了!

安装包准备

  1. 点击下载Hive 3.0

  2. 将下载的hive包上传至服务器。

    1. 解压安装包tar -zxvf apache-hive-3.0.0-bin.tar.gz 在这里插入图片描述

    2. 为了好操作,将解压后的文件夹更改名字 mv apache-hive-3.0.0-bin hive
      在这里插入图片描述

    3. /etc/profile文件中写入hive的配置参数,命令如下:

     vim /etc/profile
     ## 在最下面添加,然后保存并退出,退出之后用source /etc/profile 使刚才修改的系统参数变量生效
     export HIVE_HOME=/opt/hive
     export PATH=$PATH:$HIVE_HOME/bin
    
    1. 配置hive的conf
    cd /hive/conf
    cp hive-env.sh.template hive-env.sh
    vim hive-env.sh
    

    如图所示,在下图的红箭头位置填入HIVE_CONF_DIRHADOOP_HOME的地址:

    在这里插入图片描述
    我的HADOOP_HOME=/opt/hadoop,HIVE_CONF_DIR=/opt/hive/conf ,然后记得取消前面的#号就好了。
    各位大佬需要在自己的相关环境配置下,对应修改就好了。

  3. 创建hive的元数据库
    hive的默认用来存储元数据的数据库叫做derby,这里我们使用的是mysql
    在hive的安装目录下的conf文件夹下添加一个hive-site.xml文件(没有的话就创建一下)
    vim hive-site.xml

<configuration>
    <property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>jdbc:mysql://192.168.1.100:3306/hive?createDatabaseIfNotExist=true</value>
        <description>JDBC connect string for a JDBC metastore</description>
    </property>

    <property>
        <name>javax.jdo.option.ConnectionDriverName</name>
        <value>com.mysql.jdbc.Driver</value>
        <description>Driver class name for a JDBC metastore</description>
    </property>

    <property>
        <name>javax.jdo.option.ConnectionUserName</name>
        <value>root</value>
        <description>username to use against metastore database</description>
    </property>

    <property>
        <name>javax.jdo.option.ConnectionPassword</name>
        <value>12345678</value>
        <description>password to use against metastore database</description>
    </property>
   <property>
    <name>hive.metastore.uris</name>
    <value>thrift://192.168.1.101:9083</value>
    <description>Thrift URI for the remote metastore. Used by metastore client to connect to remote metastore.</description>
  </property>
 </configuration>

mysql的驱动包加入到hivelib文件夹中mysql connector 8.0的下载地址
将这个mysql的connector文件放入hive/lib目录当中,接着进入hive/bin目录当中执行命令./schematool -dbType mysql -initSchema
在这里插入图片描述
成功之后会显示
在这里插入图片描述
这个时候在hive/bin目录下输入./hive ,使用命令show databases进行测试。若无异常,则hive安装完毕。

在本人安装hive 3.0.0的过程当中出现了如下的错误:

which: no hbase in (/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/opt/java/bin:/opt/hadoop/bin:/opt/hadoop/sbin:/opt/spark/bin:/opt/zookeeper/bin:/opt/kafka/bin:/opt/hive/bin:/root/bin)
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/opt/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/opt/hive/lib/log4j-slf4j-impl-2.10.0.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
2021-05-23 00:17:56,367 INFO  [main] conf.HiveConf (HiveConf.java:findConfigFile(187)) - Found configuration file file:/opt/hive/conf/hive-site.xml
Hive Session ID = b78838ec-ee96-4ad5-b7b0-20c64bb3ff12
2021-05-23 00:17:58,299 INFO  [main] SessionState (SessionState.java:printInfo(1214)) - Hive Session ID = b78838ec-ee96-4ad5-b7b0-20c64bb3ff12

Logging initialized using configuration in jar:file:/opt/hive/lib/hive-common-3.0.0.jar!/hive-log4j2.properties Async: true
2021-05-23 00:17:58,333 INFO  [main] SessionState (SessionState.java:printInfo(1214)) - 
Logging initialized using configuration in jar:file:/opt/hive/lib/hive-common-3.0.0.jar!/hive-log4j2.properties Async: true
2021-05-23 00:17:59,498 INFO  [main] session.SessionState (SessionState.java:createPath(783)) - Created HDFS directory: /tmp/hive/root/b78838ec-ee96-4ad5-b7b0-20c64bb3ff12
2021-05-23 00:17:59,523 INFO  [main] session.SessionState (SessionState.java:createPath(783)) - Created local directory: /tmp/root/b78838ec-ee96-4ad5-b7b0-20c64bb3ff12
2021-05-23 00:17:59,527 INFO  [main] session.SessionState (SessionState.java:createPath(783)) - Created HDFS directory: /tmp/hive/root/b78838ec-ee96-4ad5-b7b0-20c64bb3ff12/_tmp_space.db
2021-05-23 00:17:59,529 INFO  [main] conf.HiveConf (HiveConf.java:getLogIdVar(5011)) - Using the default value passed in for log id: b78838ec-ee96-4ad5-b7b0-20c64bb3ff12
2021-05-23 00:17:59,529 INFO  [main] session.SessionState (SessionState.java:updateThreadName(435)) - Updating thread name to b78838ec-ee96-4ad5-b7b0-20c64bb3ff12 main
2021-05-23 00:18:00,171 INFO  [b78838ec-ee96-4ad5-b7b0-20c64bb3ff12 main] metastore.HiveMetaStoreClient (HiveMetaStoreClient.java:open(440)) - Trying to connect to metastore with URI thrift://spark2:9083
2021-05-23 00:18:00,190 WARN  [b78838ec-ee96-4ad5-b7b0-20c64bb3ff12 main] metastore.HiveMetaStoreClient (HiveMetaStoreClient.java:open(525)) - Failed to connect to the MetaStore Server...
2021-05-23 00:18:00,190 INFO  [b78838ec-ee96-4ad5-b7b0-20c64bb3ff12 main] metastore.HiveMetaStoreClient (HiveMetaStoreClient.java:open(556)) - Waiting 1 seconds before next connection attempt.
2021-05-23 00:18:01,191 INFO  [b78838ec-ee96-4ad5-b7b0-20c64bb3ff12 main] metastore.HiveMetaStoreClient (HiveMetaStoreClient.java:open(440)) - Trying to connect to metastore with URI thrift://spark2:9083
2021-05-23 00:18:01,192 WARN  [b78838ec-ee96-4ad5-b7b0-20c64bb3ff12 main] metastore.HiveMetaStoreClient (HiveMetaStoreClient.java:open(525)) - Failed to connect to the MetaStore Server...
2021-05-23 00:18:01,193 INFO  [b78838ec-ee96-4ad5-b7b0-20c64bb3ff12 main] metastore.HiveMetaStoreClient (HiveMetaStoreClient.java:open(556)) - Waiting 1 seconds before next connection attempt.
2021-05-23 00:18:02,194 INFO  [b78838ec-ee96-4ad5-b7b0-20c64bb3ff12 main] metastore.HiveMetaStoreClient (HiveMetaStoreClient.java:open(440)) - Trying to connect to metastore with URI thrift://spark2:9083
2021-05-23 00:18:02,194 WARN  [b78838ec-ee96-4ad5-b7b0-20c64bb3ff12 main] metastore.HiveMetaStoreClient (HiveMetaStoreClient.java:open(525)) - Failed to connect to the MetaStore Server...
2021-05-23 00:18:02,195 INFO  [b78838ec-ee96-4ad5-b7b0-20c64bb3ff12 main] metastore.HiveMetaStoreClient (HiveMetaStoreClient.java:open(556)) - Waiting 1 seconds before next connection attempt.
2021-05-23 00:18:03,200 WARN  [b78838ec-ee96-4ad5-b7b0-20c64bb3ff12 main] metadata.Hive (Hive.java:registerAllFunctionsOnce(282)) - Failed to register all functions.
java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
	at org.apache.hadoop.hive.metastore.utils.JavaUtils.newInstance(JavaUtils.java:86)
	at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.<init>(RetryingMetaStoreClient.java:95)
	at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:148)
	at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:119)
	at org.apache.hadoop.hive.ql.metadata.Hive.createMetaStoreClient(Hive.java:4181)
	at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:4249)
	at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:4229)
	at org.apache.hadoop.hive.ql.metadata.Hive.getAllFunctions(Hive.java:4485)
	at org.apache.hadoop.hive.ql.metadata.Hive.reloadFunctions(Hive.java:296)
	at org.apache.hadoop.hive.ql.metadata.Hive.registerAllFunctionsOnce(Hive.java:279)
	at org.apache.hadoop.hive.ql.metadata.Hive.<init>(Hive.java:440)
	at org.apache.hadoop.hive.ql.metadata.Hive.create(Hive.java:380)
	at org.apache.hadoop.hive.ql.metadata.Hive.getInternal(Hive.java:360)
	at org.apache.hadoop.hive.ql.metadata.Hive.get(Hive.java:336)
	at org.apache.hadoop.hive.ql.metadata.HiveMaterializedViewsRegistry.init(HiveMaterializedViewsRegistry.java:131)
	at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:755)
	at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:683)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.apache.hadoop.util.RunJar.run(RunJar.java:239)
	at org.apache.hadoop.util.RunJar.main(RunJar.java:153)
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at org.apache.hadoop.hive.metastore.utils.JavaUtils.newInstance(JavaUtils.java:84)
	... 22 more
Caused by: MetaException(message:Could not connect to meta store using any of the URIs provided. Most recent failure: org.apache.thrift.transport.TTransportException: java.net.ConnectException: Connection refused (Connection refused)
	at org.apache.thrift.transport.TSocket.open(TSocket.java:226)
	at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.open(HiveMetaStoreClient.java:515)
	at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:223)
	at org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.<init>(SessionHiveMetaStoreClient.java:94)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at org.apache.hadoop.hive.metastore.utils.JavaUtils.newInstance(JavaUtils.java:84)
	at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.<init>(RetryingMetaStoreClient.java:95)
	at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:148)
	at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.getProxy(RetryingMetaStoreClient.java:119)
	at org.apache.hadoop.hive.ql.metadata.Hive.createMetaStoreClient(Hive.java:4181)
	at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:4249)
	at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:4229)
	at org.apache.hadoop.hive.ql.metadata.Hive.getAllFunctions(Hive.java:4485)
	at org.apache.hadoop.hive.ql.metadata.Hive.reloadFunctions(Hive.java:296)
	at org.apache.hadoop.hive.ql.metadata.Hive.registerAllFunctionsOnce(Hive.java:279)
	at org.apache.hadoop.hive.ql.metadata.Hive.<init>(Hive.java:440)
	at org.apache.hadoop.hive.ql.metadata.Hive.create(Hive.java:380)
	at org.apache.hadoop.hive.ql.metadata.Hive.getInternal(Hive.java:360)
	at org.apache.hadoop.hive.ql.metadata.Hive.get(Hive.java:336)
	at org.apache.hadoop.hive.ql.metadata.HiveMaterializedViewsRegistry.init(HiveMaterializedViewsRegistry.java:131)
	at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:755)
	at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:683)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.apache.hadoop.util.RunJar.run(RunJar.java:239)
	at org.apache.hadoop.util.RunJar.main(RunJar.java:153)
Caused by: java.net.ConnectException: Connection refused (Connection refused)
	at java.net.PlainSocketImpl.socketConnect(Native Method)
	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
	at java.net.Socket.connect(Socket.java:589)
	at org.apache.thrift.transport.TSocket.open(TSocket.java:221)
	... 30 more
)
	at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.open(HiveMetaStoreClient.java:564)
	at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:223)
	at org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.<init>(SessionHiveMetaStoreClient.java:94)
	... 27 more

解决方案

先启动 hive metastore

hive --service metastore &

然后在进入hive的bin目录下再使用./hive启动hive

总结

本次hive 3.0.0的安装就到此结束,如果看到本篇安装文档的大佬有什么疑问的话请在下方留言,谢谢大佬们!
在这里插入图片描述

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值