Ubuntu16.04 Hive安装配置

前端之家收集整理的这篇文章主要介绍了Ubuntu16.04 Hive安装配置前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

说来自己断断续续自学大数据Hadoop已经有一段时间了,不过觉得还是晕乎乎的,各种看了就忘,好记性不如烂笔头,还是记录下吧,也希望能对后面自学的人能有所帮助。

我的系统环境是Ubuntu16.04

我安装的软件:

MysqL

Jdk1.8.0_121

apache-hive-2.1.1-bin

MysqL-connector-java-5.1.42-bin.jar

hadoop2.8.0


安装过程:

  1. 因为很长时间没有用过Ubuntu系统中自带MysqL,而且密码怎么输都不对,所以我还是删掉重新安装了下。

sudo rm /var/lib/MysqL/ -R

sudo rm /etc/MysqL/ -R

sudo apt-get autoremove MysqL* --purge

sudo apt-get remove apparmor

sudo apt-get install MysqL-server

service MysqL start

MysqL -u root -p

输入自己设置的root密码就能进入MysqL啦;

然后创建hive数据库

create database hive

show databases

后来想起来其实可以重置密码的,下面重置密码的方法是试过OK的。

到/etc/MysqL/MysqL.conf.d下,编辑MysqLd.cnf文件,在[MysqLd]段下加入一行“skip-grant-tables”

重启MysqL服务 sudo service MysqL restart

用空密码进入MysqL管理命令行,切换到MysqL库。

然后按截图中步骤操作重置root密码为123456

回到sudo gedit /etc/MysqL/MysqL.conf.d/MysqLd.cnf,把刚才加入的那一行“skip-grant-tables”注释或删除掉。

再次重启MysqL服务sudo service MysqL restart,使用新的密码登陆,修改成功。


2. 解压JDK,HIVE,HADOOP的压缩包,最好将这些解压后的文件放到同一个目录下,省的以后直接搞不清楚找不到,我是都放在hadoopEnv目录下的。

使用命令vim ~/.bashrc进行环境配置,我的配置如下,大家可根据直接的路径进行修改


然后source ~/.bashrc将配置生效

接着一定要记得将MysqL-connector-java-5.1.42-bin.jar放到hive目录的lib目录下,否则到时运行hive的时候会报错,无法连接到数据库的!!!

同时在hive目录下新建warehouse文件夹。

3. Hive配置

Hive的conf目录下,新建hive-site.xml,进行一些简单的配置,我的配置如下:

  1. <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  2. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
  3. <configuration>
  4. <property>
  5. <name>hive.Metastore.warehouse.dir</name>
  6. <value>/home/hadoopEnv/hive/warehouse</value>
  7. <description>location of default database for the warehouse</description>
  8. </property>
  9. <property>
  10. <name>javax.jdo.option.ConnectionURL</name>
  11. <value>jdbc:MysqL://localhost:3306/hive</value>
  12. <description>JDBC connect string for a JDBC Metastore</description>
  13. </property>
  14. <property>
  15. <name>javax.jdo.option.ConnectionDriverName</name>
  16. <value>com.MysqL.jdbc.Driver</value>
  17. <description>Driver class name for a JDBC Metastore</description>
  18. </property>
  19. <property>
  20. <name>javax.jdo.option.ConnectionPassword </name>
  21. <value>填上你自己的连接数据库的密码</value>
  22. </property>
  23. <property>
  24. <name>javax.jdo.option.ConnectionUserName</name>
  25. <value>root</value>
  26. <description>Username to use against Metastore database</description>
  27. </property>
  28. </configuration>

PS:当然你也可以给HIVE新建个MysqL的帐号密码,然后hive-site.xml配置那里改成HIVE的MysqL帐号密码;但是一定得记得在MysqL root帐号登录的情况下给它全部权限,否则后面运行hive会一直提示访问数据库被拒。

  1. #创建数据库
  2. MysqL> create database hive;
  3. #赋予访问权限
  4. MysqL> grant all privileges on hive.* to root@localhost identified by '密码' with grant option;
  5. MysqL> flush privileges;


然后命令行

  1. cp hive-env.sh.template hive-env.sh

4. Hadoop配置(我这里配的是本地模式)

(具体可以查看apache hadoop官网)

首先要配置ssh,不细说了;

hadoop的etc目录下修改配置文件信息

core-site.xml


hdfs-site.xml

mapred-site.xml


因为我现在只是搭的本地,所以先ssh localhost;

再到hadoop安装目录下,运行sbin/start-all.sh;再jps查看是否正确启动hadoop的所有进程。
如果启动报错:


解决办法:
修改/etc/hadoop/hadoop-env.sh中设JAVA_HOME。
应当使用绝对路径
export JAVA_HOME=${JAVA_HOME} //文档原来的(错误

export JAVA_HOME=/home/wangly/hadoopEnv/jdk_ 1.8.0_121 //正确,应该这么改


在HDFS上建立/tmp和/user/hive/warehouse目录,并赋予组用户写权限。

  1. HADOOP_HOME/bin/hadoop fs -mkdir /tmp
  2. HADOOP_HOME/bin/hadoop fs -mkdir -p /user/hive/warehouse
  3. HADOOP_HOME/bin/hadoop fs -chmod g+w /tmp
  4. HADOOP_HOME/bin/hadoop fs -chmod g+w /user/hive/warehouse

5. 运行hive

运行hive --service Metastore ,启动hive服务

要记得初始hive数据库!!!

.


完成~

其实搭建的过程中遇到了各种error!!然后各种网上搜解决方案,最终终于成功了,大家遇到问题的时候一定要耐心,看错误日志,一步步解决哦!

猜你在找的Ubuntu相关文章