Hadoop 的安装过程不再赘述
具体方法见之前的文章
在 CentOS 7.2 下安装 Hadoop 2.7.5 并搭建伪分布式环境的方法
http://blog.csdn.net/heatdeath/article/details/78867093
1 安装 MySQL
在安装之前,需要先安装MySql,Hive默认使用内嵌的DerBy作为元数据库,但是鉴于其单会话限制,这里使用Mysql作为元数据库
检查是否装有Mysql:
$ netstat -tap | grep mysql
如果有输出,说明已经有mysql,如果没有需要安装
CentOS7环境中默认把ifconfig和netstat取消掉了,ifconfig使用ip addr代替,netstat则需要安装net-tools:yum install net-tools
由于在CentOS7的yum中没有mysql,所以需要使用mysql的repo源进行安装:
下载mysql的repo源:
$ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
如果没有wget命令需要安装,使用yum模式
$ sudo yum -y install wget
安装mysql的rpm包:
$ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
$ yum install mysql-community-server
2 安装 Hive
2.1 修改环境变量
修改环境变量文件 /etc/profile
$ vim /etc/profile
在文件中增添以下内容
export HIVE_HOME=/home/hadoop/apache-hive-1.2.1-bin
export PATH=$PATH:$HIVE_HOME/bin
使配置文件生效
$ source /etc/profile
2.2 在 MySQL 中创建 Hive 用户
$ mysql -uroot -proot
mysql> create user 'hive' identified by 'hive';
mysql> grant all privileges on *.* to 'hive' with grant option;
mysql> flush privileges;
2.3 复制 MySQL 驱动程序
驱动程序的下载地址:
https://dev.mysql.com/downloads/file/?id=401352
2.4 配置文件重命名
cd /usr/hadoop-2.6.4/thirdparty/apache-hive-2.1.0-bin/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.5 修改 hive-env.sh
export JAVA_HOME=/usr/java/jdk-1.8.0_101 ##Java路径
export HADOOP_HOME=/usr/hadoop-2.6.4 ##Hadoop安装路径
export HIVE_CONF_DIR=$HIVE_HOME/conf ##Hive配置文件路径
2.6 修改hive-site.xml
尾行模式执行:18,$-1d
删除18到倒数第二行(显示行号尾行模式使用 set nu
)
在configuration之间添加如下内容(可根据自己的需要调整配置):
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
<description>username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>hive</value>
<description>password to use against metastore database</description>
</property>
2.7 格式化元数据仓库
$ schematool -dbType mysql -initSchema
再输入 $ hive
即可启动 Hive 啦
3 参考资料
1、centos6.8平台上安装hive(基于Mysql6.5 和hadoop2.7.3伪分布集群下)
http://blog.csdn.net/lanoucongling/article/details/53912767
2、CentOS7 下Hive2.1.0 安装配置
http://blog.csdn.net/qq_31573519/article/details/53410139
3、Centos7下Hive-1.2.1安装部署
http://blog.csdn.net/u011523533/article/details/50480511