hive的安装模式有两种,一种时用自带的derby数据库,另一中时使用MySQL作为元数据库,hive仅仅是一个客户端董局,不存在集群概念,因此安装的时候无需都安装,哪里需要装哪里,多个节点安装的时候MySQL的元数据库一定要相同(在同一个MySQL同一个库上)否则客户端获取的数据不一致
一、前提Hadoop正常运行
mysql正常运行
hadoop 伪分布安装教程:(29条消息) hadoop的伪分布环境搭建(hadoop-2.7.5)_qq_45672631的博客-CSDN博客
MySQL(通用二进制包)安装教程:
(29条消息) centos7下MySQL的安装(通用二进制安装)_qq_45672631的博客-CSDN博客
二、hive安装步骤 1.下载搜索hive官网
Downloads (apache.org)
下载MySQL.jdbc.jar 驱动,驱动版本有兼容性,这里我的MySQL是5.7.27,我就下了个8.0.7的选Platform lndependent
MySQL :: Download Connector/J
利用xftp文件传到虚拟机上 (或其他的文件传送工具)
2.解压文件tar -zxf apache- hive-2.3.9- bin.tar.gz (hive的文件名)
mv apache-hive-2.3.9-bin ../hive
3.修改配置文件主要有两个配置文件要进行修改:hive-default.xml 和 hive-site.xml 。在hive安装的conf目录下,没有这两个配置文件,只有一个"hive-default.xml.template",所以我们要复制一个"hive-default.xml.template",命名为hive-default.xml,及新建一个文件hive-site.xml。
原来的文件
在/usr/local/hive/conf下将hive-default.xml.template 复制一个hive-default.xml
cp hive-default.xml.template hive-default.xml
vim hive-site.xml(复制下面的修改)
4.将mysqljdbc.jar移动到hive安装路径下的lib目录下(桌面版的直接移动,其他的就命令) 5.初始化数据库(schemaTool completed 出现才是初始化完成,初始化失败都是配置文件,哪里,我上一个MySQL博客中,没有说要创建myhive这个数据库,所以初始化报错了,)javax.jdo.option.ConnectionUserName root javax.jdo.option.ConnectionPassword 123 javax.jdo.option.ConnectionURL jdbc:mysql://lcy-2:3306/myhive javax.jdo.option.ConnectionDriverName com.mysql.jdbc.Driver
1.这个错误,网上百度说是你的用户没有权限,在hive-site.xml文件中连接用户哪里记得修改
(29条消息) Hive连接mysql时报错:message from server: "Host 'DESKTOP-73BL0HG' is not allowed to connect to this MySQL_成长的路y的博客-CSDN博客
2.密码错了,我以为上面配置的密码是root用户登录的密码,根据上面你修改权限的密码该hive-site.xml中的密码
3.这里说明上诉两个问题解决了,但你MySQL中没有myhive这个数据库
和上面的对比一下连接用户哪里你可用自己的主机IP,报错就根据上诉的三种情况做更改
看到连接url后面的myhive了吗?第三种错误登录MySQL创建一个数据库即可
javax.jdo.option.ConnectionUserName root javax.jdo.option.ConnectionPassword 123456 javax.jdo.option.ConnectionURL jdbc:mysql://localhost:3306/myhive javax.jdo.option.ConnectionDriverName com.mysql.jdbc.Driver
hive1.0版本不需要初始化元数据库
schematool -dbType mysql -initSchema
在haoop启动的前提下,hive进入
6.测试
下面红框中的则是我是用8.0版本的驱动包,实在找不到对应版本怎么下
a.创建test数据库
create database test;
b.使用数据库
use test;
c.创建表tt
create table tt(id int);
d.查看test数据库中所有表
show tables;
按照参考的博客这里就完成了,没办法这也是边学边写,也是花了我几天时间,之前装MySQL时就花了两天,因为之前的虚拟机装的太多了,MySQL装成功一次,修改密码哪里出了问题,我就想着卸载重装,好家伙,网上搜到的博客简直了就一个命令,命令之后怎么样也不说,我根据博客删干净了,先停服务 删文件,在按照之前的配置,数据库初始化哪里就出错了,就这样一直卡着,没办法还要交作业,就用重新配置一台虚拟机。大家参考就行,特别时hive配置文件哪里,很多博客都有不同的配置法,但这个我确实弄出来了,可以仅供参考。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)