目录
一、安装准备
1.hive安装包 ,mysql连接驱动
链接:https://pan.baidu.com/s/1lIMygm5UsJTq91gstQCFBA
提取码:o7pi
2.hive是依赖hadoop系统的,还应保证hadoop集群搭建成功 hadoop集群搭建
二、三种模式简介
- 嵌入模式(使用内嵌的Derby数据库存储元数据,只允许一个客户端)
- 本地模式(使用MySQL数据库)
- 远程模式(使用MySQL数据库)
三、嵌入模式
1.将hive安装包上传到Linux的/export/software文件夹下
2.将压缩包解压至/export/servers目录下
[root@hadoop01 software]# tar -zxvf apache-hive-1.2.2-bin.tar.gz -C /export/servers/
3.切换到hive安装目录启动hive(不要忘记开启hadoop)
[root@hadoop01 software]# cd /export/servers/apache-hive-1.2.2-bin/
[root@hadoop01 apache-hive-1.2.2-bin]# bin/hive
4.内嵌模式启动成功
四、本地模式
1.将mysql连接驱动的jar包上传到linux
[root@hadoop01 lib]# cd /export/software/
[root@hadoop01 software]# rz
解压该文件并把jar包复制到hive的lib目录下
[root@hadoop01 software]# tar -zxvf mysql-connector-java-5.1.47.tar.gz
[root@hadoop01 software]# cp mysql-connector-java-5.1.47/mysql-connector-java-5.1.47.jar /export/servers/apache-hive-1.2.2-bin/lib/
2.安装MySQL服务
[root@hadoop01 /]# yum install mysql mysql-server mysql-devel
3.启动并登录mysql
[root@hadoop01 /]# /etc/init.d/mysqld start
[root@hadoop01 /]# mysql
4.修改登陆mysql的root用户的密码并设置远程登陆权限
mysql> USE mysql;
//修改root用户的密码
mysql> UPDATE user SET password=PASSWORD('123456') WHERE user='root';
//设置允许远程登录
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'% ' IDENTIFIED BY '123456' WITH GRANT OPTION;
//强制写入
mysql> FLUSH PRIVILEGES;
5.修改hive-env.sh配置文件
(1)复制模板配置文件
[root@hadoop01 /]# cd /export/servers/apache-hive-1.2.2-bin/conf/
[root@hadoop01 conf]# cp hive-env.sh.template hive-env.sh
(2)向该文件添加hadoop环境变量,添加内容如下:(=后面为hadoop安装目录)
export HADOOP_HOME=/export/servers/hadoop
6.添加hive-site.xml文件
(1)新建hive-site.xml文件
[root@hadoop01 conf]# vi hive-site.xml
(2)添加如下内容
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
<description>mysql连接协议</description>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>JDBC驱动</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
<description>用户名</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
<description>密码</description>
</property>
</configuration>
7.使用CLI方式启动hive
[root@hadoop01 conf]# cd /export/servers/apache-hive-1.2.2-bin/
[root@hadoop01 apache-hive-1.2.2-bin]# bin/hive
五、远程模式
1将hadoop01服务器安装的hive程序分别复制到hadoop02和hadoop03
[root@hadoop01 /]# scp -r /export/servers/apache-hive-1.2.2-bin/ hadoop02:/export/servers/
[root@hadoop01 /]# scp -r /export/servers/apache-hive-1.2.2-bin/ hadoop03:/export/servers/
2.在hadoop01服务器上启动Hiveserver2服务
[root@hadoop01 /]# cd /export/servers/apache-hive-1.2.2-bin/
[root@hadoop01 apache-hive-1.2.2-bin]# bin/hiveserver2
3.在hadoop02服务器连接hive服务
[root@hadoop02 ~]# cd /export/servers/apache-hive-1.2.2-bin/
//输入远程连接命令
[root@hadoop02 apache-hive-1.2.2-bin]# bin/beeline
//输入远程连接协议
beeline> ! connect jdbc:hive2://hadoop01:10000
//输入用户名和密码
Enter username for jdbc:hive2://hadoop01:10000: root
Enter password for jdbc:hive2://hadoop01:10000: ******
4.连接成功