前期准备:hive版本2.1.0 hadoop版本2.9.1(一般hadoop版本在2以上就支持hive2以上版本)
提前hadoop环境配置好,主要是hadoop的hdfs环境(可以是伪分布式,也可以是完全分布式或是HA)
hive2.1.0版本下载地址:
链接:https://pan.baidu.com/s/1lRtth8mXNt4XVKMoy9eu4Q
提取码:g93d
1、解压压缩文件
$>tar -zxvf apache-hive-2.1.0-bin.tar.gz
$>mv apache-hive-2.1.0-bin hive2.1.0 (重新命名)
2、建立软连接方便后续调用
$>ln -s /home/hadoop/hive/hive2.1.0 /soft/hive
3、修改环境变量(/etc/profile)(建议切换到root用户下进行编辑)
HIVE_HOME=/soft/hive
export PATH=$PATH:$HIVE_HOME/bin
修改后:$>source /etc/profile (使变量文件生效)
4、检验hive是否安装成功:
$>hive --version
备注:hive默认数据库是derby,后续继续介绍将介绍如何将hive的默认数据库修改为mysql
5、将mysql-connector-java-5.1.17.jar 的mysql连接jar报引入到 安装目录的lib目录下(本机:/soft/hive/lib)
6、进入hive的配置目录下(本机:/soft/hive/conf)
$>cp hive-default.xml.template hive-site.xml(复制默认配置并修改)
修改hive-site.xml文件内的配置
1>创建修改mysql的链接
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
<description>password to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
<description>Username to use against metastore database</description>
</property>
<!-- 注意连接地址使用当前使用的数据库连接地址 -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://192.168.44.1:3306/hive</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
备注:记得将原来的删除或是修改掉
2>修改"${system"开头的路径(保存一些日志和操作,也为了防止路径报错)
<!-- ${system.. 类似参数设置路径 -->
<property>
<name>hive.server2.logging.operation.log.location</name>
<value>/home/hadoop/hive/logs</value>
<description>Top level directory where operation logs are stored if logging functionality is enabled</description>
</property>
<property>
<name>hive.exec.local.scratchdir</name>
<value>/home/hadoop/hive/scratchdir</value>
<description>Local scratch space for Hive jobs</description>
</property>
<property>
<name>hive.downloaded.resources.dir</name>
<value>/home/hadoop/hive/dir</value>
<description>Temporary local directory for added resources in the remote file system.</description>
</property>
<property>
<name>hive.querylog.location</name>
<value>/home/hadoop/hive/querylog</value>
<description>Location of Hive run time structured log file</description>
</property>
7、mysql中创建hive数据库(与上面一致),便于hive的使用
8、格式化hive数据库:
$>schematool -dbType mysql -initSchema (进入/soft/hive/bin 目录下执行,初始化hive的元数据(表结构)到mysql中。)
备注:之后查看mysql数据库中的hive数据库中是否格式化成功 (本机显示)
9、测试hive是否配置mysql成功
$>hive (开启hive数据库操作)
当前进入hive后执行 >>show databases; (查看数据库)
到此的话,基本hive配置成功。