Hive是一个数据仓库基础工具在Hadoop中用来处理结构化数据。它架构在Hadoop之上,总归为大数据,并使得查询和分析方便。并提供简单的sql查询功能,能够将sql语句转换为MapReduce任务进行运行。
环境介绍:html
hadoop:3.2.0java
jdk:1.8mysql
Linux:centos7sql
mysql:5.6数据库
1.mysql安装配置apache
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm rpm -ivh mysql-community-release-el7-5.noarch.rpm
执行yum install -y mysql -server Systemctl start mysql 完成
2.配置建立hive须要的数据库以及帐户vim
create database hive;
create user 'hadoop1'@'localhost' identified by '12345678'; grant all privileges on *.* to 'hadoop1'@'localhost' with grant option;
3.下载hivecentos
wget http://mirror.bit.edu.cn/apache/hive/hive-3.1.1/apache-hive-3.1.1-bin.tar.gz
tar xzvf apache-hive-3.1.1-bin.tar.gz
cd hive-3.1.1
4.配置hive以及hadoop的变量记得source 让bianl生效。架构
vim /etc/profile export HIVE_HOME=/home/apache-hive-3.1.1-bin export HADDOP_HOME=/home//home/hadoop-3.2.0 export PATH=.:${JAVA_HOME}/bin/:$HIVE_HOME/bin:$HADOOP_HOME/bin:$PATH
5.编辑hive-site.xml 和hive-env.sh文件maven
此文件是经过hive-default.xml.template 复制出来的,须要删除原文件全部内容后新增以下配置,由于hive在启动的时候会加载两个文件,default.xml和Hive-site.xml,因此若是直接新增一下内容是无效的。 [root@localhost conf]# cat hive-site.xml <configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>hadoop</value>####用户注意修改 </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>123456</value>####密码注意修改 </property> <property> <name>hive.metastore.schema.verification</name> <value>false</value> </property> </configuration> [root@localhost conf]#
hive-env.sh
6.在初始化前查看是否有mysql的connectorjar包若是没有请下载
[root@localhost apache-hive-3.1.1-bin]# ll lib/mysql-
mysql-connector-java-5.1.47.jar
下载地址:http://central.maven.org/maven2/mysql/mysql-connector-java/找对应的下载便可。
wget http://central.maven.org/maven2/mysql/mysql-connector-java/5.1.47/mysql-connector-java-5.1.47.jar
7.初始化hive
[root@localhost apache-hive-3.1.1-bin]# bin/schematool -dbType mysql -initSchema SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/home/apache-hive-3.1.1-bin/lib/log4j-slf4j-impl-2.10.0.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/home/hadoop-3.2.0/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory] Metastore connection URL: jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true Metastore Connection Driver : com.mysql.jdbc.Driver Metastore connection User: hadoop Starting metastore schema initialization to 3.1.0 Initialization script hive-schema-3.1.0.mysql.sql ······································此处省略 太多log了---------- Initialization script completed schemaTool completed
8.出现初始化完成以后能够去mysql数据库中查看hive下的表
会出现74张表。到此hive的配置和部署完成。