Hive安装

mysql使用主机(win7)上的mysql数据库,启动后,要关闭360和win7自带的防火墙,确保在虚拟机里能拼通主机**************************************************

D:\server\mysql-5.0.16-win32\bin

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

create
database hive character set
'UTF8';

下载地址:http://archive.apache.org/dist/hive/hive-0.8.1/

拷贝:cp
/mnt/hgfs/share_files/hive-0.8.1.tar.gz ~

解压:tar -zxvf
hive-0.8.1.tar.gz

安装配置hive

(1)修改/home/grid/hive-0.8.1/bin/hive-config.sh

在末尾添加:

[grid@h1
bin]$ vi hive-config.sh

export
JAVA_HOME=/usr/java/jdk1.6.0_29/

export
HIVE_HOME=/home/grid/hive-0.8.1

export
HADOOP_HOME=/home/grid/hadoop-0.20.2

(2)
根据hive-default.xml.template复制hive-site.xml

[grid@h1
conf]$ cp hive-default.xml.template
hive-site.xml

(3)
修改配置文件hive-site.xml:

临时文件目录,默认值是/tmp/hive-${user.name}

数据目录,默认值是/user/hive/warehouse

hive.exec.scratchdir

/home/grid/hive-tmp

hive.metastore.warehouse.dir

/home/grid/hive-data

javax.jdo.option.ConnectionURL

jdbc:mysql://192.168.1.100:3306/hive?createDatabaseIfNotExist=true

javax.jdo.option.ConnectionDriverName

com.mysql.jdbc.Driver

javax.jdo.option.ConnectionUserName

hive

javax.jdo.option.ConnectionPassword

hive

    mysql使用主机(win7)上的mysql数据库," />
    mysql使用主机(win7)上的mysql数据库," />    mysql使用主机(win7)上的mysql数据库," />

(4)配置log4j

[grid@h1
conf]$ cp hive-log4j.properties.template
hive-log4j.properties

(5)创建临时文件目录、数据目录

[grid@h1 ~]$
mkdir hive-tmp

[grid@h1 ~]$
mkdir hive-data

(6)把MySQL的JDBC驱动mysql-connector-java-5.0.8.jar
复制到Hive的lib目录下。(注:发现无法直接拷贝到/home/grid/hive-0.8.1/lib目录下,奇怪)

[grid@h1 ~]$
cp /mnt/hgfs/share_files/mysql-connector-java-5.0.8.jar
~

[grid@h1 ~]$
cp mysql-connector-java-5.0.8.jar
/home/grid/hive-0.8.1/lib

[grid@h1 ~]$
rm mysql*.jar

(7)启动

[grid@h1 ~]$
hive-0.8.1/bin/hive

出现问题1:

Hive
requires Hadoop 0.20.x (x >= 1).

'hadoop
version' returned:

Hadoop
0.20-append-r1056497 Subversionhttps://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.20-append -r
1056491 Compiled by stack on Fri Jan 7 20:43:30 UTC
2011

问题解决1:出现这个问题是因为安装hbase的时候,我们用hbase的jar包覆盖hadoop的jar包(老师的课程里说的是用hadoop的包覆盖hbase的包,但这样运行时会报错)

[grid@h1 ~]$
hadoop-0.20.2/bin/stop-all.sh

[grid@h1 ~]$
cd hadoop-0.20.2

[grid@h1
hadoop-0.20.2]$ rm hadoop-0.20.2-core.jar

//用原来备份的文件还原(如果想运行hbase,又要用hbase的jar来覆盖这个jar)

[grid@h1
hadoop-0.20.2]$ cp hadoop-0.20.2-core.sav
hadoop-0.20.2-core.jar

//要同步到其他机器

[root@h1
hadoop-0.20.2]# scp
hadoop-0.20.2-core.jar grid@h2:/home/grid/hadoop-0.20.2/hadoop-0.20.2-core.jar

[root@h1
hadoop-0.20.2]# scp
hadoop-0.20.2-core.jar grid@h3:/home/grid/hadoop-0.20.2/hadoop-0.20.2-core.jar

再次启动:

[grid@h1 ~]$
hadoop-0.20.2/bin/start-all.sh

[grid@h1 ~]$
hive-0.8.1/bin/hive

hive> show
databases;

又报错2:

FAILED:
Error in metadata: javax.jdo.JDOFatalDataStoreException:
null,  message from server: "Host
'192.168.1.104' is not allowed to connect to this MySQL
server"

NestedThrowables:

java.sql.SQLException:
null,  message from server: "Host
'192.168.1.104' is not allowed to connect to this MySQL
server"

FAILED:
Execution Error, return code 1 from
org.apache.hadoop.hive.ql.exec.DDLTask

问题解决2:

在mysql里运行:grant all on *.*
to hive@'192.168.1.104' identified
by 'hive' with grant option;

192.168.1.104是安装hive的机器ip

    mysql使用主机(win7)上的mysql数据库," />
    mysql使用主机(win7)上的mysql数据库," /> 这个是因win7自带防火墙问题,连不上mysql

    mysql使用主机(win7)上的mysql数据库," />

问题3

hive> show
tables;

FAILED: Error
in metadata: MetaException(message:Got exception:
javax.jdo.JDODataStoreException An exception was thrown while
adding/validating class(es) : Can't create table
'.\hive\sd_params.frm' (errno: 139)

java.sql.SQLException:
Can't create table '.\hive\sd_params.frm' (errno:
139)

at
com.mysql.jdbc.SQLError.createSQLException(SQLError.java:946)

at
com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2985)

at
com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1631)

at
com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1723)

