Ubuntu16.04安装apache hive
0.常规配置操作可参照以下网址:
0.1 Ubuntu安装hive,并配置mysql作为元数据库http://dblab.xmu.edu.cn/blog/install-hive/
——————以下为学习笔记及错误记录,与常规操作略有差异,供参考———————
1.官网下载apache-hive-2.3.7-bin.tar.gz:https://mirror.bit.edu.cn/apache/hive/
2.移动到Ubuntu里的“下载”文件夹
3.解压到指定路径/usr/local
4.配置环境变量(vim ~/.bashrc)
添加代码:
export HIVE_HOME=/usr/local/hive
export HCAT_HOME=$HIVE_HOME/hcatalog
export HIVE_CONF=$HIVE_HOME/conf
export JAVA_HOME=/usr/local/java/jdk1.8
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HIVE_HOME/bin:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
(环境变量配置完整,否则后面执行start-dfs.sh会报错)
保存后执行
5. 修改/usr/local/hive/conf
下的hive-site.xm
----------------------------------------------------方式1---------------------------------------------------------------
(1)直接在conf下创建(touch)hive-site.xml文件,然后把以下内容粘贴进去
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
<description>username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>hive</value>
<description>password to use against metastore database</description>
</property>
</configuration>
----------------------------------------------------方式2---------------------------------------------------------------
进入hive/conf目录复制文件并编辑,命令如下:
具体修改内容如下:
(1)搜索system:java.io.tmpdir,并修改为/usr/local/hive/tmp。(全文共4处,搜索命令为“/搜索内容”)
搜索system:user.name全部替换为user.name。 (全文共3处)
(2)搜索javax.jdo.option.ConnectionURL,将其下边的value值修改为
jdbc:mysql://localhost:3306/hive?characterEncoding=UTF-8&createDatabaseIfNotExist=true
(3)搜索javax.jdo.option.ConnectionDriverName,将其下边的value值修改为com.mysql.jdbc.Driver
(4)搜索javax.jdo.option.ConnectionUserName,将其下边的value值修改为hive
(5)搜索javax.jdo.option.ConnectionPassword,将其下边的value值修改为hive
(以上方式任选其一,方式1操作简单,方式2相对繁琐,完成后继续按下边的第6点操作)
6.保存后退出,创建hive用户
7.使用hive用户再在mysql中创建名为hive的数据库
(1) hadoop@joker-VirtualBox:~$ mysql -uhive -phive
(2) mysql> create database hive;
(3) mysql> exit
8.启动hive
_____________________________________________________________________________
常见错误:
1. 启动hive时出现如下图错误:
(1)java.lang.NoSuchMethodError :
a. 系统找不到相关jar包
b.同一类型的 jar 包有不同版本存在,系统无法决定使用哪一个
(2)com.google.common.base.Preconditions.checkArgument :guava.jar 包出错
(3)解决方法:
删除hive中低版本的guava-14.0.1.jar包,将hadoop中的guava-27.0-jre.jar复制到hive的lib目录下:
Hive中guava-14.0.1.jar的路径:/usr/local/hive/lib/guava-14.0.1.jar
Hadoop中guava-27.0-jre.jar的路径:/usr/local/hadoop/share/hadoop/common/lib/guava-27.0-jre.jar
2. 启动hive时出现如下图错误:
(1) 元数据库没有初始化
(2)解决方法:输入命令:schematool -dbType mysql -initSchema 后再执行hive
附:
虚拟机与真机之间共享粘贴板和拖放操作设置
1. 打开菜单中的 “设备” -> "安装增强功能" (后续按提示操作)
2. 开启共享粘贴板和拖放的双向功能
3. 完成设置后还无法双向操作的话,使用reboot命令重启后即可
Ubuntu16.04安装apache hive的更多相关文章
- Ubuntu16.04 安装apache+mysql+php(LAMP)
记录下ubuntu环境下安装apache+mysql+php(LAMP)环境. 0x01安装apache sudo apt-get update sudo apt-get install apache ...
- ubuntu16.04安装jdk,tomcat
ubuntu16.04安装jdk,tomcat 最近装了一下tomcat,网上的教程很多,我也试了很多次,但是有一些教程关于tomcat配置是错误的,让我走上了歧途.差点重装系统,还好王总及时出手帮助 ...
- 阿里云学生服务器搭建网站-Ubuntu16.04安装php开发环境
阿里云学生服务器搭建网站(2)-Ubuntu16.04安装php开发环境 优秀博文:https://www.linuxidc.com/Linux/2016-10/136327.htm https:/ ...
- Ubuntu16.04安装Ambari 2.7.3
概念了解 Ambair介绍 Apache Ambari是一个用于支持大数据软件供应 管理与监控软件.它也是一个分布式软件,分为Ambair-Server与Ambari-Client两个部分.在生产环境 ...
- ubuntu16.04安装wordpress
ubuntu16.04安装wordpress和centos7安装wordpress存在一定的差异. 当然共性大于差异. 共性是lamp环境. wordpress的必备环境. 先共性再差异. 一.搭建l ...
- Ubuntu16.04 安装JDK Tomcat
Ubuntu16.04安装jdk,下载linux中的64版本 需要下载jdk,tomcat安装包 tar.gz版本的 http://pan.baidu.com/s/1mi4WVhA 安装JDK: ho ...
- ubuntu16.04安装jdk/mysql/tomcat (使用apt-get命令)
安装jdk 更新系统安装包缓存,并且安装OpenJDK8 sudo apt-get update sudo apt-get install openjdk-8-jdk 检查jdk版本 java -ve ...
- Ubuntu16.04 安装openjdk-7-jdk
Ubuntu16.04 安装openjdk-7-jdk sudo apt-get install openjdk-7-jre 或者sudo apt-get install openjdk-7-jdk ...
- Ubuntu16.04安装GTK3主题:OSX-Arc
Ubuntu16.04安装GTK3主题:OSX-Arc GTK3主题:OSX-Arc描述: 前几个月,Gnome3.20升3.22的时候,出现了大量主题崩溃的现象,其中包括Arc.Flatabulou ...
随机推荐
- 修改文件权限后,再git pull后提示文件已修改
问题: 从git上面pull下来脚本文件,在Linux上面执行.执行chmod +x 后,如果再次有修改文件,git pull 的提示会终止.每次都要使用 git checkout -- <fi ...
- MySql分区、分表和分库
MySql分区.分表和分库 数据库的数据量达到一定程度之后,为避免带来系统性能上的瓶颈.需要进行数据的处理,采用的手段是分区.分片.分库.分表. 一些问题的解释: 1.为什么要分表和分区? 日常开发中 ...
- dubbo微服务架构
架构 节点角色说明 调用关系说明 服务容器负责启动,加载,运行服务提供者. 服务提供者在启动时,向注册中心注册自己提供的服务. 服务消费者在启动时,向注册中心订阅自己所需的服务. 注册中心返回服务提供 ...
- 2021牛客暑期多校训练营9C-Cells【LGV引理,范德蒙德行列式】
正题 题目链接:https://ac.nowcoder.com/acm/contest/11260/C 题目大意 一个平面上,\(n\)个起点\((0,a_i)\)分别对应终点\((i,0)\),每次 ...
- FastAPI(43)- 基于 pytest + requests 进行单元测试
FastAPI 的单元测试 对于服务端来说,通常会对功能进行单元测试,也称白盒测试 FastAPI 集成了第三方库,让我们可以快捷的编写单元测试 FastAPI 的单元测试是基于 Pytest + R ...
- Python代码阅读(第11篇):展开嵌套列表
Python 代码阅读合集介绍:为什么不推荐Python初学者直接看项目源码 本篇阅读的代码实现了展开嵌套列表的功能,将一个嵌套的list展开成一个一维list(不改变原有列表的顺序). 本篇阅读的代 ...
- jmx_prometheus_javaagent+prometheus+alertmanager+grafana完成容器化java监控告警(二)
一.拓扑图 二.收集数据 2.1前期准备 创建共享目录,即为了各节点都创建该目录,有两个文件,做数据共享 /home/target/prom-jvm-demo 1.下载文件 jmx_prometheu ...
- 工作日常-SQL不能乱写
前言:刚接手别人的项目没多久,在昨天的一次上线中无故躺坑,且该大兄弟已经离职,不得不帮他填坑,整完后,今天想搞一个总结,结论就是:SQL不能乱写. 搜索关键词:Cause: java.sql.SQLE ...
- zabbix和prometheus的优缺点对比
使用Prometheus(https://github.com/prometheus)原生的k8s服务发现驱动,采集容器化信息:通过微服务参数配置,暴露运行状态信息提供给prometheus,实现微服 ...
- Java泛型背后是什么?
文Java中泛型的应用,让大家更好地理解泛型,以及常说的泛型类型擦除是什么概念,举一个简单的例子,如下: 这里可以看出来在代码编写阶段就已经报错了,不能往string类型的集合中添加int类型的数据. ...