CDH 搭建_Hive_安装和创建用户|学习笔记

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 快速学习 CDH 搭建_Hive_安装和创建用户

开发者学堂课程【2020版大数据实战项目之 DMP 广告系统(第二阶段) CDH 搭建_Hive_安装和创建用户】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/677/detail/11775


CDH 搭建_Hive_安装和创建用户


一、安装 Hive

因为 Hive 需要使用 MySQL 作为元数据库,所以需要在 MySQL 为 Hive 创建用户,创建对应的表因为并不需要 Hive 的 HA,所以在单机部署 Hive 即可首先需要安装Hive的样包,需要先将 Hive 一样的安装到机器中,然后在 mysql 中创建账号,继而进行连接,也可以将 rot 用户给 Hive,但是安全性比较低。甚至可能出现 bug 之后,将整个数据库都删除了。所以要为 Hive 单独准备一个用户。第三步就是配置Hive让MySQL 知道如何连接 MySQL;第四步是初始化 Hive 在 mysql 中的一个表结构;第五步是启动 Hive

1、安装 Hive 软件包

安装 Hive 依然使用 CDH 的 Yum 仓库yum install -y hive hive-metastore hive-server2如果想要 Hive 使用 MySQL 作为元数据库,那需要给Hive 一个 MySQL的 JDBC 包yum install -y mysql-connector-javaln -s /usr/share/java/mysql-connector-java.jar /usr/lib/hive/lib/mysql-connector-java.jar

操作:

[ root@cdh01 etc]# cldear-bash : cldear: command not found[ root@cdhe1 etc]#.

[ root@cdhe1 etc]# cd ~[root@cdh01 ~]# yum install -y hive hive-metastore hive-server2.

以往使用 Hive 都是只有一个Hive命令,但是现在安装了三个服务,意思就是将这三个 Hive 命令分别独立出来了,分别对应三个命令,例如直接启动metastore就可以直接启动 meta store,由此可以体现出 cd 的人性化,接下来进行安装,安装成功。

Running rpm_check_ debug

Running Transaction Test

Transaction Testsucceeded

Running Transaction

Installing : hive-jdbc-1.1.0+cdh5.16.1+1431-1.cdh5.16.1.p0.3.el6.noarch

Installing : bigtop-tomcat-0.7.0+cdh5.16.1+0-1.cdh5.16.1.p0.3.el6.noarch

Installing : hive-1.1.0+cdh5.16.1+1431-1.cdh5.16.1.p0.3.el6.noarch

Installing : sentry-1.5.1+cdh5.16.1+559-1.cdh5.16.1.p0.3.el6.noarch

Installing : solr-4.10.3+cdh5.16.1+532-1.cdh5.16.1.p0.3.el6.noarch

The following warning applies to any collections configured to

use Non-Solrcloud mode. Any such collection configuration will

need to be upgraded, see upgrading cloudera Search for details.

Installing : hive-server2-1.1.0icdh5.16.1+1431-1.cdh5.16.1.p0.3.el6.noarch

Installing : hive-metastore-1.1.0+rdh5.16.1+1431-1.cdh5.16.1.p0.3.el6.noarch

Verifying: bigtop-tomcat-0.7.0+cdh5.16.1+0-1.cdh5.16.1.p0.3.el6.noarch

verifying: sentry-1.5.1+cdh5.16.1+559-1.cdh5.16.1.p0.3.el6.noarch

Verifying: hive-jdbc-1.1.0+cdh5.16.1+1431-1.cdh5.16.1.p0.3.el6.noarch

Verifying: hive-server2-1.1.0+cdh5.16.1+1431-1.cdh5.16.1.p0.3.el6.noarch

Verifying: hive-metastore-1.1.0+cdh5.16.1+1431-1.cdh5.16.1.p0.3.el6.noarch

Verifying: hive-1.1.0+cdh5.16.1+1431-1.cdh5.16.1.p0.3.el6.noarch

verifying: solr-4.10.3+cdh5.16.1+532-1.cdh5.16.1.p0.3.el6.noarch

Installed:

hive.noarch 0:1.1.0+cdh5.16.1+1431-1.cdh5.16.1.p0.3.el6

hive-metastore.noarch 0:1.1.0+cdh5.16.1+1431-1.cdh5.16.1.p0.3.el6hive-server2.noarch 0:1.1.0+cdh5.16.1+1431-1.cdh5.16.1.p0.3.el6

Dependency Installed:

bigtop-tomcat.noarch 0:0.7.0+cdh5.16.1+0-1.cdh5.16.1.p0.3.el6hive-jdbc.noarch 0:1.1.0+cdh5.16.1+1431-1.cdh5.16.1.p0.3.el6

sentry.noarch 0:1.5.1+cdh5.16.1+559-1.cdh5.16.1.p0.3.el6

solr.noarch 0:4.10.3+cdh5.16.1+532-1.cdh5.16.1.p0.3.el6

接下来还需要安装一个 cd 版本特有的步骤,安装 mysql 的一个 gdbc 的架包架包可以在 mysql 数据库中找到

[ root@cdh01 ~]# yum install -y nysgl-connector-javal

mysgl-connector-javal 就是 mysql gdbc 的包,现在相当于将 mysql 的架包下载到目录中,依赖这么多东西的原因在于装这个包的时候依赖了很多其他架包和工具

查看包的位置

[ root@cdh01 ~]# cd /usr/share/ j ava[ rootd dh01 java]# Ls

