hive的安装与配置

原创
2017/04/12 23:36
阅读数 35

1.环境搭建

hive需要安装java,mysql,hdfs,这里略过,可以参考我的其它博客。

安装hdfs:

https://my.oschina.net/Jevon95/blog/877505

安装jdk:

https://my.oschina.net/Jevon95/blog/874886

安装mysql:

https://my.oschina.net/Jevon95/blog/874859

2.下载解压

cd /usr/local
wget http://apache.fayea.com/hive/hive-1.2.2/apache-hive-1.2.2-bin.tar.gz
tar zxvf apache-hive-1.2.2-bin.tar.gz

3.配置

3.1配置hivehome

javahome,hdfshome,hivehome

vim /etc/profile

内容如下:

注意:jdkhome,hdfshome,hivehome按你的实际路径填写

export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.131-2.6.9.0.el7_3.x86_64/
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin


export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export HADOOP_HOME_WARN_SUPPRESS=1

export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin

3.2配置hive-site.xml

因为hive有三种安装模式:嵌入模式,本地模式,远程模式,这里是使用远程模式

新建hive-site.xml

//进入hive的安装目录下的conf文件
cd /usr/local/hive/conf
vim hive-site.xml

加入以下内容:

注意:数据库地址,用户名密码填写你的!!!

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property> 
   <name>javax.jdo.option.ConnectionURL</name> 
   <value>jdbc:mysql://localhost:3306/hive</value> 
</property> 
 
<property> 
   <name>javax.jdo.option.ConnectionDriverName</name> 
   <value>com.mysql.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> 

</configuration>

3.3添加mysql的驱动包

//进入hive的安装目录,进入lib目录
cd /usr/local/hive/bin
//下载mysql的驱动包
wget http://central.maven.org/maven2/mysql/mysql-connector-java/5.1.34/mysql-connector-java-5.1.34.jar

4.启动

cd /usr/local/hive/bin
hive
show databases;

5.异常解决

Hive创建表格报【Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException】

参考:http://www.cnblogs.com/simple-focus/p/6184581.html

引用他的方法:

第1步:继续搜索解决方法,然后找到了可能是字符集的原因,可以通过在mysql中将数据库的字符集改为latin1,执行以下命令: alter database hive character set latin1;

第2步:重启hive,继续看log,除了第一个exception消失了之外,其他依然存在,有些疑惑,认真看了一下,发现metastore.HiveMetaStore: admin role already exists,会不会是之前hive启动出错时留下的问题,那么把mysql中的hive数据删掉重新创建一个看看。

第3步:在mysql中执行以下命令: 
  drop database hive; 
  create database hive; 
  alter database hive character set latin1;

第4步:重启hive,查看log,问题解决了!!!

 

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部