进行大数据组件的Hive库的安装:
1.首先从hive官方网站下载也进行下载:
https://hive.apache.org/downloads.html
注意选择hive版本的时候需要注意hadoop的版本,hive必须是在hadoop的基础上才能够启动:
安装过程报如下错误,安装文档中进行修改后即好了:
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/walykyy/article/details/82971562
Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D
修改hive-site.xml文件
<property>
<name>hive.exec.local.scratchdir</name>
<value>$HIVE_HOME/iotmp</value>
<description>Local scratch space for Hive jobs</description>
</property>
<property>
<name>hive.querylog.location</name>
<value>$HIVE_HOME/iotmp</value>
<description>Location of Hive run time structured log file</description>
</property>
<property>
<name>hive.downloaded.resources.dir</name>
<value>$HIVE_HOME/iotmp</value>
<description>Temporary local directory for added resources in the remote file system.</description>
</property>
————————————————
版权声明:本文为CSDN博主「与自己作战」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/walykyy/article/details/82971562
重新执行的时候又报错:
schematool -dbType mysql -initSchema
Schema initialization FAILED! Metastore state would be inconsistent !!
后按照如下方法解决(我是将配置放到了最下面解决的):
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_22650745/article/details/82853039
schematool -dbType mysql -initSchema时报错。网上教程都是说在文件头部加上mysql的连接配置,但是hive-site.xml.templat中原本是有derby的配置,这样就会被下面的derby配置覆盖,导致初始化失败。方法就是可以将mysql配置放在最下面,或者删除derby的配置
————————————————
版权声明:本文为CSDN博主「玉de王小狗」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_22650745/article/details/82853039
但是当执行hive进入命令行后,查询其中的数据库:
出现如下错误:
hive>
> show databases;
FAILED: IllegalArgumentException java.net.URISyntaxException: Relative path in absolute URI: file:./$HIVE_HOME/iotmp/fef28b9a-a421-4a53-8a2d-e43cf2ca4e40/hive_2019-09-06_11-43-53_217_6769807244516030197-1
hive>
如图:
将路径改成绝对路径后,如下:
修改hive-site.xml文件
<property>
<name>hive.exec.local.scratchdir</name>
<value>/data/hive/iotmp</value>
<description>Local scratch space for Hive jobs</description>
</property>
<property>
<name>hive.querylog.location</name>
<value>/data/hive/iotmp</value>
<description>Location of Hive run time structured log file</description>
</property>
<property>
<name>hive.downloaded.resources.dir</name>
<value>/data/hive/iotmp</value>
<description>Temporary local directory for added resources in the remote file system.</description>
</property>
重新执行:schematool -dbType mysql -initSchema
又报:Error: Table 'CTLGS' already exists (state=42S01,code=1050
然后发现是mysql库中已经初始化了一些表,然后图中表已存在,但是无法单独删除,因为有外键的原因,因此我给库删了重新建,然后重新初始化就好了
接着我就进入hive:
然后执行 show databases 查看databases:
如图,查看数据库时正常,有一个default的,但是当我创建数据库的时候异常了:感觉是我的创建命令有问题,修复如下执行成功
show databases;
create database myhive;