Hadoop2.6下安装Hive

大数据 Hadoop
下面我们将介绍如何在Hadoop2.6下安装Hive。

[[175745]]

安装Mysql:

sudo apt-get install mysql-server mysql-client

安装后检查是否启动

创建数据库Hive和用户hadoop

用root身份进入mysql:

mysql -u root -p

解压及配置Hive

我的hadoop安装目录在 /usr/local/hadoop-2.6.4 中,解压apache-hive-1.1.1-bin.tar.gz到 /usr/local/hadoop-2.6.4/hive 中。

  1. tar –zxvf /usr/local/hadoop/hive apache-hive-1.1.1-bin.tar.gz 

修改 /etc/profile 文件,添加HIVE_HOME和PATH

  1. export HIVE_HOME=/usr/local/hadoop-2.6.4/hive/apache-hive-1.1.1-bin 
  2.  
  3. export PATH= \${PATH}:\${HIVE_HOME}/bin 
  4.  
  5. source /etc/profile 使配置生效 

在 /usr/local/hadoop-2.6.4/apache-hive-1.1.1-bin/conf 复制一份 hive-default.xml.template 为 hive-size.xml 文件

  1. cp hive-default.xml.template hive-site.xml 

修改内容如下,模板里面没有 hive.metastore.local ,手动添加,账户和密码是使用Mysql的账户密码:

  1. <property> 
  2. <name>hive.metastore.local</name> 
  3. <value>true</value> 
  4. </property> 
  5. <property> 
  6. <name>javax.jdo.option.ConnectionURL</name> 
  7. <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value> 
  8. <description>JDBC connect string for a JDBC metastore</description> 
  9. </property> 
  10. <property> 
  11. <name>javax.jdo.option.ConnectionDriverName</name> 
  12. <value>com.mysql.jdbc.Driver</value> 
  13. <description>Driver class name for a JDBC metastore</description> 
  14. </property> 
  15. <property> 
  16. <name>javax.jdo.option.ConnectionUserName</name> 
  17. <value>root</value> 
  18. <description>Username to use against metastore database</description> 
  19. </property> 
  20. <property> 
  21. <name>javax.jdo.option.ConnectionPassword</name> 
  22. <value>admin</value> 
  23. <description>password to use against metastore database</description> 
  24. </property> 

 

在 /usr/local/hadoop-2.6.4/apache-hive-1.1.1-bin/bin/ 修改hive-config.sh添加下面的3个export语句

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_101

export HADOOP_HOME=/usr/local/hadoop-2.6.4

export HIVE_HOME=/usr/local/hadoop-2.6.4/hive/apache-hive-1.1.1-bin

将下载的 mysql-connector-java-5.1.40 中的 mysql-connector-java-5.1.40-bin.jar 复制到apache-hive-1.1.1-bin/lib 中

启动hive

在Mysql和Hadoop运行的情况下,使用 hive 命令运行hive:

hive

可能发生的问题

(1)Exception in thread “main” java.lang.RuntimeException: java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: \${system:java.io.tmpdir%7D/\$%7Bsystem:user.name%7D

at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:444)

at

处理办法:在配置文件hive-site.xml里找” system:java.io.tmpdir “把他们都换成绝对路径如: /usr/local/hadoop-2.6.4/hive/apache-hive-1.1.1-bin/iotmp

(2)[ERROR] Terminal initialization failed; falling back to unsupported

java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected

原因:hadoop目录下存在老版本jline:

/usr/local/hadoop-2.6.4/share/hadoop/yarn/lib/:

-rw-r–r– 1 root root 87325 Mar 10 18:10 jline-0.9.94.jar

解决办法:

cp /usr/local/hadoop-2.6.4/hive/apache-hive-1.1.1-bin/lib/jline-2.12.jar /usr/local/hadoop-2.6.4/share/hadoop/yarn/lib/

责任编辑:赵宁宁 来源: 推酷
相关推荐

2018-09-18 15:21:47

Hive数据仓库程序

2021-09-01 07:21:41

LinuxHadoop存储

2010-02-02 11:00:03

Linux 2.6内核

2013-05-27 14:21:58

2010-06-04 09:29:55

安装Hadoop教程

2015-08-07 15:46:13

Ubuntu安装

2010-06-04 10:01:26

Hadoop安装

2020-11-03 08:36:08

Hadoop

2017-03-13 09:50:00

HadoopHive

2014-07-29 09:19:07

Hadoop

2019-10-31 09:52:02

HadoopJava大数据

2010-06-04 09:43:47

hadoop应用

2010-06-04 16:31:14

实现Hadoop

2013-11-28 09:44:00

2012-06-25 10:30:06

Hadoop集群

2013-05-27 14:13:51

Hadoop 2.0.

2010-06-03 09:48:17

Hadoop安装

2013-09-02 17:24:54

MongoDBHadoop连接器Hive

2010-06-03 10:51:09

Hadoop安装部署

2017-02-28 09:21:56

HadoopHive数据仓库
点赞
收藏

51CTO技术栈公众号