linux中安装hive的步骤以及关于jline报错的问题

一、安装环境:

     1.CentOS-6.7系统;

    2. hive安装在hadoop环境中,事先需要安装hadoop,本机安装的版本:hadoop-2.6.5-centos-6.7.tar;详见之前的微博《hadoop的单节点伪分布安装步骤 

    3.hive中的元数据需要存储在mysql数据库中,事先要安装好mysql;详见之前的微博《linux RPM方法安装mysql 

    4.hive版本:apache-hive-1.2.1-bin.tar.gz,从官网都可以下载软件:http://mirror.bit.edu.cn/apache/hive/

二、安装步骤:

        这是一种不是利用hadoop自带的mysql的安装hive的方式:属于一种外置的mysql安装方式

1、 上传安装包 apache-hive-1.2.1-bin.tar.gz
2、 解压安装包 tar -zxvf apache-hive-1.2.1-bin.tar.gz
3、 修改配置文件
    输入命令进入配置文件目录:cd   /home/hadoop/apps/hadoop-2.6.5/etc/hadoop(这是我的文件目录,根据自己的安装目录)

    在目录下输入: vi hive-site.xml

   添加配置信息,对于的配置下有想要的功能description解释:

 <configuration>
  <property>
      <name>javax.jdo.option.ConnectionURL</name>
      <value>jdbc:mysql://hadoop02:3306/hivedb?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>root</value>
       <description>password to use against metastore database</description>
  </property>
 </configuration>

5、 一定要记得加入 mysql 的驱动包:mysql-connector-java-5.1.40-bin.jar(用于hive与mysql的链接):链接https://pan.baidu.com/s/1jIaNQmi

         该 jar 包上传到系统,将其放置在hive 的根路径下的 lib 目录。

6、 安装完成,配置环境变量,验证 Hive

      输入命令:vi .bashrc

      直接 添加:

       export HIVE_HOME=/home/hadoop/apps/hive-1.2.1
       export PATH=$HIVE_HOME/bin:$PATH

7、 启动 Hive cli

     直接输入命令,前提配好环境变量:hive

     如果没有配环境变量,进入/home/hadoop/apps/hive-1.2.1/bin,这个时候要输入命令:./hive(记住这种方式hive的前面一点要有“./”)

注意:这个时候我的hadoop版本和hive的版本,启动的时候会报错,如下图,忽略第一行的关于spark的问题:


原因是hadoop中的jline版本太低,需要换成hive中的jline版本,下面我们将hive中的jline拷贝到hadoop中。

hadoop的jline的目录:/home/hadoop/apps/hadoop-2.6.5/share/hadoop/yarn/lib


hive的jline的目录:/home/hadoop/apps/hive-1.2.1/lib


现在我们将hadoop中的jline换成hive中的jline,

在hive的jline目录下,

使用命令:scp -r  jline-2.12.jar hadoop@hadoop02:/home/hadoop/apps/hadoop-2.6.5/share/hadoop/yarn/lib

这条命令的作用就是将hive目录中的jline拷贝到hadoop的jline目录中,在此启动hive,并启动mysql服务,命令如下图所示。


启动成功的页面如下图所示,红色中是因为.bashrc中配置了spark,忽略:


8、 退出 Hive
      hive> quit;
      或者
     hive> exit;

9.安装完成,可以尽情使用体验hive了!!!!

猜你喜欢

转载自blog.csdn.net/qq_15508167/article/details/78670217