十八、本地配置Hive

1、配置MYSQL

mysql> alter user 'root'@'localhost' identified by 'Yang3135989009';
Query OK, 0 rows affected (0.00 sec)mysql> grant all on *.* to 'root'@'%';
Query OK, 0 rows affected (0.00 sec)mysql>  flush privileges;
Query OK, 0 rows affected (0.01 sec)

2、配置Hadoop

(1)进入Hadoop用户

hadoop@node1:/export/server/hadoop/etc/hadoop$ vim core-site.xml

(2)修改文件如下

        给予Hadoop用户权限

        </property><property><name>hadoop.proxyuser.hadoop.hosts</name><value>*</value></property> <property>                      <name>hadoop.proxyuser.hadoop.groups</name><value>*</value></property>

3、下载解压Hive

需要注意,此处应该切换到Hadoop用户

[hive下载链接]http://archive.apache.org/dist/hive/hive-3.1.3/apache-hive-3.1.3-bin.tar.gz

# 解压到node1服务器的:/export/server/内
tar -zxvf apache-hive-3.1.3-bin.tar.gz -C /export/server/
# 设置软连接
ln -s /export/server/apache-hive-3.1.3-bin /export/server/hive

4、下载MySQL驱动

需要注意,此处应该将用户切换为Hadoop。

[MySQL的驱动包]:https://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.34/mysql-connector-java-5.1.34.jar

# 将下载好的驱动jar包,放入:Hive安装文件夹的lib目录内
mv mysql-connector-java-5.1.34-sources.jar /export/server/hive/lib/ 

5、配置Hive

(1)修改hive-env.sh名称并配置path

目录:

hadoop@node1:/export/server/hive/conf$ pwd
/export/server/hive/conf

改名:

hadoop@node1:/export/server/hive/conf$ mv hive-env.sh.template hive-env.sh

配置: 

export HADOOP_HOME=/export/server/hadoop
export HIVE_CONF_DIR=/export/server/hive/conf
export HIVE_AUX_JARS_PATH=/export/server/hive/lib

(2)创建hive-site.xml

<configuration><property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&amp;useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8</value></property><property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.jdbc.Driver</value></property><property><name>javax.jdo.option.ConnectionUserName</name><value>root</value></property><property><name>javax.jdo.option.ConnectionPassword</name><value>密码</value></property><property><name>hive.server2.thrift.bind.host</name><value>node1</value></property><property><name>hive.metastore.uris</name><value>thrift://node1:9083</value></property><property><name>hive.metastore.event.db.notification.api.auth</name><value>false</value></property></configuration>

6、初始化元数据库

(1)配置hive在MySQL中的元数据库

CREATE DATABASE hive CHARSET UTF8;

(2)初始化元数据库

# 进入hive路径
cd /export/server/hive
# 初始化MySQL元数据库
bin/schematool -initSchema -dbType mysql -verbos

(3)验证 

        如果初始化成功,那么再次进入MySQL,我们可以在MySQL的hive库中看见274张新建的元数据的表。

mysql> show tables;
+-------------------------------+
| Tables_in_hive                |
+-------------------------------+
| AUX_TABLE                     |
| BUCKETING_COLS                |
| CDS                           |
| COLUMNS_V2                    |
| COMPACTION_QUEUE              |
| COMPLETED_COMPACTIONS         |
| COMPLETED_TXN_COMPONENTS      |
| CTLGS                         |
| DATABASE_PARAMS               |
| DBS                           |
| DB_PRIVS                      |
| DELEGATION_TOKENS             |
| FUNCS                         |
| FUNC_RU                       |
| GLOBAL_PRIVS                  |
| HIVE_LOCKS                    |
| IDXS                          |
| INDEX_PARAMS                  |
| I_SCHEMA                      |
| KEY_CONSTRAINTS               |
| MASTER_KEYS                   |
| MATERIALIZATION_REBUILD_LOCKS |
| METASTORE_DB_PROPERTIES       |
| MIN_HISTORY_LEVEL             |
| MV_CREATION_METADATA          |
| MV_TABLES_USED                |
| NEXT_COMPACTION_QUEUE_ID      |
| NEXT_LOCK_ID                  |
| NEXT_TXN_ID                   |
| NEXT_WRITE_ID                 |
| NOTIFICATION_LOG              |
| NOTIFICATION_SEQUENCE         |
| NUCLEUS_TABLES                |
| PARTITIONS                    |
| PARTITION_EVENTS              |
| PARTITION_KEYS                |
| PARTITION_KEY_VALS            |
| PARTITION_PARAMS              |
| PART_COL_PRIVS                |
| PART_COL_STATS                |
| PART_PRIVS                    |
| REPL_TXN_MAP                  |
| ROLES                         |
| ROLE_MAP                      |
| RUNTIME_STATS                 |
| SCHEMA_VERSION                |
| SDS                           |
| SD_PARAMS                     |
| SEQUENCE_TABLE                |
| SERDES                        |
| SERDE_PARAMS                  |
| SKEWED_COL_NAMES              |
| SKEWED_COL_VALUE_LOC_MAP      |
| SKEWED_STRING_LIST            |
| SKEWED_STRING_LIST_VALUES     |
| SKEWED_VALUES                 |
| SORT_COLS                     |
| TABLE_PARAMS                  |
| TAB_COL_STATS                 |
| TBLS                          |
| TBL_COL_PRIVS                 |
| TBL_PRIVS                     |
| TXNS                          |
| TXN_COMPONENTS                |
| TXN_TO_WRITE_ID               |
| TYPES                         |
| TYPE_FIELDS                   |
| VERSION                       |
| WM_MAPPING                    |
| WM_POOL                       |
| WM_POOL_TO_TRIGGER            |
| WM_RESOURCEPLAN               |
| WM_TRIGGER                    |
| WRITE_SET                     |
+-------------------------------+
74 rows in set (0.00 sec)

