基于Hadoop集群的Hive安装配置
Hive可以安装在任一节点或集群之外,我这里是计划装在Master节点上。
其次Hive也就是在hadoop上加了一层SQL接口,便于通过简单的SQL语言翻译成MapReduce作业。而hdfs的特性是可追加不可修改,但数据库表是可以修改删除的,所以Hive的所存储的数据应当分成两部分,表的元数据外部存储以便修改,表中数据存储在hdfs上即可。
hive是默认将元数据保存在本地内嵌的 Derby 数据库中,但Derby不支持多会话连接,所以我这里选择mysql来存储metadata元数据
准备
- Hive CDH发行版本(http://archive-primary.cloudera.com/cdh5/cdh/5/ ),为了和Hadoop、HBase、flume等版本对应,这里限定使用cdh5.12.1结尾的hive-1.1.0-cdh5.12.1.tar.gz
- 下载mysql驱动(https://dev.mysql.com/downloads/connector/j/ ),文末会放一份我上传的
在线安装并配置MySQL
- 上传MySQL在线安装源的配置文件
用root账号登录master节点
将mysql-community.repo 文件上传到 /etc/yum.repos.d/
目录
将c 文件上传到 /etc/pki/rpm-gpg/
目录
这两文件是指定mysql的yum源,centos系统盘里是没有的。我放了个链接在最后
# Enable to use MySQL 5.6
[mysql56-community]
name=MySQL 5.6 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/7/$basearch/
enabled=1 #enabled=1表明下载使用MySQL5.6,如果要用5.7的话把下面的enabled改为1
gpgcheck=1
gpgkey=file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
# Note: MySQL 5.7 is currently in development. For use at your own risk.
# Please read with sub pages: https://dev.mysql.com/doc/relnotes/mysql/5.7/en/
[mysql57-community-dmr]
name=MySQL 5.7 Community Server Development Milestone Release
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=