发现很多刚刚下载的包:slf4j\wsdl4j.jar \mysql-connector-java-5.1.17.jar 上面的架包和下面的架包是一样的,下面的架包是上面的软链接,接下来将这个架包拷贝到hive目录内,mysql是需要一个架包连接这个目录,导入不需要直接将架包拷过去,只需要生成一个软链接。

[ root@cdh01 java]# Ln -S /usr/ share/ java/mysql -connec tor- java.jar/user/lib/hive/lib/hive/mysql-connector-java.jar原本的Hive包就在lib下

软链接:

[ root@cdh01 java]# cd /usr/Lib

[ rootacdh0l tib]# Ls

anac Gnda- runt ime

hadoop

java

java-1.6.0

j vm-exports

r pm

yum -

plugins

avro

hadoop-0.20 -mapreduce java-1.3.1 java-1.7.0

j vm-private sendmail

Z ookeepe r

bigtop tomcat

hadoop-hdfs

java-1.4.0 java-1.8.0

Locale

sendmail . postfix

bigtop-utils

hadoop -map reduc e

java-1.4.1

java-ext

Lsb

sentry

ConsoleKit

hadoop-yarn

java-1.4.2 j Vm

parquet

solr

games

hive

java-1.5.0 j Vm- C ommmon python2. 6

tmpfiles.d

装的很多东西原本的程序包就在 libuser 下,进入更深一级,发现是非常熟悉的目录结构,

[ root@cdh0l Lib]# cd hive[ root@cdh01 hive]# Lsauxlib bin C Loude ra conf data doc s  lib L ICENSE NOTICE REL EASE NOTES. txtscripts sentry

[ root@cdh0l Lib]# cd lib

能看到刚才 mysql 中的包:mysql-connector-java.jar

这样就给 hive 增加了 mysql 连接的数据库,

3.配置 Hive

先进入 mysql,进行 hive 连接 mysql 所使用的用户名创建出来,

I [ root@cdh01 lib]# mysqL -u root p

Enter passwo rd:

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 12

Server version: 5.6.44 MySQL Community Server (GPL)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. ALL rights reserved.

Oracle is a registered t rademark of Oracle Corporation and/or its

affiliates. other names may be t rademarks of their respective

owners .

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> C reate database metastore;为 hive 存储原信息的数据库,

mysql> create database metastore;Query 0K, 1 row affected (0.02 sec )mysql> use metastore ;Database changed 

创建 Hive 用户

mysql> create user “hive”‘@’%’ identified by’hive’ //%代表所有位置允许登录

假如只用用户在本地登录,“hive”‘@’localhost’,在 create 的时候还需要指定一个密码,用户就创建出来了,但是用户目前还没有访问 metastore 的权限

mysql> revoke all privileges, grant option from 'hive'@'%' ;Query 0K, 0 rows affected (0.00 sec )

就是使用 metastore 所有表的权限

mysql> grant a1u privileges on metastore.* to‘hive@’%/;

Query 0K, 0 rows affected (0.00 sec )

mysql> flush privileges ;Query 0K, 0 rows affected (0.00 sec )

revoke all privileges, grant option from 'hive'@'%' ; 收回所有权限,收回hive撤销权限,收回'hive'@'%',因为用户刚创立。

grant all privileges on metastore.* to‘hive@’%/;赋予权限,赋予所有的权限,赋予 metastore 所有表的权限给 hive,这个位置在哪里有权限,在所有位置都有权限

flush privileges ;刷新权限

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
7月前
|
SQL 分布式计算 关系型数据库
基于云服务器的数仓搭建-hive/spark安装
本文介绍了在本地安装和配置MySQL、Hive及Spark的过程。主要内容包括: - **MySQL本地安装**:详细描述了内存占用情况及安装步骤,涉及安装脚本的编写与执行,以及连接MySQL的方法。 - **Hive安装**:涵盖了从上传压缩包到配置环境变量的全过程,并解释了如何将Hive元数据存储配置到MySQL中。 - **Hive与Spark集成**:说明了如何安装Spark并将其与Hive集成,确保Hive任务由Spark执行,同时解决了依赖冲突问题。 - **常见问题及解决方法**:列举了安装过程中可能遇到的问题及其解决方案,如内存配置不足、节点间通信问题等。
基于云服务器的数仓搭建-hive/spark安装
|
12月前
|
SQL 分布式计算 Hadoop
Hadoop-12-Hive 基本介绍 下载安装配置 MariaDB安装 3台云服务Hadoop集群 架构图 对比SQL HQL
Hadoop-12-Hive 基本介绍 下载安装配置 MariaDB安装 3台云服务Hadoop集群 架构图 对比SQL HQL
267 3
|
SQL 分布式计算 关系型数据库
Hadoop-12-Hive 基本介绍 下载安装配置 MariaDB安装 3台云服务Hadoop集群 架构图 对比SQL HQL
Hadoop-12-Hive 基本介绍 下载安装配置 MariaDB安装 3台云服务Hadoop集群 架构图 对比SQL HQL
176 2
|
SQL 分布式计算 关系型数据库
分布式系统详解 -- Hive1.2.1 安装
分布式系统详解 -- Hive1.2.1 安装
241 1
|
分布式计算 DataWorks 调度
MaxCompute产品使用合集之如何将数据迁移到CDH Hive
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
222 0
|
SQL 分布式计算 关系型数据库
Ubuntu上安装MySQL以及hive
Ubuntu上安装MySQL以及hive
642 1
|
SQL JSON 算法
hive学习笔记
hive学习笔记
|
SQL 分布式计算 关系型数据库
Hive安装
Hive安装
160 1
|
SQL 分布式计算 Java
linux安装Hive详细步骤
【1月更文挑战第2天】linux安装Hive详细步骤
535 0