Hive安装与配置
准备工作:
- Hadoop伪分布式
- apache-hive-2.1.1-bin.tar
- mysql-connector-java-5.1.18-bin
以下配置所需文件均以上传到百度网盘
链接:https://pan.baidu.com/s/1rrwYyuVehbvytP37J24iGA
提取码:db1j
复制这段内容后打开百度网盘手机App,操作更方便哦
安装过程:
- 首先确保虚拟机上已经安装了hadoop伪分布式,并且可以正常启动。
在此基础上安装配置hive(因为hive本质是mapreduce,需要运行在hdfs上)
- 安装hive
->从官网http://hive.apache.org下载hive
进入官网后点击左侧Downloads进入下载
点击Download a release now!
点击HTTP下方的链接
选择自己想要下载的版本,其中stable-2是稳定版本,正式生产环境应该选择稳定版本
进入stable-2后下载相应的版本(apache-hive-X.X.X-bin.tar.gz)
下载到本地后通过MobeXterm终端工具上传到centos虚拟机
(这里我是下载到/home/soft下,下载在哪里无所谓)
以下操作均在虚拟机里进行:
进入主目录的soft文件夹下(我的是进入/home/soft)
使用tar命令解压hive-2.1.1.tar.gz
(tar -zxvf hive-2.1.1.tar.gz)
使用mv命令重命名解压后的hive-2.1.1文件
(mv hive-2.1.1 hive)
配置hive的环境变量
vi /etc/profile(该目录是配置环境变量的地方,包括jdk,hadoop,hive....)
(
#hive
export HIVE_HOME=/home/soft/hive
export PATH=$PATH:$HIVE_HOME/bin
)
配置hive-env.sh(cd /home/soft/hive/conf)
***注意一点:
conf文件中没有hive-env.sh文件以及后面需要配置的hive-site.xml文件,有的只是模板文件需要复制改名
hive-env.sh.template -> hive-env.sh
命令:cp hive-env.sh.template hive-env.sh
hive-default.template -> hive-site.xml
命令 cp hive-default.template hive-site.xml
conf该文件夹是hive配置文件存在的位置,其中包括hive-env.sh和hive-site.xml等配置文件
进入hive-env.sh文件中
(vi hive-env.sh)
分别配置
HADOOP_HOME(hadoop目录)(hadoop的安装目录)
HIVE_CONF_DIR(hive临时目录)(hive配置文件所在路径)?
HIVE_AUX_JARS_PATH(hive引入jar包时配置,与把jar包直接复制进hive/lib效果一样,可配置可不配置)(hive依赖包的所在路径)
(
export HADOOP_HOME=/home/soft/hadoop
export HIVE_CONF_DIR=/home/soft/hive/conf
export HIVE_AUX_JARS_PATH=/home/soft/hive/lib
)
打开mysql图形化界面navicat新建查询配置mysql允许任何用户进行远程连接
(在此过程中可以在防火墙上创建新的入站规则允许端口3306开放)
配置hive-site.xml文件:
cp hive-default.xml.template hive-site.xml
(由于hive-site.xml文件中代码量很多,可以把该文件下载到本地,配置好在上传)
(ctrl+f查找全文档加黑关键词,修改为自己虚拟机中的配置)
javax.jdo.option.ConnectionURL
->jdbc:mysql://192.168.181.1:3306/hive?createDatabaseIfNotExist=true
javax.jdo.option.ConnectionDriverName
->com.mysql.jdbc.Driver
javax.jdo.option.ConnectionUsername
->root
javax.jdo.option.ConnectionPassword
->root
# centos本地的临时目录,用来存放hive运行过程中生成的临时文件
hive.exec.local.scratchdir
->/home/soft/hive/tmp(mkdir)
# 将带有system:java.io.tmpdir的路径全部改用绝对路径
hive.server2.logging.operation.log.location
->/hive/tmp/centos/operation_logs
hive.querylog.location
->/hive/tmp/centos
hive.metastore.warehouse.dir
->/root/hive/warehouse
hive.downloaded.resources.dir
->/home/soft/hive/tmp/${hive.session.id}_resources
# hive在hdfs上工作路径
hive.exec.scratchdir
->/hive
# hive在存储数据时在HDFS中的路径
hive.metastore.warehouse.dir
->/root/hive/warehouse
[在hdfs上创建2个文件夹]
----------------------------
$> hdfs dfs -mkdir -p /root/hive
$> hdfs dfs -mkdir -p /root/hive/warehouse
# 为/centos/hive/tmp 文件夹添加用户组写权限,g+w 或者 777
$> hdfs dfs -chmod g+w /hive
$> hdfs dfs -chmod g+w /hive/tmp
$> hdfs dfs -chmod g+w /hive/tmp/warehouse
将mysql的连接包拷贝到~/soft/hive/lib目录下
执行初始化命令
$>schematool -dbType mysql -initSchema
[注意]
1. 保证mysql为64位
2. 保证mysql版本为5.5
至此,hive安装配置已全部完成。