一、Hive安装环境装备安装JDK
安装hadoop集群
二、下载Hive安装包
根据需要下载相应的版本,这里以hive-1.2.2为例。
三、Hive安装包解压
1.根据hadoop集群的系统资源消耗情况,选择进程消耗比较小的进行安装。这里以node2节点为例。hive安装包通过xshell中的xftp工具上传到node2上。
2.解压hive安装包
#1.把hive的压缩安装包解压到/opt/bigdata/目录下
[root@node2 ~]# tar -xzvf apache-hive-1.2.2-bin.tar.gz -C /opt/bigdata/ #输入完命令后回车
#2.切换到bigdata目录下
[root@node2 ~]# cd /opt/bigdata/
#3.修改hive安装目录的所属用户和组为hadoop:hadoop
[root@node2 bigdata]# chown -R hadoop:hadoop apache-hive-1.2.2-bin/
#4.修改hive安装目录的读写权限
[root@node2 bigdata]# chmod -R 755 apache-hive-1.2.2-bin/
3.添加环境变量
#1.切换用户
[root@node2 ~]# su - hadoop
Last login: Mon Aug 12 11:00:21 CST 2019 on pts/1
[hadoop@node2 ~]$ vi .bash_profile
#2.环境变量生效
[hadoop@node2 ~]$ source .bash_profile
四、安装MySQL数据库安装wget工具
#1.安装wget工具
[root@node2 ~]# yum install -y wget
Loaded plugins: fastestmirror
Determining fastest mirrors
#省略部分日志
Complete!
#2.下载mysql的yum源安装文件,使用下面的命令就直接下载了安装用的Yum Repository,大概25KB的样子,然后就可以直接yum安装了。
[root@node2 ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm#3.安装mysql的yum源配置
[root@node2 ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm2.yum安装MySQL
[root@node2 ~]# yum -y install mysql-community-server3.启动MySQL
[root@node2 ~]# systemctl start mysqld.service
[root@node2 ~]# systemctl status mysqld.service
4.登录MySQL
#1.查看默认密码
[root@node2 ~]# grep "password" /var/log/mysqld.log
2019-07-17T07:48:39.339873Z 1 [Note] A temporary password is generated for
#2.显示默认密码:n8Ae>q70PeHG
#3.使用命令mysql -uroot -p登录mysql
[root@node2 ~]# mysql -uroot -p # 回车后会提示输入密码
Enter password: #n8Ae>q70PeHG
#4.使用下面命令修改密码为:!Qaz123456
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '!Qaz123456';
#5.再次执行show databases;
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
五、安装Hive客户端
Hive客户端有三种安装方式:内嵌模式、本地模式和远程模式。此处以本地模式为例。
1.内嵌模式
元数据保存在内嵌的derby数据库中,只允许一个会话链接,尝试多个会话链接时会报错,不适合企业开发,就不说了。
2.本地模式
①复制hive配置文件
#1.在conf目录下从hive-default.xml.template复制出来一个配置文件hive-site.xml文件
#hive-site.xml文件中配置链接mysql的相关信息
[hadoop@node2 conf]$ cp hive-default.xml.template hive-site.xml
#2.使用vi命令编辑hive-site.xml文件并设置行号,按shift 输入:set number回车发现行号设置成功
[hadoop@node2 conf]$ vi hive-site.xml
设置行号命令":set number",再删除部分内容命令“:18,3913d”输入后回车,会发现标签中间多余的内容已经删除掉了。
②在标签中填入以下内容
hive.metastore.warehouse.dir
/user/hive_remote/warehouse
hive.metastore.local
true
javax.jdo.option.ConnectionURL
jdbc:mysql://localhost/hive_remote?createDatabaseIfNotExist=true
javax.jdo.option.ConnectionDriverName
com.mysql.jdbc.Driverjavax.jdo.option.ConnectionUserName
root
javax.jdo.option.ConnectionPassword
!Qaz123456
③下载MySQL驱动包
④将下载的mysql驱动包复制到hive的lib目录下
[root@node2 ~]# cp mysql-connector-java-5.1.46.jar /opt/bigdata/apache-hive-1.2.2-bin/lib/
3.远程模式
就是mysql的安装和hive的安装没有在同一台机器,和本地模式最大的区别就是在hive-site.xml中,我们需要修改下mysql的ip地址和端口号。但是我们需要注意以下两个问题:
①hive-site.xml中的mysql安装主机的ip地址和端口号。
hive.metastore.warehouse.dir
/user/hive_remote/warehouse
hive.metastore.local
true
javax.jdo.option.ConnectionURL
jdbc:mysql://192.168.200.13/hive_remote?createDatabaseIfNotExist=true
javax.jdo.option.ConnectionDriverName
com.mysql.jdbc.Driverjavax.jdo.option.ConnectionUserName
root
javax.jdo.option.ConnectionPassword
!Qaz123456
②访问mysql的用户名的访问权限需要进行设置。
--授权使用root用户名和密码(!Qaz123456),可以通过任意机器(%符号代替所有机器)访问mysql数据库
mysql> grant all on *.* to root@'%' identified by '!Qaz123456';
Query OK, 0 rows affected, 1 warning (0.00 sec)
--使上一步授权生效
mysql> flush privileges;
六、启动Hive
[hadoop@node2 ~]$ hive
hive>
到这一步提示,说明Hive已经完成安装。