当前位置: 首页 > news >正文

Hadoop2.6下安装Hive

安装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/


本文作者:Chay Cao

来源:51CTO

相关文章:

  • Windows 10份额稳步上升 Win7继续下滑
  • 初识Rust语言的所有权概念
  • 《SEO的艺术(原书第2版)》——3.1 SEO从业者所能完成的策略性目标
  • 警告:未来互联网安全动荡
  • 《人民日报》教你如何正确使用路由器
  • 窥探“大数据”全貌(技术篇、产业篇、企业转型篇)
  • 揭秘大数据安全分析”架构”
  • 《深入理解Android:Telephony原理剖析与最佳实践》一3.1 何为同步和异步
  • 《C语言程序设计》一 2.5 案例学习——华氏温度与摄氏温度的转换
  • 安防傍上物联网能否迎来硬件免费时代?
  • 深入探析koa之异步回调处理篇
  • 方法和数组
  • 物联网网络技术市场的发展
  • centos中安装mysql
  • 日志收集+分析+报警 logstash
  • [rust! #004] [译] Rust 的内置 Traits, 使用场景, 方式, 和原因
  • Fastjson的基本使用方法大全
  • HashMap剖析之内部结构
  • JavaScript创建对象的四种方式
  • javascript从右向左截取指定位数字符的3种方法
  • javascript数组去重/查找/插入/删除
  • Java精华积累:初学者都应该搞懂的问题
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • leetcode讲解--894. All Possible Full Binary Trees
  • macOS 中 shell 创建文件夹及文件并 VS Code 打开
  • mysql外键的使用
  • open-falcon 开发笔记(一):从零开始搭建虚拟服务器和监测环境
  • Shell编程
  • ubuntu 下nginx安装 并支持https协议
  • Vue2.x学习三:事件处理生命周期钩子
  • 番外篇1:在Windows环境下安装JDK
  • 记一次删除Git记录中的大文件的过程
  • 开发基于以太坊智能合约的DApp
  • 码农张的Bug人生 - 初来乍到
  • 前嗅ForeSpider采集配置界面介绍
  • 世界上最简单的无等待算法(getAndIncrement)
  • 它承受着该等级不该有的简单, leetcode 564 寻找最近的回文数
  • 我与Jetbrains的这些年
  • 项目实战-Api的解决方案
  • 一些关于Rust在2019年的思考
  • - 语言经验 - 《c++的高性能内存管理库tcmalloc和jemalloc》
  • FaaS 的简单实践
  • # 再次尝试 连接失败_无线WiFi无法连接到网络怎么办【解决方法】
  • #调用传感器数据_Flink使用函数之监控传感器温度上升提醒
  • #我与Java虚拟机的故事#连载19:等我技术变强了,我会去看你的 ​
  • (solr系列:一)使用tomcat部署solr服务
  • (二)换源+apt-get基础配置+搜狗拼音
  • (附源码)spring boot校园健康监测管理系统 毕业设计 151047
  • (论文阅读26/100)Weakly-supervised learning with convolutional neural networks
  • (小白学Java)Java简介和基本配置
  • (一)C语言之入门:使用Visual Studio Community 2022运行hello world
  • (原创)攻击方式学习之(4) - 拒绝服务(DOS/DDOS/DRDOS)
  • (转)linux下的时间函数使用
  • .desktop 桌面快捷_Linux桌面环境那么多,这几款优秀的任你选
  • .NET “底层”异步编程模式——异步编程模型(Asynchronous Programming Model,APM)...