Hive安装与配置

你需要掌握:
1.Hive的基本安装; 2.Mysql的安装与设置; 3.Hive 的配置。

注意:Hive的安装与配置建立在Hadoop已安装配置好的情况下。

hadopp安装与配置

Hive 的基本安装

从  官网  下载Hive二进制包,下载好放在/opt目录下。

  • 进入/opt目录,解压apache-hive-3.1.0-bin.tar.gz到该目录下,并将解压的文件重命名为hive
  1. cd /opt
    tar -zxvf apache-hive-3.1.0-bin.tar.gz
    mv apache-hive-3.1.0-bin hive
  • 设置环境变量,编辑vi /etc/profile,在末尾添加以下两行代码;
  1. export HIVE_HOME=/opt/hive
    export PATH=$HIVE_HOME/bin:$PATH
  • source /etc/profile
    使环境生效;
  • 查看hive是否安装成功:hive --version

出现hive版本就说明安装成功,但是可以看到其中有一些警告信息,是由于包的冲突引起的。我们只需删除掉引起冲突的包即可:rm /opt/hive/lib/log4j-slf4j-impl-2.10.0.jar

Mysql 的安装与设置

已安装MySQL数据库,在本地没有安装可以采用以下命令进行安装:

  1. sudo apt-get install mysql-server #安装mysql服务
    apt-get install mysql-client #安装mysql客户端
    sudo apt-get install libmysqlclient-dev #安装相关依赖环境

注意:安装过程中会提示设置密码什么的,不要忘了设置。

安装完成之后可以使用如下命令来检查是否安装成功。

sudo netstat -tap | grep mysql

通过上述命令检查之后,如果看到有MySQLsocket处于listen 状态则表示安装成功。

Hive需要数据库来存储metastore的内容,因此我们需要配置一下MySQL数据库。

  • 下载mysql驱动;

我已经帮你下载好放在/opt目录下,进入该目录并进行以下操作:

  1. tar -zxvf mysql-connector-java-5.1.45.tar.gz
    cd mysql-connector-java-5.1.45
    cp mysql-connector-java-5.1.45-bin.jar /opt/hive/lib/

接下来介绍MySQLHive做的设置。

  • 使用root用户登录MySQL数据库;
  1. mysql -uroot -p123123 -h127.0.0.1
  • 创建数据库实例hiveDB

    1. create database hiveDB;
  • 创建用户bee,密码为123123

    1. create user 'bee'@'%' identified by '123123';
  • 授权用户bee拥有数据库实例hiveDB的所有权限;

  1. grant all privileges on hiveDB.* to 'bee'@'%' identified by '123123';
  • 刷新系统权限表。
  1. flush privileges;
Hive 的配置

/opt/hive/conf目录下,修改hive-site.xmlhive-env.sh两个文件。

hive-site.xml

hive-site.xml保存Hive运行时所需要的相关配置信息。

  • 如果目录下没有该文件,我们直接创建一个:vi hive-site.xml,将以下内容复制到其中(按i进入编辑模式后再进行粘贴)。
  1. <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    <configuration>
    <!-- WARNING!!! This file is auto generated for documentation purposes ONLY! -->
    <!-- WARNING!!! Any changes you make to this file will be ignored by Hive. -->
    <!-- WARNING!!! You must make your changes in hive-site.xml instead. -->
    <!-- Hive Execution Parameters -->
    <property>
    <name>hive.metastore.warehouse.dir</name>
    <value>/opt/hive/warehouse</value>
    </property>
    <property>
    <name>hive.exec.scratchdir</name>
    <value>/opt/hive/tmp</value>
    </property>
    <property>
    <name>hive.querylog.location</name>
    <value>/opt/hive/logs</value>
    </property>
    <property>
    <name>hive.server2.thrift.port</name>
    <value>10000</value>
    </property>
    <property>
    <name>hive.server2.thrift.bind.host</name>
    <value>localhost</value>
    </property>
    <property>
    <name>hive.server2.enable.doAs</name>
    <value>true</value>
    </property><property>
    <name>hive.session.id</name>
    <value>false</value>
    </property>
    <property>
    <name>hive.session.silent</name>
    <value>false</value>
    </property><property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hiveDB?createDatabaseIfNotExist=true</value>
    </property>
    <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
    </property>
    <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>bee</value>
    <!-- 这里是之前设置的数据库 -->
    </property>
    <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <!-- 这里是数据库密码 -->
    <value>123123</value>
    </property>
    </configuration>