问题解决3:(是数据库编码引起的)

drop
database hive;

create
database hive character set
'latin1';

建表

hive>
CREATE TABLE pokes (foo INT, bar
STRING);

OK

Time taken:
4.357 seconds

其他操作见:Hive常用的SQL命令操作.txt

    mysql使用主机(win7)上的mysql数据库," />

其他问题:Hive和Hbase如何共存,他们两有jar冲突

其实这个安装早就弄了,这个人惰性的厉害,非周日晚上做作业不可

版权声明:本文为博主原创文章,未经博主允许不得转载。

Hive安装    …的更多相关文章

  1. Hive安装配置指北(含Hive Metastore详解)

    个人主页: http://www.linbingdong.com 本文介绍Hive安装配置的整个过程,包括MySQL.Hive及Metastore的安装配置,并分析了Metastore三种配置方式的区 ...

  2. hive安装--设置mysql为远端metastore

    作业任务:安装Hive,有条件的同学可考虑用mysql作为元数据库安装(有一定难度,可以获得老师极度赞赏),安装完成后做简单SQL操作测试.将安装过程和最后测试成功的界面抓图提交 . 已有的当前虚拟机 ...

  3. Hive安装与部署集成mysql

    前提条件: 1.一台配置好hadoop环境的虚拟机.hadoop环境搭建教程:稍后补充 2.存在hadoop账户.不存在的可以新建hadoop账户安装配置hadoop. 安装教程: 一.Mysql安装 ...

  4. 【转】 hive安装配置及遇到的问题解决

    原文来自: http://blog.csdn.net/songchunhong/article/details/51423823 1.下载Hive安装包apache-hive-1.2.1-bin.ta ...

  5. Hadoop之hive安装过程以及运行常见问题

    Hive简介 1.数据仓库工具 2.支持一种与Sql类似的语言HiveQL 3.可以看成是从Sql到MapReduce的映射器 4.提供shall.Jdbc/odbc.Thrift.Web等接口 Hi ...

  6. Hive安装与配置详解

    既然是详解,那么我们就不能只知道怎么安装hive了,下面从hive的基本说起,如果你了解了,那么请直接移步安装与配置 hive是什么 hive安装和配置 hive的测试 hive 这里简单说明一下,好 ...

  7. hive安装详解

    1.安装MYSQL simon@simon-Lenovo-G400:~$ sudo apt-get install mysql-server simon@simon-Lenovo-G400:~$ su ...

  8. macbook hive安装

    1 原材料 1.1 已经安装好的伪分布式hadoop,版本2.8.3(参见链接https://www.cnblogs.com/wooluwalker/p/9128859.html) 1.2 apach ...

  9. [hive] hive 安装、配置

    一.hive安装 1.官网下载 1.2.2版本 http://apache.fayea.com/hive/hive-1.2.2/ 2. 解压,此处目录为 /opt/hadoop/hive-1.2.2 ...

  10. Hive安装与配置--- 基于MySQL元数据

    hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行. 其优点是学习成本低,可以通过 ...

随机推荐

  1. JS深入理解系列(一):编写高质量代码

    在for循环中,你可以循环取得数组或是数组类似对象的值,譬如arguments和HTMLCollection对象.通常的循环形式如下: // 次佳的循环for (var i = 0; i < m ...

  2. Python爬虫-- PyQuery库

    PyQuery库 PyQuery库也是一个非常强大又灵活的网页解析库,PyQuery 是 Python 仿照 jQuery 的严格实现.语法与 jQuery 几乎完全相同,所以不用再去费心去记一些奇怪 ...

  3. ZOJ - 1504 Slots of Fun 【数学】

    题目链接 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1504 题意 给出一串字符串 里面的每个字符的位置 都按照题目的意 ...

  4. Android LinearLayout线性布局

    LinearLayout是线性布局控件:要么横向排布,要么竖向排布 决定性属性:必须有的! android:orientation:vertical (垂直方向) .horizontal(水平方向) ...

  5. 现代JS中的流程控制:详解Callbacks 、Promises 、Async/Await

    JavaScript经常声称是_异步_.那是什么意思?它如何影响发展?近年来这种方法有何变化? 请思考以下代码: result1 = doSomething1(); result2 = doSomet ...

  6. event loop笔记

    注意四个对象: 主进程 执行栈 异步进程 任务队列 1.主进程读取js代码,形成对应的堆和执行栈(此时在同步环境) 2.当遇见异步任务,转交给异步进程进行处理 3.异步任务完成,将其推入任务队列 4. ...

  7. jqueryeasyUI dialog 弹出窗口超出浏览器,导致不能关闭的bug解决方案

    jqueryeasyUI dialog 弹出窗口超出浏览器,导致不能关闭的bug解决方案 2014年8月30日 3233次浏览 相信很多前端朋友都用过jqueryeasyUI,jqueryeasyUI ...

  8. 郝健: Linux内存管理学习笔记-第2节课【转】

    本文转载自:https://blog.csdn.net/juS3Ve/article/details/80035753 摘要 slab./proc/slabinfo和slabtop 用户空间mallo ...

  9. ScrollView当显示超出当前页面时自动移动到最底端【转】

    本文转载自:http://gundumw100.iteye.com/blog/1162964 卷轴视图(ScrollView)是指当拥有很多内容,一屏显示不完时,需要通过滚动来显示视图.比如在做一个阅 ...

  10. LightOJ - 1248 Dice (III) —— 期望

    题目链接:https://vjudge.net/problem/LightOJ-1248 1248 - Dice (III)    PDF (English) Statistics Forum Tim ...