7、给予权限和创建logs文件夹

(1)划分文件夹用户组和用户

        在前面,使用的root用户,但是启动集群时,需要使用到Hadoop用户,所以这里我们需要将/export/server/路径下的hive 和apache-hive-3.1.3-bin的用户和用户组划给Hadoop,以便我们后序的使用。

root@node1:/export/server# chown -R hadoop:hadoop apache-hive-3.1.3-bin hive
root@node1:/export/server# ll
total 20
drwxr-xr-x  5 hadoop hadoop 4096 12月 23 13:17 ./
drwxr-xr-x  3 hadoop hadoop 4096 11月  4 14:16 ../
drwxr-xr-x 10 hadoop hadoop 4096 12月 23 13:03 apache-hive-3.1.3-bin/
lrwxrwxrwx  1 hadoop hadoop   27 11月  6 20:14 hadoop -> /export/server/hadoop-3.3.6/
drwxr-xr-x 11 hadoop hadoop 4096 11月  6 20:47 hadoop-3.3.6/
lrwxrwxrwx  1 hadoop hadoop   36 12月 23 13:17 hive -> /export/server/apache-hive-3.1.3-bin/
lrwxrwxrwx  1 hadoop hadoop   27 11月  4 14:25 jdk -> /export/server/jdk1.8.0_391/
drwxr-xr-x  8 hadoop hadoop 4096 11月  4 14:23 jdk1.8.0_391/

(2)创建logs文件夹

        切换到Hadoop用户创建logs文件夹

root@node1:/export/server# su - hadoop
hadoop@node1:~$ cd
hadoop@node1:~$ cd /export/server
hadoop@node1:/export/server$ cd hive
hadoop@node1:/export/server/hive$ ll
total 88
drwxr-xr-x 10 hadoop hadoop  4096 12月 23 13:03 ./
drwxr-xr-x  5 hadoop hadoop  4096 12月 23 13:17 ../
drwxr-xr-x  3 hadoop hadoop  4096 12月 23 13:02 bin/
drwxr-xr-x  2 hadoop hadoop  4096 12月 23 13:02 binary-package-licenses/
drwxr-xr-x  2 hadoop hadoop  4096 12月 23 13:55 conf/
drwxr-xr-x  4 hadoop hadoop  4096 12月 23 13:02 examples/
drwxr-xr-x  7 hadoop hadoop  4096 12月 23 13:02 hcatalog/
drwxr-xr-x  2 hadoop hadoop  4096 12月 23 13:03 jdbc/
drwxr-xr-x  4 hadoop hadoop 20480 12月 23 13:04 lib/
-rw-r--r--  1 hadoop hadoop 20798  3月 29  2022 LICENSE
-rw-r--r--  1 hadoop hadoop   230  3月 29  2022 NOTICE
-rw-r--r--  1 hadoop hadoop   540  3月 29  2022 RELEASE_NOTES.txt
drwxr-xr-x  4 hadoop hadoop  4096 12月 23 13:02 scripts/hadoop@node1:/export/server/hive$ mkdir logshadoop@node1:/export/server/hive$ ll
total 92
drwxr-xr-x 11 hadoop hadoop  4096 12月 23 14:03 ./
drwxr-xr-x  5 hadoop hadoop  4096 12月 23 13:17 ../
drwxr-xr-x  3 hadoop hadoop  4096 12月 23 13:02 bin/
drwxr-xr-x  2 hadoop hadoop  4096 12月 23 13:02 binary-package-licenses/
drwxr-xr-x  2 hadoop hadoop  4096 12月 23 13:55 conf/
drwxr-xr-x  4 hadoop hadoop  4096 12月 23 13:02 examples/
drwxr-xr-x  7 hadoop hadoop  4096 12月 23 13:02 hcatalog/
drwxr-xr-x  2 hadoop hadoop  4096 12月 23 13:03 jdbc/
drwxr-xr-x  4 hadoop hadoop 20480 12月 23 13:04 lib/
-rw-r--r--  1 hadoop hadoop 20798  3月 29  2022 LICENSE
drwxrwxr-x  2 hadoop hadoop  4096 12月 23 14:03 logs/
-rw-r--r--  1 hadoop hadoop   230  3月 29  2022 NOTICE
-rw-r--r--  1 hadoop hadoop   540  3月 29  2022 RELEASE_NOTES.txt
drwxr-xr-x  4 hadoop hadoop  4096 12月 23 13:02 scripts/

