hadoop伪分布下的hive安装

安装hive的时候,我尝试了很多次,最终才成功的。借鉴了 Hadoop3.1.2伪分布式环境下安装和配置Hive3.1.2

①hadoop-3.1.2伪分布的安装,我参照的博客是:超详细的Hadoop3.1.2架构单机、伪分布式、完全分布式安装和配置

②hive-3.1.2压缩包下载:Index of /apache/hive (bit.edu.cn)

③mysql的java驱动压缩包下载:MySQL :: Download Connector/J


一、启动hadoop

第一步先进入hadoop所在的文件夹:

[hadoop@master ~]$cd mod
[hadoop@master mod]$cd hadoop
[hadoop@master hadoop]$cd sbin
[hadoop@master sbin]$./start-all.sh
[hadoop@master sbin]$jps

如果在命令行中输入jps之后,显示出6个代码,hadoop则启动成功,否则hadoop为启动成功,如下图


二、MySql下载安装

  • 创建mod文件夹下创建mysql的文件夹:
    
    [hadoop@master ~]$ mkdir mysql

     

  • 进入root账户后下载mysql yum包,如果wget未安装,则先使用yum install -y wget安装一下。
    [hadoop@master mod]# su root
    [root@master mod]# cd mysql
    [root@master mysql]# wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm

     

  • 安装mysql源:
    [root@master mysql]# rpm -Uvh mysql57-community-release-el7-10.noarch.rpm

     

  • 安装mysql服务端:
    [root@master mysql]# yum install -y mysql-community-server

     

  • 启动mysql,为了方便设置成开机自启动:

 

[root@master mysql]# systemctl start mysqld.service
[root@master mysql]# systemctl enable mysqld
[root@master mysql]# systemctl daemon-reload
[root@master mysql]# systemctl status mysqld.service
  • 首先获取系统自动生成的随机密码
[root@master mysql]# grep "password" /var/log/mysqld.log

执行后“local host:”后的就是初始密码 

  • 修改MySQL密码:
    [root@master mysql]# mysql -uroot -p

 

修改时要求密码不能过于简单,包括大小写、其他字符等.

>mysql alter user 'root'@'localhost' identified by 'Mysql-111';

Query OK, 0 rows affected (0.11 sec)

设置远程连接时,使用grant权限方式:

mysql> grant all privileges on *.* to 'root'@'%' identified by 'Mysql-111' with grant option;
Query OK, 0 rows affected, 1 warning (0.03 sec)
 
mysql> flush privileges;
Query OK, 0 rows affected (0.02 sec)
 

为了后续的HIVE 测试成功,可以先在mysql里创建一个数据库mydb。

mysql> create database mydb;

 三、Hive安装

  1. 将hive安装包解压至/home/hadoop,解压完成后将文件夹重命名为hive

    [hadoop@master soft]$ tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /home/hadoop
    [hadoop@master soft]$ cd /home/hadoop
    [hadoop@master ~]$ mv apache-hive-3.1.2-bin hive

     

  2. 同样方式,将mysql的驱动安装包解压至/home/hadoop,解压完成后将文件夹重命名为mysql-con,并将mysql的java驱动并拷贝到hive的lib路径下:

    [hadoop@master soft]$ tar -zxvf mysql-connector-java-8.0.16.jar.gz -C /home/hadoop
    [hadoop@master soft]$ cd /home/hadoop
    [hadoop@master ~]$ mv mysql-connector-java-8.0.16 mysql-con
    [hadoop@master ~]$ cp mysql-con/mysql-connector-java-8.0.16.jar hive/lib
  3.  配置Hive环境变量,设置为所有用户的环境变量,则需使用root用户登录,编辑/etc/profile文件
    [hadoop@master ~]$ su root
    [root@master ~]# vi /etc/profile

  最文件末尾输入a即可编辑 

插入以下命令 

export HIVE_HOME=/home/hq/hive

export PATH=$PATH:$HIVE_HOME/bin

退出 保存即可(esc键+输入:wq +回车)

使用source命令使得环境变量设置生效:

 

使用source命令使得环境变量设置生效:

[root@master ~]# source /etc/profile

      4.查看hive版本,为防止报错,先将hadoop/share/hadoop/common/lib中的guava文件复制粘贴到 hive/lib中并在将hive中lib中原有的guava文件删除。

