Hive0.11安装配置学习笔记
转:http://springsfeng.iteye.com/blog/1734517
1 . 首先请安装好MySQL并修改root账户密码,使用root账户执行下面命令:
su - root
mysql
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'root' WITH GRANT OPTION;
2. 创建Hive用户: 使用root账户执行下面命令:
su - root
mysql -uroot -p
CREATE USER 'hive'@'localhost' IDENTIFIED BY 'hive';
CREATE USER 'hive'@'linux-fdc.linux.com' IDENTIFIED BY 'hive';
CREATE USER 'hive'@'192.168.81.251' IDENTIFIED BY 'hive';
CREATE DATABASE metastore;
CREATE DATABASE metastore DEFAULT CHARACTER SET latin1 DEFAULT COLLATE latin1_swedish_ci;
GRANT ALL PRIVILEGES ON metastore.* TO 'hive'@'localhost' IDENTIFIED BY 'hive' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON metastore.* TO 'hive'@'192.168.81.251' IDENTIFIED BY 'hive' WITH GRANT OPTION;
flush privileges;
3. 导入MySQL 脚本
使用hive账户登录:
mysql -uhive -p -h192.168.81.251
mysql> use metastore;
Database changed
mysql> source /opt/custom/hive-0.11.0/scripts/metastore/upgrade/mysql/hive-schema-0.10.0.mysql.sql
4. Hive安装配置
(1) 编译:针对当前Hive-0.11.0-SNAPSHOT版本
下载最新的Hive源码包:hive-trunk.zip, 解压至:/home/kevin/Downloads/hive-trunk,修改:
build.properties, 中:
- ...
- hadoop-0.20.version=0.20.2
- hadoop-0.20S.version=1.1.2
- hadoop-0.23.version=2.0.3-alpha
- ...
若需修改其他依赖包的版本,请修改:ivy目录下的libraries.properties文件, 例如修改hbase
的版本:
...
guava-hadoop23.version=11.0.2
hbase.version=0.94.6
jackson.version=1.8.8
...
在当前目录下执行:
ant tar -Dforrest.home=/usr/custom/apache-forrest-0.9
其中,forrest.home参考:http://springsfeng.iteye.com/admin/blogs/1734557中的第一部分,
第3小节。
(2) 解压:从编译后的build下Copy hive-0.11.0-SNAPSHOT.tar.gz至:/usr/custom/并解压。
(3) 配置环境变量:
exprot HIVE_HOME=/usr/custom/hive-0.11.0
exprot PATH=$HIVE_HOME/bin:$PATH
(4) 配置文件:
复制conf目录下的.template生成对应的.xml或.properties文件:
cp hive-default.xml.template hive-site.xml
cp hive-log4j.properties.template hive-log4j.properties
(5) 配置hive-config.sh:
- ...
- #
- # processes --config option from command line
- #
- export JAVA_HOME=/usr/custom/jdk1.6.0_43
- export HIVE_HOME=/usr/custom/hive-0.11.0
- export HADOOP_HOME=/usr/custom/hadoop-2.0.3-alpha
- this="$0"
- while [ -h "$this" ]; do
- ls=`ls -ld "$this"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '.*/.*' > /dev/null; then
- this="$link"
- else
- this=`dirname "$this"`/"$link"
- fi
- done
- ...
(6) 配置日志hive-log4j.properties:针对0.10.0版本的特别处理。
将org.apache.hadoop.metrics.jvm.EventCounter改成:org.apache.hadoop.log.metrics
.EventCounter , 这样将解决异常:
WARNING: org.apache.hadoop.metrics.jvm.EventCounter is deprecated.
Please use org.apache.hadoop.log.metrics.EventCounter in all the log4j.properties files.
(7) 创建hive-site文件:
- <configuration>
- <!-- WARNING!!! This file is provided for documentation purposes ONLY! -->
- <!-- WARNING!!! Any changes you make to this file will be ignored by Hive. -->
- <!-- WARNING!!! You must make your changes in hive-site.xml instead. -->
- <!-- Hive Execution Parameters -->
- <property>
- <name>javax.jdo.option.ConnectionURL</name>
- <value>jdbc:mysql://localhost:3306/metastore_db?createDatabaseIfNotExist=true</value>
- <description>
- JDBC connect string for a JDBC metastore.
- 请注意上面value标签之间的部分前后之间不能有空格,否则HiveClient提示:
- FAILED: Error in metadata: java.lang.RuntimeException: Unable
- to instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient
- </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.metastore.uris</name>
- <value>thrift://linux-fdc.linux.com:8888</value>
- <description>
- Thrift uri for the remote metastore. Used by metastore
- client to connect to remote metastore.
- </description>
- </property>
- </configuration>
(8) 配置MySQL-Connector-Java
下载mysql-connector-java-5.1.22-bin.jar放在/usr/custom/hive-0.11.0/lib目录下,否则执行
show tables; 命令时提示找不到ConnectionDriverName。
5. 启动使用
(1) 启动
进入bin目录下,执行命令:hive
(2) 查看当前库及表
show databases; //默认为:default
show tables;
(3) 创建表示例
这部分为我自己的测试, 测试数据见附件。
CREATE TABLE cite (citing INT, cited INT)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE;
CREATE TABLE cite_count (cited INT, count INT);
INSERT OVERWRITE TABLE cite_count
SELECT cited,COUNT(citing)
FROM cite
GROUP BY cited;
SELECT * FROM cite_count WHERE count > 10 LIMIT 10;
CREATE TABLE age (name STRING, birthday INT)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
LINES TERMINATED BY '\n'
STORED AS TEXTFILE;
CREATE TABLE age_out (birthday INT, birthday_count INT)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
LINES TERMINATED BY '\n'
STORED AS TEXTFILE;
(4) 查看表结构
desribe cite;
(5) 加载数据
hive> LOAD DATA LOCAL INPATH '/home/kevin/Documents/age.txt' OVERWRITE INTO TABLE age;
Hive0.11安装配置学习笔记的更多相关文章
- redis 安装配置学习笔记
redis 安装配置学习笔记 //wget http://download.redis.io/releases/redis-2.8.17.tar.gz 下载最新版本 wget http://downl ...
- Chapter 2. OpenSSL的安装和配置学习笔记
Chapter 2. OpenSSL的安装和配置学习笔记 2.1 在linux上面安装OpenSSL我还是做点No paper事情比较在行,正好和老师的课程接轨一下.以前尝试过在Windows上面安装 ...
- Android安装器学习笔记(一)
Android安装器学习笔记(一) 一.Android应用的四种安装方式: 1.通过系统应用PackageInstaller.apk进行安装,安装过程中会让用户确认 2.系统程序安装:在开机的时候自动 ...
- DirectX 11游戏编程学习笔记之8: 第6章Drawing in Direct3D(在Direct3D中绘制)(习题解答)
本文由哈利_蜘蛛侠原创,转载请注明出处.有问题欢迎联系2024958085@qq.com 注:我给的电子版是700多页,而实体书是800多页,所以我在提到相关概念的时候 ...
- centos6 安装配置ss笔记
2018-05-17 centos6 安装配置ss笔记 操作环境:Centos 6 x86_64 bbr 服务器地址:美国 1.准备VPS 在https://www.bwh1.net可购买,购买时已默 ...
- DirectX 11游戏编程学习笔记之6: 第5章The Rendering Pipeline(渲染管线)
本文由哈利_蜘蛛侠原创,转载请注明出处.有问题欢迎联系2024958085@qq.com 注:我给的电子版是700多页,而实体书是800多页,所以我在提到相关概念的时候 ...
- CentOS 5.11安装配置LAMP服务器(Apache+PHP5+MySQL)
http://www.osyunwei.com/archives/8880.html 准备篇: CentOS 5.x系统安装配置图解教程 http://www.osyunwei.com/archive ...
- android cocos2d-x for Android安装和学习笔记(请用adt-bundle21.1或以上导入)
引用:http://weimingtom.iteye.com/blog/1483566 (20121108)注意:这篇文章用cdt编译ndk工程的内容已过时(现在可以用adt-bundle,避免配置繁 ...
- DirectX 11游戏编程学习笔记之1: 开场白
本文由哈利_蜘蛛侠原创,转载请注明出处.有问题欢迎联系2024958085@qq.com 这是我之前的博客系列"DirectX9.0c游戏开发手记之'龙书'第二版学习笔记 ...
随机推荐
- hibernate之处理视图
近期,我去用hibernate去创建视图, 发现无法进立建立视图, 为啥? 个人去尝试去,却发现无法很好的完成, 因为hibernate的作用类似视图 后解决方案是: 1.用传统的方式去处理 2.写存 ...
- php 注册审核
注册界面 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...
- MySQL基础二
视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,并可以将其当作表来使用. SELECT * FROM ( SEL ...
- java创建线程的几种方式
1.继承Thread类 /** * @author Ash * @date: 2016年8月6日 下午10:56:45 * @func: 通过继承Thread类来实现多线程 * @email 4086 ...
- 莫队算法 2038: [2009国家集训队]小Z的袜子(hose)
链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2038 2038: [2009国家集训队]小Z的袜子(hose) Time Limit: 20 ...
- jQuery插件treeview点击节点名称不展开、收缩节点 分类: JavaScript 2014-06-16 20:28 539人阅读 评论(0) 收藏
修改jquery.treeview.js文件中的applyClasses方法(注释掉两行代码): 修改后的applyClasses方法如下: applyClasses: function(settin ...
- Linux發送郵件
1.直接使用shell當編輯器 [root@phburdb1 mail]# mail -s "Hello World" juncai.chen@innolux.comHello j ...
- 【SQL Server】数据库是单个用户的 无法顺利进行操作 怎么解决
1.打开数据库 2.新建查询 ,输入以下的SQL 语句 DECLARE @SQL VARCHAR(MAX); SET @SQL='' SELECT @SQL=@SQL+'; KILL '+RTRIM( ...
- Jmeter之安装(一)
Jmeter Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域. 小七这边之前用jmeter ...
- Android开发之ViewPager+ActionBar+Fragment实现响应式可滑动Tab
今天我们要实现的这个效果呢,在Android的应用中十分地常见,我们可以看到下面两张图,无论是系统内置的联系人应用,还是AnyView的阅读器应用,我们总能找到这样的影子,当我们滑动屏幕时,Tab可 ...