Hive的搭建需要在hadoop的基础上,如果没有完成hadoop的搭建请先参考之前的文章。
首先,我们需要把hive的包解压缩到/usr/lib目录下
sudo tar -zxvf apache-hive-2.1.0-bin.tar.gz -C /usr/lib
我们对这个目录的名称进行一下修改
sudo mv apache-hive-2.1.0-bin hive
然后我们添加HADOOP_HOME属性,打开/etc/profile文件
sudo vim /etc/profile
在文件末尾添上
export HADOOP_HOME=/usr/lib/hive
export PATH=${HADOOP_HOME}/bin:$PATH
保存退出
执行source /etc/profile
命令使配置生效,这样就可以在任何目录下执行hive命令了。
接着需要配置一下hive的配置信息。
由于我们这里使用的是mysql数据库,所以在执行下列操作的之前请确保你已经安装了mysql服务。
首先我们把hive目录下的conf/hive-default.xml.template文件复制一份放在同一目录下改名为hive-site.xml
hive会对比这两个文件中的信息,如果这两个文件中的信息不一至时会以hive-site.xml文件中的内容为准,所以我们清空hive-site.xml中的配置信息,然后把需要自定义的属性配置写在这个目录中。
<configuration>
<property>
<name>hive.metastore.local</name>
<value>true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://127.0.0.1:3306/hive?characterEncoding=UTF-8</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>mysql</value>
</property>
</configuration>
由于链接mysql数据库使用了jdbc的方式所以我们需要有mysql-connector-java-5.1.40-bin.jar包,然后把这个包放到hive的lib目录下
然后我们在mysql中创建一个新用户hive以及一个新的数据库hive
首先登陆mysql
mysql -uroot -p
然后输入自己的密码
create user 'hive' identified by 'mysql';
这样就创建了一个新用户hive,密码为mysql
grant all privileges on *.* to 'hive' with grant option;
然后添加所有的权限
flush privileges;
刷新权限列表
然后创建一个hive数据库
create database hive;
然后退出mysql
接着执行hive,出现hive>命令行就说明配置成功。