8、启动

1、后台启动元数据管理服务

hadoop@node1:/export/server/hive$ nohup bin/hive --service metastore >> logs/metastore.log 2>&1 &
[1] 66238
hadoop@node1:/export/server/hive$ cd logs
hadoop@node1:/export/server/hive/logs$ ll
total 12
drwxrwxr-x  2 hadoop hadoop 4096 12月 23 14:05 ./
drwxr-xr-x 11 hadoop hadoop 4096 12月 23 14:03 ../
-rw-rw-r--  1 hadoop hadoop 1096 12月 23 14:06 metastore.log

2、启动客户端

注意,需要提前开启hsfs和yarn集群。

cd /export/server/hive

在该目录下有bin文件夹,bin中有hive启动程序,输入:

bin/hive
hadoop@node1:/export/server/hive$ jps
71265 NodeManager
82227 Jps
71107 ResourceManager
69746 NameNode
69956 DataNode
71622 WebAppProxyServer
70271 SecondaryNameNode
66238 RunJar

【错误解决方案】:这里,很有可能出现报错,解决方案如下:

hdfs dfsadmin -safemode forceExit

在开启hive之后,会出现如下:

hive> show databases;
OK
default
Time taken: 1.23 seconds, Fetched: 1 row(s)
hive> 

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

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

相关文章

GO设计模式——18、迭代器模式(行为型)

目录 迭代器模式&#xff08;Iterator Pattern&#xff09; 迭代器模式的核心角色&#xff1a; 优缺点 使用场景 代码实现 迭代器模式&#xff08;Iterator Pattern&#xff09; 迭代器模式&#xff08;Iterator Pattern&#xff09;提供了一种统一的方式来访问一个容器对…

P1614 爱与愁的心痛

