CentOS6.5安装hive2.1.1

一、安装hadoop集群,这里准备两台hadoop服务器,hd01,hd02

二、安装MySQL数据库

三、下载hive安装包2.1.1

http://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-2.1.1/apache-hive-2.1.1-bin.tar.gz

四、将安装包上传至hd01服务器 /data/tools目录下,并解压至/data/hive目录中。

五、创建hadoop用户,已创建忽略此步骤。

root操作:

useradd hadoop

passwd hadoop

六、修改hive目录权限

root操作

cd /data

chown -R hadoop hive

六、设置hive环境变量

切换到hadoop用户:

vi ~/.bash_profile

添加 HIVE_HOME=/data/hive

PATH=$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH:$HOME/bin

export PATH JAVA_HOME HIVE_HOME

保存退出

source ~/.bash_profile使环境变量生效

七、修改hive配置文件

1)准备配置文件

cd /data/hive/conf

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

cp hive-default.xml.template hive-site.xml

cp hive-log4j2.properties.template hive-log4j2.properties

cp hive-exec-log4j2.properties.template hive-exec-log4j2.properties

2)修改hive-env.sh,在末尾添加:

export JAVA_HOME=/data/jdk1.8

export HADOOP_HOME=/data/hadoop/hadoop-2.7.4

export HIVE_HOME=/data/hive

export HIVE_CONF_DIR=$HIVE_HOME/conf

3)修改hive-site.xml,找到以下对应的property修改其value值

hive.exec.scratchdir

/tmp/hive-${user.name}

HDFS root scratch dir for Hive jobs which gets created with write all (733) permission. For each connecting user, an HDFS scratch dir: ${hive.exec.scratchdir}/ is created, with ${hive.scratch.dir.permission}.

hive.exec.local.scratchdir

/tmp/${user.name}

Local scratch space for Hive jobs

hive.downloaded.resources.dir

/tmp/hive/resources

Temporary local directory for added resources in the remote file system.

hive.querylog.location

/tmp/${user.name}

Location of Hive run time structured log file

hive.server2.logging.operation.log.location

/tmp/${user.name}/operation_logs

Top level directory where operation logs are stored if logging functionality is enabled

4)修改hadoop配置core-site.xml,加入以下配置,开启hive访问hdfs权限:

其中,hadoop.proxyuser.hadoop.hosts,红色字符为需要访问hdfs的系统用户。

hadoop.proxyuser.hadoop.hosts

*

hadoop.proxyuser.hadoop.groups

*

5)配置hive元数据存储,hive默认使用derby内嵌数据库,生产环境一般采用mysql数据库

将 mysql-connector-java-5.1.43-bin.jar 放入 $HIVE_HOME/lib 下。

在hive-site.xml中配置如下信息:

javax.jdo.option.ConnectionURL

jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&characterEncoding=UTF-8&useSSL=false

javax.jdo.option.ConnectionDriverName

com.mysql.jdbc.Driver

javax.jdo.option.ConnectionUserName

hive

javax.jdo.option.ConnectionPassword

hive

6)为hive创建hdfs目录

在 Hive 中创建表之前需要使用以下 HDFS 命令创建 /tmp 和 /user/hive/warehouse (hive-site.xml 配置文件中属性项 hive.metastore.warehouse.dir 的默认值) 目录并给它们赋写权限。

确保hadoop的hdfs服务已启动。

进入hadoophome的bin目录,cd /data/hadoop/hadoop-2.7.4/bin

依次执行以下命令:

./hdfs dfs -mkdir /tmp

./hdfs dfs -mkdir -p /user/hive/warehouse

./hdfs dfs -chmod g+w /tmp

./hdfs dfs -chmod g+w /user/hive/warehouse

7)给mysql创建hive用户

mysql -u root -p,登录mysql

mysql> CREATE USER 'hive'@'localhost' IDENTIFIED BY "hive";

mysql> grant all privileges on *.* to hive@localhost identified by 'hive';

8)运行hive

初始化hive,执行 schematool -dbType mysql -initSchema

执行hive命令,进入命令行,输入show tables测试服务

9)修改log配置文件,将log输出到指定目录

vi hive-log4j2.properties

10)由于hiveserver2没有后台运行的脚本,将以下脚本复制到bin目录下,并赋予当前用户执行权限。

然后执行 hiveserver2.sh start

metastore.sh start

11)浏览器打开hiveserver webui

http://192.168.76.128:10002

你可能感兴趣的:(CentOS6.5安装hive2.1.1)