Hive安装与配置(靠谱亲测)

   Hive是hadoop生态环境的组成之一。通过Hive,可以使得直接用SQL操作HDFS。最大的好处就是让熟悉SQL,但是不了解JAVA的数据分析师使用。其机制就是一个将SQL语言转化为MapReduce的映射器。可作为在Hadoop上架设数据仓库的工具。但是最大的缺点是运行比较慢。

  Hive的安装模式有两种,一种为Debug模式,将元数据保存在derby内存数据库中。这样就一次只能允许一个会话链接。另一种为Mysq安装模式。可以利用本地或者远程的Mysql数据库来保存元数据。

  本次实验搭建本地mysql安装模式进行安装。

实验环境:

  CentOs6.5,Hive(1.x),Mysql Server version:5.1.73

一、Mysql安装配置

  1.首先还是和其他教程一样,先看看本机是否已经安装了mysql。如果安了的话先删除

  rmp -qa | grep mysql   //查看是否安装有mysql;

  yum remove mysql  //卸载mysql

  或者rmp -e mysql //卸载

  2.安装mysql

  yum install -y mysql y mysql-server mysql-deve

  过程和其他教程差不多,可以参考这个http://www.cnblogs.com/shenliang123/p/3203546.html

  3.启动mysql 

  service mysqld start  //启动mysql

  chkconfig mysqld on //设置开机启动mysql

  4.设置root密码

  mysqladmin -u root password 'root'

  5.配置登陆mysql的hive用户

  虽然在我自己的实验中,我直接用的root账户。但是感觉还是不安全,最好还是创建一个单独的账户给hive。

  insert into mysql.user(Host,User,Password) values("localhost","hive",password("hive"));   //在user用户表里插入一个hive用户

  create database hive;       // 创建hive保存元数据的hive用户

  grant all on hive.* to hive@'%'  identified by 'hive';  //对hive用户设置权限

  grant all on hive.* to hive@'localhost'  identified by 'hive'; //

  flush privileges; //  生效
  exit
 

 

二、Hive安装包下载解压

  这个不用说,在官网上下载一个最新的稳定版本就好。下载后解压在本地。我放的目录是用户主目录下(~)[~是用户主目录,不是卖萌……]

三、配置hive

  1.环境变量配置  

  #set hive
  export HIVE_HOME=/home/renjie/hive
  export PATH=$PATH:$HIVE_HOME/bin
  export CLASSPATH=$CLASSPATH:$HIVE_HOME/lib

  2.修改hive-site

 将hive-default.xml.templateg改为hive-site.xml,然后编辑

<property>
  <name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:mysql://localhost: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> 
</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> 
</property>
 

<property>  
<name>hive.querylog.location</name> 
<value>/home/renjie/hive/iotmp</value>   //自己创建一个路径,修改为自己的路径
<description>Location of Hive run time structured log file</description> 
</property>

<property> 
<name>hive.server2.logging.operation.log.location</name> 
<value>/home/renjie/hive/iotmp/operation_logs</value>   //同样自己创建一个路径
<description>Top level directory where operation logs are stored if logg| 
</property>

  

<property>  
<name>hive.exec.local.scratchdir</name> 
<value>/home/renjie/hive/iotmp</value> 
<description>Local scratch space for Hive jobs</description> 
</property>

<property>  
<name>hive.downloaded.resources.dir</name> 
<value>/home/renjie/hive/iotmp</value> 
<description>Temporary local directory for added resources in the remote| <description>Temporary local directory for added resources in the remote
</property>

3.将MySql的JDBC拷贝到Hive下的lib目录

  单独在mysql官网上下载mysql connector,也就是jdbc的jar包。放到$HIVE_HOME/lib/.

四、配置完成

  在启动hadoop后,运行hive命令,查看是否能进入shell

上一篇:数据处理之以OLEDB方式读取Excel数据丢失的原因及解决方法


下一篇:HoloLens开发手记 - 使用混合现实捕捉 Using mixed reality capture