Hive 1.2.1 本地模式安装笔记

环境

  • ubuntu kylin 14.04
  • Hadoop 2.7.2
  • Hive 1.2.1

mysql 安装与配置

  1. 安装 mysql
sudo apt-get install cmake libncurses5-dev
sudo apt-get install mysql-server mysql-client -y

中途会弹出窗口要求用户输入 mysql 的 root 密码

  1. 创建数据库
    mysql -u root -p # 登录 mysql
    CREATE DATABASE hivedb; # 创建数据库 hivedb

  2. 创建用户并授权
    在 mysql 界面输入以下命令:

CREATE USER 'hive'@'localhost' IDENTIFIED BY 'hive';
grant all privileges on *.* to 'hive'@'localhost' identified by 'hive';
flush privileges;

Hive 安装与配置

  1. 安装 Hive 1.2.1
    wget http://mirror.bit.edu.cn/apache/hive/stable/apache-hive-1.2.1-bin.tar.gz
    tar -zxvf apache-hive-1.2.1-bin.tar.gz # 解压
    mv apache-hive-1.2.1-bin hive-1.2.1 # 重命名

  2. 配置环境变量
    我的hive安装目录在/home/hadoop/hive-1.2.1
    vim ~/.bashrc # 编辑此配置文件
    export HIVE_HOME=/home/hadoop/hive-1.2.1 # 在文件开头添加此行
    在 PATH 和 CLASSPATH 中添加 hive,最终~/.bashrc环境变量如图:

    《Hive 1.2.1 本地模式安装笔记》 ~/.bashrc设置截图

  3. 修改 hive-env.sh
    cd hive-1.2.1/conf # 切换到配置文件目录
    cp hive-env.sh.template hive-env.sh # 复制模板
    vim hive-env.sh # 编辑配置文件
    HADOOP_HOME=/home/hadoop/hadoop-2.7.2 # 设置 HADOOP_HOME路径

  4. 修改 hive-site.xml
    cp hive-default.xml.template hive-site.xml # 复制模板
    vim hive-site.xml # 编辑配置文件

<property>
       <name>javax.jdo.option.ConnectionURL</name>
       <value>jdbc:mysql://localhost:3306/hivedb?createDatabaseIfNotExit=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>hive</value>
      <description>Username to use against metastore database</description>
  </property>
<property>
      <name>javax.jdo.option.ConnectionPassword</name>
      <value>hive</value>
      <description>password to use against metastore database</description>
  </property>
<property>
      <name>hive.exec.local.scratchdir</name>
      <value>/home/hadoop/hive-1.2.1/tmp</value>
      <description>Local scratch space for Hive jobs</description>
  </property>
<property>
      <name>hive.downloaded.resources.dir</name>
      <value>/home/hadoop/hive-1.2.1/tmp/resources</value>
      <description>Temporary local directory for added resources in the remote file system.</description>
  </property>

这个配置文件内容比较多,建议用查找搜索配置选项

  1. 创建临时目录
    cd ~/hive-1.2.1
    mkdir -p tmp/resources

其他设置

  • 添加 mysql JDBC驱动
    wget http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.39.tar.gz
    tar -zxvf mysql-connector-java-5.1.39.tar.gz # 解压
    cp mysql-connector-java-5.1.39/mysql-connector-java-5.1.39-bin.jar ~/hive-1.2.1/lib

  • 替换 jline.jar 包
    cp ~/hive-1.2.1/lib/jline-2.12.jar ~/hadoop-2.7.2/share/hadoop/yarn/

  • 关闭防火墙
    service iptables stop
    chkconfig iptables off

关闭 selinux
修改/etc/selinux/conf
SELINUX=disabled
重启生效

运行测试

  • 启动 Hadoop
    ./hadoop-2.7.2/sbin/start-all.sh

  • 启动 Hive
    hive # 输入命令测试

    《Hive 1.2.1 本地模式安装笔记》 hive测试

总结

安装过程遇到了如下错误:

《Hive 1.2.1 本地模式安装笔记》 错误截图1

《Hive 1.2.1 本地模式安装笔记》 错误截图2

  • 错误分析
  1. 没有安装 mysql JDBC 驱动
  1. mysql 没有添加 hive 用户
  2. 没有启动 Hadoop

以上错误属于粗心,大家不要学我 orz

    原文作者:Mr_Curiosity
    原文地址: https://www.jianshu.com/p/34d89d6aa3d4
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