hive和hadoop环境配合运行,所以在安装配置hive之前,需要确保hadoop环境已经搭建好并能正常运行,hadoop安装配置可参考(本文使用的是2.1.0版本):http://my.oschina.net/u/574036/blog/733040
安装hive前,需要安装一个存储元数据的数据库,本文中使用mysql,安装请参考:
2、解压到安装目录:tar -zxvf apache-hive-2.1.0-bin.tar.gz -C /home/hive/
环境变量
# Hive
export HIVE_HOME=/home/hive/apache-hive-2.1.1/
export HIVE_CONF_DIR=$HIVE_HOME/conf
export CLASSPATH=$CLASSPATH:$HIVE_HOME/lib
export PATH=$PATH:$HIVE_HOME/bin
3、修改配置文件
进入到配置文件目录:
cd apache-hive-2.1.0/conf/
在配置文件目录中全是模板,修改模板为配置文件:
(pre: hive-env.sh.template 复制并命名为hive-env.sh 设置hadoop等环境变量 可选)
a.将hive-default.xml.template 复制并命名为hive-site.xml:
cp -a hive-default.xml.template hive-site.xml
b.修改hive-site.xml(这里使用mysql数据库)
javax.jdo.option.ConnectionURL
jdbc:mysql://localhost:3306/hive
javax.jdo.option.ConnectionDriverName
com.mysql.jdbc.Driver
javax.jdo.option.ConnectionUserName
hive
javax.jdo.option.ConnectionPassword
hive
c.将mysql 数据库驱动器拷贝到lib目录下
4、运行hive(运行hive前需将hadoop启动):
a.初始化数据库 bin/ schematool -dbType mysql -initSchema
b.运行 bin/hive
如果启动时报错:
Exception in thread "main" java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D
则执行以下操作:
a.将hive-site.xml 配置文件中所有路径为:${system:java.io.tmpdir} 改成绝对路径如 /home/hive/temp/hive-2.1.0
b.hive-log4j2.properties.template 复制并命名为hive-log4j2.properties(也要注意文件中的路径):
cp -a hive-log4j2.properties.template hive-log4j2.properties