Hive远程模式安装

Hive是一个客户端工具,需要在哪台机器上运行就将其安装在哪台机器上,根据metastore的位置可以将hive的运行模式分为三种:内嵌模式、本地模式、远程模式。

远程模式的安装

1.        安装mysql

[root@MyLinux~]# yum --enablerepo=remi install mysql-server

2.        创建用户、数据库,并进行授权

n  创建数据库

mysql>create database hivedb;

Query OK, 1 row affected (0.00 sec)

n  创建hive用户

mysql>create user 'hive' IDENTIFIED BY 'hive';

Query OK, 0 rows affected (0.04 sec)

n  将hivedb授权给hive用户

mysql>grant all privileges on hivedb.* to 'hive'@'%' with grant option;

Query OK, 0 rows affected (0.01 sec)

mysql>flush privileges;

Query OK, 0 rows affected (0.01 sec)

3.        解压hive

[grid@MyLinux~]$ tar -xzvf hive-0.10.0.tar.gz

4.        导入mysql的jdbc驱动包

将mysql-connector-java-5.1.25-bin.jar拷贝到hive目录下的lib文件夹中

[grid@MyLinux ~]$ mv mysql-connector-java-5.1.26.tar.gzhive-0.10.0/lib/

5.        修改hive配置文件

n  修改bin/hive-config.sh,加入如下行:

[grid@MyLinuxhive-0.10.0]$ vim bin/hive-config.sh

export JAVA_HOME=/usr/java/jdk1.7.0_25/

export HIVE_HOME=/home/grid/hive-0.10.0

export HADOOP_HOME=/home/grid/hadoop-0.20.2

n  在conf目录下hive-site.xml,加入以下内容

[grid@MyLinux conf]$ cp hive-default.xml.templatehive-site.xml

[grid@MyLinuxhive-0.10.0]$ vim conf/hive-site.xml

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl"href="configuration.xsl"?>

<configuration>

<property>

<name>hive.metastore.warehouse.dir</name>

<value>/var/hive/warehouse </value>

<description>location of default database for thewarehouse</description>

</property>

<property>

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

<value>/var/hive/temp </value>

<description>Scratch space for Hive jobs</description>

 </property>

<property>

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

<value>jdbc:mysql://MyLinux:3306/hivedb?characterEncoding=UTF-8</value>

        <description>JDBC connect string for a JDBCmetastore</description>

</property>

<property>

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

<value>com.mysql.jdbc.Driver </value>

<description>Driver class name for a JDBCmetastore</description>

</property>

<property>

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

<value>hive</value>

<description>username to use against metastoredatabase</description>

</property>

<property>

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

<value>hive</value>

<description>password to use against metastoredatabase</description>

</property>

<property>

<name>hive.metastore.uris</name>

<value>thrift://127.0.0.1:9083</value>

<description>Thrift uri for the remote metastore.Used by metastore client to connect to remote metastore.</description>

</property>

<property>

<name>hive.metastore.local</name>

<value>false</value>

</property>

                            </configuration>

                            参数:

                            hive.metastore.warehouse.dir为hive的数据目录;

                            hive.exec.scratchdir为临时目录,需要将当前用户设置为上当的owner.

hive.metastore.local表示元数据是存储在本地还是远端,为true表示存储在本地,为false表示存储在远端,同时,false也指hive服务与metastore元数据存储服务不在一个进程中,两个各自独立它们可以放在不同的机器上。

6.        修改mysql字符集

[grid@MyLinux ~]$ mysql -h MyLinux -u hive –p

mysql> alter database hivedb character set  latin1;

7.        启动metastore服务

[grid@MyLinux~]$ hive --service metastore &

8.        以debug模式启动hive

[grid@MyLinuxconf]$ hive --hiveconf hive.root.logger=debug,console

9.        注意

当安装模式是本地模式时,直接进入hive命令行shell,后台会自动启动metastore与hive服务,而且这两个服务还是在同一个进程中,不用手工启动,这点和远程模式是不同的。

当安装模式是远程模式时,首先需要到运行metastore的主机上启动metastore服务[grid@MyLinux~]$ hive --service metastore &;其次在运行hive shell的主机上启动shell时,会同时启动hiveserver进程。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值