完成后,在命令行模式(按 Esc),输入:wq!保存退出。

hive-env.sh

由于Hive是一个基于Hadoop分布式文件系统的数据仓库架构,主要运行在 Hadoop分布式环境下,因此,需要在文件hive-env.sh中指定Hadoop相关配置文件的路径,用于Hive访问HDFS(读取fs.defaultFS属性值)和 MapReduce(读取mapreduce.jobhistory.address属性值)等Hadoop 相关组件。

  • 如果目录下没有该文件,我们就以模板复制一个cp hive-env.sh.template hive-env.shvi hive-env.sh打开文件,在文件末尾添加变量指向 Hadoop 的安装路径:
    1. HADOOP_HOME=/usr/local/hadoop #在本地环境安装,要根据自己hadoop的路径来确定
    至此Hive配置完成。 第一次启动Hive前还需要执行初始化命令:
  • schematool -dbType mysql -initSchema
  • start-dfs.sh

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/180956.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

万人拼团团购小程序源码系统+拼团设置+拼团管理 附带完整的搭建教程

随着互联网的快速发展&#xff0c;电子商务和社交电商的兴起&#xff0c;团购作为一种高效的营销策略和消费方式&#xff0c;受到了广大消费者的热烈欢迎。在此背景下&#xff0c;我们开发了一款基于微信小程序的万人拼团团购系统&#xff0c;旨在为用户提供一种更加便捷、高效…

python爬虫进阶教程之如何正确的使用cookie

文章目录 前言一、获取cookie二、程序实现三、动态获取cookie四、其他关于Python爬虫技术储备一、Python所有方向的学习路线二、Python基础学习视频三、精品Python学习书籍四、Python工具包项目源码合集①Python工具包②Python实战案例③Python小游戏源码五、面试资料六、Pytho…

lxml 总结

xm 和 lxml库 哪个更好用点 1. 性能&#xff1a; lxml 通常比 xml.etree.ElementTree 更快。lxml 使用了 C 编写的底层解析器&#xff0c;因此在处理大型 XML 文档时可能更高效。 如果性能对你的应用很重要&#xff0c;特别是在处理大型 XML 文件时&#xff0c;选择 lxml 可能…

这款高性能分布式ID生成器,现在是你的了~

这是DDD&微服务系列的第17篇&#xff0c;欢迎持续关注~ 概述 在软件开发过程中&#xff0c;我们经常会遇到需要生成全局唯一流水号的场景&#xff0c;例如各种流水号和分库分表的分布式主键ID。特别是在使用MySQL数据库时&#xff0c;除了要求流水号具有“全局唯一”性外&…

继电保护-变压器纵联差动保护MATLAB仿真模型

微❤关注“电气仔推送”获得资料&#xff08;专享优惠&#xff09; 原理概述 差动保护是在两端设置的保护&#xff0c;通过比较两端测回来的电气量&#xff0c;进而看是否需要动作&#xff0c;纵联差动保护是变压器主保护。 纵联差动保护基本原则 双绕组变压器实现纵联差动…

泄密零容忍!迅软科技打造设计图纸安全防线,助您无忧创作!

对于建筑设计、鞋服设计、动漫设计、平面设计等设计行业而言&#xff0c;海量设计图纸都以电子数据的形式存在企业的终端电脑上&#xff0c;这些图纸蕴含着企业的核心竞争资源&#xff0c;一旦泄露将给企业带来巨大的经济损失。 因此&#xff0c;迅软科技采用了先进的数据加密技…

Ruoyi-cloud / 若依 SpringCloud服务器部署

1、redis 环境 服务器安装redis &#xff0c;注意 密码 端口 2、mysql 环境 服务器安装 mysql 5.7 以上的版本 代码中的sql 文件夹中有 sql 文件 创建数据库ry-cloud并导入数据脚本ry_2021xxxx.sql&#xff08;必须&#xff09;&#xff0c;quartz.sql&#xff08;可选&…

同旺科技 USB 转 RS-485 适配器 -- 隔离型

内附链接 1、USB 转 RS-485 适配器 隔离版主要特性有&#xff1a; ● 支持USB 2.0/3.0接口&#xff0c;并兼容USB 1.1接口&#xff1b; ● 支持USB总线供电&#xff1b; ● 支持Windows系统驱动&#xff0c;包含WIN10 / WIN11 系统32 / 64位&#xff1b; ● 支持Windows …

