[root@tjt01 ~]# cd /opt
[root@tjt01 opt]#tar -zxvf apache-hive-3.0.0-bin.tar.gz -C /usr/local/
将目录重命名为hive目录:
[root@tjt01 opt]# cd /usr/local/[root@tjt01 local]#mv apache-hive-3.0.0-bin hive
[root@tjt01 local]#
修改环境变量/etc/profile:
[root@tjt01 local]# vi /etc/profile
在profile文件中添加如下内容:
export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
生效profile:
[root@tjt01 local]# vi /etc/profile
[root@tjt01 local]# source/etc/profile
执行 hive --version查看hive版本
[root@tjt01 local]# hive --version
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found bindingin [jar:file:/usr/local/hive/lib/log4j-slf4j-impl-2.10.0.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found bindingin [jar:file:/opt/hadoop-2.7.6/share/hadoop/common/lib/slf4j-log4j12-1.7.10.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]
Hive3.0.0Git git://vgargwork.local/Users/vgarg/repos/hive.apache.master.latest -r ce61711a5fa54ab34fc74d86d521ecaeea6b072a
Compiled by vgarg on Fri May 18 11:38:33 PDT 2018From source with checksum 81fcb93b608965ed7ac968bae1187fab
[root@tjt01 local]#
2、安装Mysql
启动Mysql服务:
[root@tjt03 ~]# sudo service mysqld start
启动过程报错了下,简单解决如下:
[root@tjt03 ~]# /etc/init.d/mysqld start
Starting mysqld (via systemctl): Jobfor mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" fordetails.
[FAILED]
[root@tjt03~]# mkdir /var/run/mysqld/[root@tjt03~]# chown mysql.mysql /var/run/mysqld/[root@tjt03~]# sudoservice mysqld start
Starting mysqld (via systemctl): [ OK ]
[root@tjt03~]#
设置Mysql开机启动:
[root@tjt03 ~]# systemctl enable mysqld
mysqld.serviceis not a native service, redirecting to /sbin/chkconfig.
Executing/sbin/chkconfig mysqld on
[root@tjt03 ~]# systemctl daemon-reload[root@tjt03 ~]#
3、配置
3.1 修改hive-site.xml
[root@tjt01 conf]# cd ~[root@tjt01~]# cd /usr/local/hive/conf/[root@tjt01 conf]#cp hive-default.xml.template hive-site.xml
[root@tjt01 conf]# vim hive-site.xml
xml内容如下:
javax.jdo.option.ConnectionURL
jdbc:mysql://172.16.114.132:3306/hive
javax.jdo.option.ConnectionDriverName
com.mysql.jdbc.Driver
javax.jdo.option.ConnectionUserName
root
javax.jdo.option.ConnectionPassword
TANjintao@520
hive.metastore.schema.verification
false
3.2 复制Mysql的程序程序到hive/lib下
mysql-connector-java.jar
3.3 创建Mysql下的hive数据库
mysql> create database hive;
Query OK, 1 row affected (0.01 sec)
mysql>
3.4 在Mysql中hive的schema创建
[root@tjt01 bin]# schematool -dbType mysql -initSchema
SLF4J: Class pathcontainsmultiple SLF4J bindings.
SLF4J: Found bindingin [jar:file:/usr/local/hive/lib/log4j-slf4j-impl-2.10.0.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J: Found bindingin [jar:file:/opt/hadoop-2.7.6/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings foran explanation.
SLF4J: Actual bindingis of type [org.apache.logging.slf4j.Log4jLoggerFactory]Metastore connection URL: jdbc:mysql://172.16.114.132:3306/hive
Metastore Connection Driver : com.mysql.jdbc.Driver
Metastore connectionUser: root
Starting metastoreschema initialization to 3.0.0Initialization script hive-schema-3.0.0.mysql.sql
Initialization script completed
schemaTool completed[root@tjt01 bin]#
4、测试
进入hive之前,开启hadoop,键入hive进入hive:
[root@tjt01 bin]# start-dfs.sh
Starting namenodeson [tjt01]tjt01: starting namenode, loggingto /opt/hadoop-2.7.6/logs/hadoop-root-namenode-tjt01.out
tjt03: starting datanode, loggingto /opt/hadoop-2.7.6/logs/hadoop-root-datanode-tjt03.out
tjt02: starting datanode, loggingto /opt/hadoop-2.7.6/logs/hadoop-root-datanode-tjt02.out
tjt01: starting datanode, loggingto /opt/hadoop-2.7.6/logs/hadoop-root-datanode-tjt01.out
Starting secondary namenodes[tjt02]tjt02: starting secondarynamenode, loggingto /opt/hadoop-2.7.6/logs/hadoop-root-secondarynamenode-tjt02.out[root@tjt01 bin]#hive
创建hive数据库:
hive> create databasehive_1;
OK
Time taken:0.709seconds
hive>show databases;
OKdefaulthive_1
Time taken:0.238 seconds, Fetched: 2row(s)
hive>
观察Mysql下hive数据库的变化:
mysql> select * from DBS;
在hive_1下创建一个hive_01:
hive> usehive_1;
OK
Time taken:0.066seconds
hive> create table hive_01 (id int, name string);
OK
Time taken:1.235seconds
hive>
再次观察Mysql下hive数据库的变化:
mysql> select * from TBLS;
到此为止,Mac安装Hive完美收官!