欢迎投稿

今日深度:

Hive(笔记),

Hive(笔记),


(2015.07.22Hive笔记)

一、Hive的安装

1.1Hive的安装过程

下载hive源文件(apache-hive-0.14.0-bin.tar.gz

解压hive文件

进入$HIVE_HOME/conf/修改文件

cp hive-env.sh.template hive-env.sh

cp hive-default.xml.template(模板文档,提供了hive很多参数) hive-site.xml

 

 

修改$HIVE_HOME/confhive-env.sh,增加以下三行

export JAVA_HOME=/usr/local/jdk1.7.0_45

export HIVE_HOME=/usr/local/hive-0.14.0

export HADOOP_HOME=/usr/local/hadoop-2.6.0

配置MySQLmetastore

 

修改$HIVE_HOME/conf/hive-site.xml

<property>

    <name>javax.jdo.option.ConnectionURL</name>

    <value>jdbc:mysql://192.168.1.101:3306/hive?

         createDatabaseIfNotExist=true</value>

</property>

<property>

    <name>javax.jdo.option.ConnectionDriverName</name>

    <value>com.mysql.jdbc.Driver</value>(lib目录下默认没有驱动,需要自己下载mysql-connector-java-5.1.10.jar,因为自带了derby-10.10.1.1.jar,能启动derby数据库)

</property>

<property>

    <name>javax.jdo.option.ConnectionUserName</name>

    <value>hive</value>

</property>

<property>

    <name>javax.jdo.option.ConnectionPassword</name>

    <value>hive</value>

</property>

 

 

 

<property>

  <name>hive.querylog.location</name>

  <value>/usr/local/hive-0.14.0/tmp</value>

</property>

 

<property>

  <name>hive.exec.local.scratchdir</name>

  <value>/usr/local/hive-0.14.0/tmp</value>

</property>

 

<property>

  <name>hive.downloaded.resources.dir</name>

  <value>/usr/local/hive-0.14.0/tmp</value>

</property>

 

 

连接本地Mysql解决办法(感谢为我提供帮助的国柱、其国、世昌师兄们和老师)

1.首先登陆到mysql

mysql -uroot -pmysql

2.创建远程登陆用户并授权

grant all PRIVILEGES on test_db.* to root@'192.168.1.101' identified by 'root';

3.执行了上面的语句后,再执行下面的语句,方可立即生效。

flush privileges;

 

如果不行

use mysql;

然后UPDATE user SET `Host` = '%' WHERE `User` = 'root' LIMIT 1;

flush privileges;

 

我还是有一些疑问1:现在不能用root用户登录,只能用其他用户登录对吗?其他用户的权限少了些什么?2配置文件连接的是192.168.1.101,在qlyog127.0.0.1新建一个hive数据库才能用(hive新建的表的元数据都保存在那里,而不是192.168.1.101

 

新创建一个用户,不要用root,估计root串了。

use mysql;

grant all privileges on *.* to <用户名>@'%' identified by '密码';

flush privilege;

SELECT `Host`,`User` FROM user;

alter database hive character set latin1;

 

成功连接mysql启动hive

 

因为$HIVE_HOME/lib目录下有derbyjar包所以使用derby作为默认的metastore

Hive1.2版本中的jline-2.12.jar包与hadoop2.6.0jline-0.9.94.jar版本)不兼容,解决办法,将这个jar包复制到hadooplib目录下。

 

 

1.2hive web界面模式

 

web界面安装:

下载apache-hive-0.14.0-src.tar.gz(版本需要对应)

制作war包放在HIVE_HOME/lib/ : (apache-hive-0.14.0-src.tar\apache-hive-0.14.0-src\hwiweb解压出来,里面的jsp文件就是hwi的显示界面 )hwi/web/*里面所有的文件打成war包(压缩文件,并重命名为hive-hwi-0.14.0.war

复制tool.jar(jdklib包下面的tool.jar)HIVE_HOME/lib

修改hive-site.xml(HIVE_HOME/conf)

<property>

  <name>hive.hwi.listen.host</name>

  <value>0.0.0.0</value>

</property>

<property>

  <name>hive.hwi.listen.port</name>

  <value>9999</value>

</property>

<property>

  <name>hive.hwi.war.file</name>

  <value>lib/hive-hwi-0.14.0.war</value>

</property>

hive web界面的 (端口号9999) 启动方式

    #hive --service hwi &&表示后台显示)

用于通过浏览器来访问hive    

    http://hadoop0:9999/hwi/

 

可以查看hive的系统信息,hadoop日志路径信息等

 

 

1.3set命令使用

 

hive控制台set命令:

set hive.cli.print.current.db=true;

set hive.cli.print.header=true;

set hive.metastore.warehouse.dir=/hive;

hive参数初始化配置set命令:

~/.hiverc(存放在每个用户的主目录下面,可以创建一个.hiverc,将set命令的参数复制进去,重新启动执行hive,就可以将set命令执行起来)

补充:

hive历史操作命令集(more .hivehistory查看一下)

~/.hivehistory

 

直接查看(执行set),查看hadoop定义的全部变量,hive底层依赖的hadoop环境变量配置信息(set -v

设置name变量并初始化(set hivevarname=crxy;)显示(set hivevarname;),传值(create table t2name string,${hivevar:name} string;

www.htsjk.Com true http://www.htsjk.com/hive/37366.html NewsArticle Hive(笔记), (2015.07.22 Hive 笔记) 一、Hive的安装 1.1Hive的安装过程 下载 hive 源文件( apache-hive-0.14.0-bin.tar.gz ) 解压 hive 文件 进入 $HIVE_HOME/conf/ 修改文件 cp hive-env.sh.template hive-env....
相关文章
    暂无相关文章
评论暂时关闭