使用vue-admin-template时,需要注意的问题,包括一定要去除mock.js注释

在使用vue-admin-template等前端框架时&#xff0c;如果你没有打算用他们的mock数据&#xff0c;在生产环境下一定要注释mock引用的代码&#xff0c;虽然它没有被调用&#xff0c;但是如果你不注释&#xff0c;就会被打包进去。 找到main.js&#xff0c;看如下代码&#xff1a…

八、Lua数组和迭代器

一、Lua数组 数组&#xff0c;就是相同数据类型的元素按一定顺序排列的集合&#xff0c;可以是一维数组和多维数组。 在 Lua 中&#xff0c;数组不是一种特定的数据类型&#xff0c;而是一种用来存储一组值的数据结构。 实际上&#xff0c;Lua 中并没有专门的数组类型&#xf…

根据端口查找进程

关闭kibana kibana自带命令 kibana没有提供关闭命令&#xff0c;通过命令 ps -ef|grep kibana查找不到kibana相关的信息。 可以通过进程暴露的端口来查找 netstat -anltp|grep 5601获取到进程号&#xff0c;然后kill掉进程 kill -9 进程号Docker管理Kibana 但是如果使用D…

OpenHarmony亮相MTSC 2023 | 质量效率共进,赋能应用生态发展

11月25日&#xff0c;MTSC 2023第十二届中国互联网测试开发大会在深圳登喜路国际大酒店圆满举行。大会以“软件质量保障体系和测试研发技术交流”为主要目的&#xff0c;旨在为行业搭建一个深入探讨和交流的桥梁和平台。OpenAtom OpenHarmony&#xff08;简称“OpenHarmony”&a…

Linux概述

Linux概述 1、操作系统 ​ 定义&#xff1a;操作系统(Operating System&#xff0c;简称OS)是管理计算机硬件与软件资源的计算机程序 ​ 作用&#xff1a;是把计算机系统中对硬件设备的操作封装起来&#xff0c;供应用软件调用&#xff0c;也是提供一个让用户与系统交互的操…

C++基础 -10- 类的构造函数

类的构造函数类型一 使用this指针给类内参数赋值 class rlxy {public:int a;rlxy(int a, int b, int c){this->aa;this->bb;this->cc;cout << "rlxy" << endl;}protected:int b;private:int c; };int main() {rlxy ss(10, 20, 30); }类的构造…

winform 程序多语言

新建一个winform程序添加资源文件 在多语言的资源文件中设置key以及value设置button根据环境选择语言文件 namespace WindowsFormsMulLang {public partial class Form1 : Form{public Form1(){InitializeComponent();}public static ResourceManager rm new ResourceManager(…

PHP+vue+elementui高校学生社团信息管理系统o7q4a

社团是由高校用户依据兴趣爱好自愿组成&#xff0c;按照章程自主开展活动的用户组织。高校社团是实施素质教育的重要途径和有效方式&#xff0c;在加强校园文化建设、提高用户综合素质、引导用户适应社会、促进用户交流等方面发挥着重要作用&#xff0c;是新形势下有效凝聚用户…

位运算算法【1】

文章目录 &#x1f34a;面试题 01.01. 判定字符是否唯一&#x1f96d;题目&#x1f351;算法原理&#x1f95d;解法一&#xff1a;哈希表&#x1f95d;解法二&#xff1a;位图 &#x1f951;代码实现 &#x1f33d;268. 丢失的数字&#x1f96c;题目&#x1f344;算法原理&…

Leetcode—2336.无限集中的最小数字【中等】

2023每日刷题&#xff08;四十四&#xff09; Leetcode—2336.无限集中的最小数字 实现代码 class SmallestInfiniteSet {set<int> s; public:SmallestInfiniteSet() {for(int i 1; i < 1000; i) {s.insert(i);}}int popSmallest() {int res *s.begin();s.erase(s…

webpack如何处理css

一、准备工作 新建目录 添加样式 .word {color: red; } index.js添加dom元素&#xff0c;添加一个css word import ./css/index.css;const div document.createElement("div"); div.innerText "hello word!!!"; div.className "word"; do…

Unity安装

DAY1 下载Unity 打开Unity3D官网&#xff0c;下载Unity Hub&#xff0c;管理Unity的软件。链接https://unity.cn/releases (可能需要注册账号&#xff0c;就正常注册登录即可) 如果是新版的hub&#xff0c;可能长下面这个样子&#xff0c;还是英文的&#xff0c;点击圆圈的设…