[hadoop@master ~]$ cd hive
[hadoop@master ~]$ hive -version

 如图示则成功,如需退出,在hive>后输入' exit; '

 

      5.由于涉及到hive执行时有关数据存放路径,所以可以先去创建好目录

[hadoop@master hive]$ hdfs dfs -mkdir -p /home/hadoop/hive/warehouse
[hadoop@master hive]$ hdfs dfs -mkdir -p /tmp
[hadoop@master hive]$ hdfs dfs -chmod g+w /tmp
[hadoop@master hive]$ hdfs dfs -chmod g+w /home
[hadoop@master hive]$ hdfs dfs -chmod g+w /home/hadoop
[hadoop@master hive]$ hdfs dfs -chmod g+w /home/hadoop/hive
[hadoop@master hive]$ hdfs dfs -chmod g+w /home/hadoop/hive/warehouse

      6.进入hive下的conf目录开始修改hive-env.sh和hive-site.xml文件,需要修改的配置文件模板拷贝并重命名即可


[hadoop@master hive]$ cd conf
[hadoop@master conf]$ ll
[hadoop@master conf]$ cp hive-env.sh.template hive-env.sh
[hadoop@master conf]$ cp hive-default.xml.template hive-site.xml
[hadoop@master hive]$ cd conf
[hadoop@master conf]$ ll
总用量 632
-rw-r--r--. 1 hadoop hadoop   1596 8月  23 2019 beeline-log4j2.properties.template
-rw-r--r--. 1 hadoop hadoop 300482 8月  23 2019 hive-default.xml.template
-rw-r--r--. 1 hadoop hadoop   2538 5月  26 00:33 hive-env.sh
-rw-r--r--. 1 hadoop hadoop   2365 8月  23 2019 hive-env.sh.template
-rw-r--r--. 1 hadoop hadoop   2274 8月  23 2019 hive-exec-log4j2.properties.template
-rw-r--r--. 1 hadoop hadoop   3086 8月  23 2019 hive-log4j2.properties.template
-rw-r--r--. 1 hadoop hadoop 300407 5月  26 00:44 hive-site.xml
-rw-r--r--. 1 hadoop hadoop   2060 8月  23 2019 ivysettings.xml
-rw-r--r--. 1 hadoop hadoop   3558 8月  23 2019 llap-cli-log4j2.properties.template
-rw-r--r--. 1 hadoop hadoop   7163 8月  23 2019 llap-daemon-log4j2.properties.template
-rw-r--r--. 1 hadoop hadoop   2662 8月  23 2019 parquet-logging.properties
[hadoop@master conf]$ vi hive-env.sh

在末尾加入一下代码即可

export HADOOP_HOME=/home/hadoop/mod/hadoop

export HIVE_CONF_DIR=/home/hadoop/mod/hive/conf
export JAVA_HOME=/home/hadoop/jdk

export HIVE_AUX_JARS_PATH=/home/hadoop/hive/lib
使用source命令使其更新生效:

[hadoop@master conf]$ source hive-env.sh

然后开始修改hive-site.sml,为了后续配置先在hive目录下创建一个log文件夹(注意:hive-site.xml配置完成后,不需使用source命令使其更新生效)配置我参照的是Hadoop之Hive简介与安装、测试

[hadoop@master conf]$ cd ..
[hadoop@master hive]$ mkdir log
[hadoop@master hive]$ cd conf
[hadoop@master conf]$ vi hive-site.xml

  我们只需要查找所需修改的东西将对应位置进行更改就行了

查找方式:vi hive-site.xml执行后,直接输入:/hive.querylog.locatio

找到后,将<value> </value>中即框内写出刚才创建的log路径,其他的同理即可

      7.初始化元数据库

[hadoop@master conf]$ cd ..
[hadoop@master hive]$ cd bin
[hadoop@master bin]$ ./schematool -dbType mysql -initSchema

出现以下情况则初始化成功: 

 


     8.hive测试使用

命令行输入hive,出现hive>命令行就表明启动成功了。

     9.启动hiveserver2,在bin目录下输入./hiveserver2,启动hive服务:

hive默认web的端口为10002,此时在浏览器地址栏输入:ip:10002,就可以看到web监控页面,但我没成功,具体什么原因也不太清楚,但是之后少hive安装配置成功,可以使用了。

 

总结

如果有其他的方法,大家也可以分享一下。

 

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值