P1614 爱与愁的心痛 [P1614 爱与愁的心痛](https://www.luogu.com.cn/problem/P1614?contestId150480 P1614 爱与愁的心痛 题意 最近有 n 个不爽的事&#xff0c;每句话都有一个正整数刺痛值&#xff08;心理承受力极差&#xff09;。想知道连续 m 个刺痛值的和的最小值是多…

打造高效接口测试:专栏介绍

在软件开发过程中&#xff0c;接口测试是非常重要的一环。它可以帮助我们确保系统的各个模块之间的交互是否正常&#xff0c;从而提高软件的质量和稳定性。本文将介绍如何使用Python编写一个自动化接口测试框架&#xff0c;包括框架对比、接口测试框架介绍、接口测试框架流程和…

原理图中VCC、VDD、VEE、VSS、VBAT各表示什么意思

一、名词解析 &#xff08;1&#xff09;VCC&#xff1a;Ccircuit 表示电路的意思, 即接入电路的电压 &#xff08;2&#xff09;VDD&#xff1a;Ddevice 表示器件的意思, 即器件内部的工作电压; &#xff08;3&#xff09;VSS&#xff1a;Sseries 表示公共连接的意思&#…

使用html+css+js+three.js写圣诞树

实现效果&#xff1a; <head><meta charset"UTF-8"><title>Musical Christmas Lights</title><link rel"stylesheet" href"https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css"><sty…

网络编程:多进程和多线程编程

1. 多进程编程 1.1 fork #include <sys/types.h> #include <unistd.h> // 调用失败返回 -1 设置 errno pid_t fork( void );子进程返回 0&#xff0c;父进程返回子进程 PID&#xff1b; 信号位图被清除&#xff08;父进程的信号处理函数不再对新进程起作用&…

【网络编程】网络通信基础——简述TCP/IP协议

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【网络编程】【Java系列】 本专栏旨在分享学习网络编程的一点学习心得&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; 目录 一、ip地…

sql_lab之sqli中的报错注入,less13

报错注入&#xff08;less-13&#xff09; 正常报错注入&#xff1a; 1.输入用户名和密码123 123显示登录错误 2.输入用户名和密码123’ 123显示登录错误 123后面有’)说明是’)注入 3.查询数据库名 1) and updatexml(<a><b></b></a>,concat(1111…

大数据知识图谱解码:从核心概念到技术实战

文章目录 大数据知识图谱解码&#xff1a;从核心概念到技术实战1. 概述什么是知识图谱知识图谱与自然语言处理的关系 2. 发展历程语义网络本体论大数据时代的知识图谱知识图谱与深度学习的融合 3. 研究内容知识图谱的建模与表示知识抽取知识图谱的融合与对齐知识图谱的推理知识…

KMP入门级别算法详解--终于解决了(next数组详解)

对于正常的字符串模式匹配&#xff0c;主串长度为m&#xff0c;子串为n&#xff0c;时间复杂度会到达O&#xff08;m*n&#xff09;&#xff0c;而如果用KMP算法&#xff0c;复杂度将会减少线型时间O&#xff08;mn&#xff09;。 设主串为ptr"ababaaababaa";&#…

Prometheus介绍和安装

Prometheus介绍和安装 1. Prometheus介绍 Prometheus&#xff08;普罗米修斯&#xff09;是一个最初在SoundCloud上构建的监控系统。自2012年成为社区开源项目&#xff0c;拥有非常活跃的开发人员和用户社区。为强调开源及独立维护&#xff0c;Prometheus于2016年加入云原生云…

P4 音频知识点——PCM音频原始数据

目录 前言 01 PCM音频原始数据 1.1 频率 1.2 振幅&#xff1a; 1.3 比特率 1.4 采样 1.5 量化 1.6 编码 02. PCM数据有以下重要的参数&#xff1a; 采样率&#xff1a; 采集深度 通道数 ​​​​​​​ PCM比特率 ​​​​​​​ PCM文件大小计算&#xff1a; ​…

[THUPC 2024 初赛] 二进制 (树状数组单点删除+单点查询)(双堆模拟set)

题解 题目本身不难想 首先注意到所有查询的序列长度都是小于logn级别的 我们可以枚举序列长度len&#xff0c;然后用类似滑动窗口的方法&#xff0c;一次性预处理出每种字串的所有出现位置&#xff0c;也就是开N个set去维护所有的位置。预处理会进行O(logn)轮&#xff0c;每…

KubeSphere金丝雀发布流量分布调节不生效(将所有流量按比例分配给灰度发布版本)

如题 金丝雀发布按照流量比例访问不能生效 1、自制应用生成的路由添加注释: nginx.ingress.kubernetes.io/service-upstream:"true" 2、项目网关开启 3、完成 以上&#xff0c;祝好。

什么是SpringMVC

系列文章目录 提示&#xff1a;这里可以添加系列文章的所有文章的目录&#xff0c;目录需要自己手动添加 SpringMVC之参数获取 提示&#xff1a;写完文章后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 系列文章目录前言一、概念二、Spring…

Tomcat远程调试

windows环境 写一个 startup-debug.bat&#xff0c;指定tomcat的根目录&#xff0c;端口自己定义 rem *******设置Tomcat目录*******-- set CATALINE_HOMED:\asd\A8-2\tomcat d: rem 8787为可用端口,为远程调试监听端口-- cd %CATALINE_HOME%/bin set JPDA_ADDRESS8787 set J…

5G核心网小百科:解锁数字未来的神奇密码

引言&#xff1a; 嘿&#xff0c;大家好&#xff01;今天我们要揭开一个数字魔法的奥秘&#xff0c;那就是5G核心网。这个网络的核心部分&#xff0c;其实蕴含了很多神奇的技术&#xff0c;它们如何点亮我们的数字未来呢&#xff1f;让我们一探究竟。 1. 服务化架构&#xff1…

IDEA必备常用快捷键

IDEA必备常用快捷键 Ctrl 快捷键介绍Ctrl F在当前文件进行文本查找Ctrl R在当前文件进行文本替换Ctrl Z撤销Ctrl Y删除光标所在行或者删除选中的行Ctrl D复制光标所在的行或者复制选中的内容,并把复制内容插到光标位置的下面Ctrl C复制光标所在的行或者复制选中的内容C…

Leetcode—445.两数相加II【中等】

2023每日刷题&#xff08;六十七&#xff09; Leetcode—445.两数相加II 实现代码 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/struct ListNode* addTwoNumbers(struct ListNode* l1, struct ListNode* l2…

RT-Smart elf 动态加载技术 : elf 加载原理与流程

前言 RT-Smart 类似于Linux,可以动态的加载与运行应用程序 elf 文件,也就是内核与应用可以分开,一个内核,多个应用,不同的应用可以按需加载执行 应用程序 elf 文件,有的是静态链接编译的,有的是动态链接编译的,动态链接编译的,elf 的运行依赖动态共享库 (.so) 本篇讲解…