赞
踩
安装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@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为启动成功,如下图
-
- [hadoop@master ~]$ mkdir mysql
- [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
[root@master mysql]# rpm -Uvh mysql57-community-release-el7-10.noarch.rpm
[root@master mysql]# yum install -y mysql-community-server
- [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:”后的就是初始密码
[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安装包解压至/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
同样方式,将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
- [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
出现以下情况则初始化成功:
命令行输入hive,出现hive>命令行就表明启动成功了。
9.启动hiveserver2,在bin目录下输入./hiveserver2,启动hive服务:
hive默认web的端口为10002,此时在浏览器地址栏输入:ip:10002,就可以看到web监控页面,但我没成功,具体什么原因也不太清楚,但是之后少hive安装配置成功,可以使用了。
如果有其他的方法,大家也可以分享一下。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。