当前位置:   article > 正文

hadoop伪分布下的hive安装_hive可以在伪分布式上

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所在的文件夹:

  1. [hadoop@master ~]$cd mod
  2. [hadoop@master mod]$cd hadoop
  3. [hadoop@master hadoop]$cd sbin
  4. [hadoop@master sbin]$./start-all.sh
  5. [hadoop@master sbin]$jps

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


二、MySql下载安装

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

     

  • 进入root账户后下载mysql yum包,如果wget未安装,则先使用yum install -y wget安装一下。
    1. [hadoop@master mod]# su root
    2. [root@master mod]# cd mysql
    3. [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,为了方便设置成开机自启动:

 

  1. [root@master mysql]# systemctl start mysqld.service
  2. [root@master mysql]# systemctl enable mysqld
  3. [root@master mysql]# systemctl daemon-reload
  4. [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

 

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

  1. >mysql alter user 'root'@'localhost' identified by 'Mysql-111';
  2. Query OK, 0 rows affected (0.11 sec)

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

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

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

mysql> create database mydb;

 三、Hive安装

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

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

     

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

    1. [hadoop@master soft]$ tar -zxvf mysql-connector-java-8.0.16.jar.gz -C /home/hadoop
    2. [hadoop@master soft]$ cd /home/hadoop
    3. [hadoop@master ~]$ mv mysql-connector-java-8.0.16 mysql-con
    4. [hadoop@master ~]$ cp mysql-con/mysql-connector-java-8.0.16.jar hive/lib
  3.  配置Hive环境变量,设置为所有用户的环境变量,则需使用root用户登录,编辑/etc/profile文件
    1. [hadoop@master ~]$ su root
    2. [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文件删除。

  1. [hadoop@master ~]$ cd hive
  2. [hadoop@master ~]$ hive -version

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

 

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

  1. [hadoop@master hive]$ hdfs dfs -mkdir -p /home/hadoop/hive/warehouse
  2. [hadoop@master hive]$ hdfs dfs -mkdir -p /tmp
  3. [hadoop@master hive]$ hdfs dfs -chmod g+w /tmp
  4. [hadoop@master hive]$ hdfs dfs -chmod g+w /home
  5. [hadoop@master hive]$ hdfs dfs -chmod g+w /home/hadoop
  6. [hadoop@master hive]$ hdfs dfs -chmod g+w /home/hadoop/hive
  7. [hadoop@master hive]$ hdfs dfs -chmod g+w /home/hadoop/hive/warehouse

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

  1. [hadoop@master hive]$ cd conf
  2. [hadoop@master conf]$ ll
  3. [hadoop@master conf]$ cp hive-env.sh.template hive-env.sh
  4. [hadoop@master conf]$ cp hive-default.xml.template hive-site.xml
  5. [hadoop@master hive]$ cd conf
  6. [hadoop@master conf]$ ll
  7. 总用量 632
  8. -rw-r--r--. 1 hadoop hadoop 1596 823 2019 beeline-log4j2.properties.template
  9. -rw-r--r--. 1 hadoop hadoop 300482 823 2019 hive-default.xml.template
  10. -rw-r--r--. 1 hadoop hadoop 2538 526 00:33 hive-env.sh
  11. -rw-r--r--. 1 hadoop hadoop 2365 823 2019 hive-env.sh.template
  12. -rw-r--r--. 1 hadoop hadoop 2274 823 2019 hive-exec-log4j2.properties.template
  13. -rw-r--r--. 1 hadoop hadoop 3086 823 2019 hive-log4j2.properties.template
  14. -rw-r--r--. 1 hadoop hadoop 300407 526 00:44 hive-site.xml
  15. -rw-r--r--. 1 hadoop hadoop 2060 823 2019 ivysettings.xml
  16. -rw-r--r--. 1 hadoop hadoop 3558 823 2019 llap-cli-log4j2.properties.template
  17. -rw-r--r--. 1 hadoop hadoop 7163 823 2019 llap-daemon-log4j2.properties.template
  18. -rw-r--r--. 1 hadoop hadoop 2662 823 2019 parquet-logging.properties
  19. [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简介与安装、测试

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

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

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

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

      7.初始化元数据库

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

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

 


     8.hive测试使用

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

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

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

 

总结

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

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/785792
推荐阅读
相关标签
  

闽ICP备14008679号