一、搭建环境的前提条件
环境:Linux系统
Hadoop-2.6.0
MySQL 5.6
apache-hive-2.3.7
这里的环境不一定需要和我一样,基本版本差不多都ok的,所需安装包和压缩包自行下载即可。但是注意hive和hadoop都是2.x系列版本的。
这里提供一个我下载的hive版本的链接,读者有需要可以自取:http://mirror.bit.edu.cn/apache/hive/hive-2.3.7/
这里需要提前搭建好hadoop环境和MySQL环境,具体可以看我的博客链接:Hadoop2.0伪分布式平台环境搭建和Linux环境下MySQL 5.6安装与配置----亲测有效----纯离线安装
二、搭建的详细步骤
1.使用mysql来存储hive元数据
将hive下载完成后解压到指定目录下,注意这里的3.1版本改成我们前面的2.3版本即可。
![8676103c02a00dbf95262c0e8270e4ce.png](https://i-blog.csdnimg.cn/blog_migrate/15364efa3468bc1403d02fa1e6703f0a.png)
登录mysql
![04dc842ec46805d9aecdecfb2c280123.png](https://i-blog.csdnimg.cn/blog_migrate/5ec451fba2aa97b35d728c143c448901.png)
建立hive用户
![16a3b4db77f5b8c81ae3795b9a5d3019.png](https://i-blog.csdnimg.cn/blog_migrate/9d42c3b9f67844b62581c4730f9fd65b.png)
赋予hive用户足够权限
![3292b1bd892d759fec48e042dd89f0aa.png](https://i-blog.csdnimg.cn/blog_migrate/f414ba71aa9582ee73e1a453bb52b6cb.png)
刷新mysql的系统权限相关表
![7eadcacebf785e5e56c88a76486db37e.png](https://i-blog.csdnimg.cn/blog_migrate/06b3ec1d2e98a4f2b8ad5c6904be0a41.png)
重启mysql服务,注意:这里需要使用 service mysqld restart 这个命令
![b5b2d3ff6bf9860f8390423510fe0acf.png](https://i-blog.csdnimg.cn/blog_migrate/b3874a464695a308be7f58bc17928f1e.png)
使用hive用户登录mysql
![2651b1cfb537f4f3b2550f413afa2006.png](https://i-blog.csdnimg.cn/blog_migrate/65186a7a42408d70c50788b5f0bac67a.png)
创建Hive专用元数据库
![57fba2af901a743fc0d3669e653b9cbe.png](https://i-blog.csdnimg.cn/blog_migrate/eb67c150b693a2f0056a796304d14f3d.png)
2.配置hive
创建配置文件hive-site.xml
![11a1d48c6802c870be720a33c4f0600d.png](https://i-blog.csdnimg.cn/blog_migrate/f33f58537c5d742a573a4ff4836ccea3.png)
在xml输入以下内容,这里面的password是刚才创建hive用户的密码,我这里是123456
![cda9d558da5abb943a25531d534f60d7.png](https://i-blog.csdnimg.cn/blog_migrate/5b3dcda4be8544b4dbe77a8302c673f5.png)
把mysql的jdbc驱动包复制到hive的lib目录下,下载网址https://dev.mysql.com/downloads/connector/j/,读者如有需要可联系我私发。
![1dd394c394b50141e04c921ad500285a.png](https://i-blog.csdnimg.cn/blog_migrate/d44f3fed22a9b6801011094ab5a77a47.png)
hive初始化
![725878f4542ce39f96e89468af98c6b1.png](https://i-blog.csdnimg.cn/blog_migrate/1ad74b9c63b2ca1cbeea6d02e07bcdeb.png)
初始化的结果
![c19ecee94d1d3cc4c5d9d09adb4c0336.png](https://i-blog.csdnimg.cn/blog_migrate/ec67b1d634021a59ab5332bd2e756601.png)
配置PATH环境变量进入profile文件
![277ab79bb961998537e34e50bfb22ea2.png](https://i-blog.csdnimg.cn/blog_migrate/c0b951da7e9d02fc95f2d3fe6ecfbad1.png)
输入以下内容
![b655a8874ac5977ee46c9818f9e87aba.png](https://i-blog.csdnimg.cn/blog_migrate/5f86d890ab2a2f44e4cfb28aaf8db8ce.png)
修改配置文件hive-env.sh ,执行以下命令
![18f2777cbadcb6bd632ddddcf2f7c240.png](https://i-blog.csdnimg.cn/blog_migrate/439438163b25c992a9c81b24519c494d.png)
在hive-env.sh添加以下内容,这里的jdk与hadoop版本视自己本身情况而定。
![0eb1069cd3d76a31a9be18b9710b77d4.png](https://i-blog.csdnimg.cn/blog_migrate/416726434c06a5b0960095cae1a65dfd.png)
3.启动hive
先开启hadoop集群,使用jps查看是否开启
![e338fa8f537d7f7ddcb3bab7c4db6bbd.png](https://i-blog.csdnimg.cn/blog_migrate/dd79cf2a7fa4042d9a860ff5656c7b9d.png)
启动hive
![2b25f68b670975950f20811836124155.png](https://i-blog.csdnimg.cn/blog_migrate/5af4be43eb61f1748c1e9903368d18bd.png)
在Hive中创建表student
![b3ba51096defeb0886b8c2b983f12508.png](https://i-blog.csdnimg.cn/blog_migrate/ca736de50db78caee51ca436e8079c1a.png)
关闭hive的话使用exit;即可
hive>exit;
使用mysql查看
![74049e91b79371fbd050847640e0d721.png](https://i-blog.csdnimg.cn/blog_migrate/974c284b9a60b34197813f5aa521899b.png)
显示hive数据库中的数据表
![d83ae90e8c54a7e885fcf6e264262cdc.png](https://i-blog.csdnimg.cn/blog_migrate/148114dd14e25ad9c9b990c3501ae5f1.png)
查看hive的元数据信息
![bc62903db5009e0ff135e2ae4a553266.png](https://i-blog.csdnimg.cn/blog_migrate/c46428fc4f96755b3138a13e05d75a7b.png)
![7ceb2bca0e0708285e8c2bd73fc6eb0d.png](https://i-blog.csdnimg.cn/blog_migrate/d417efadf964b72ed45cdcda3ba46eab.png)
三、总结
我这篇博文是基于MySQL和Hadoop伪分布式搭建的一个hive平台,在搭建的过程中也遇到了一些问题,也请教了一些同事,最终成功搭建出来了,希望这篇博文能够对各位有所帮助。