配置和启动测试 HIVE|学习笔记

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 快速学习配置和启动测试 HIVE

开发者学堂课程【快速掌握 Hadoop 集成 Kerberos 安全技术配置和启动测试 HIVE】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/708/detail/12568


配置和启动测试 HIVE


1.创建 hive 使用的账户:

useradd hive-ghadoopr 执行 chown -Rhive:hadoop /bigdata/hive-1.1.0-cdh5.14.4(授权语句)

hive 装在 cdn0上,所以在 root 下执行 useradd hive-ghadoopr,把 bigdata 安装好的 hive 来配置成 hive 权限

2.创建 hive 对应的 kerberos 账户

在 cdhe 节点    

kadmin 进入 kerberos 的 admin 后台输入密码

addprinc -randkeyhive/cdheitcast.cniTcASt.Cn 创建这样一个用户

ktadd -k/etc/securitv/kevtabs/hive.kevtab hive/cdheitcast.cneITCAST.CN 创建对应的 kevtabs 文件

chown hive hadoop hivekeytab 把他的权限改成 hive 所属

chmod 400 hive.keytab 改为400的权限

得到

-r-------- 1 hive hadoop 418 Sep 26 17:07 hive.keytab    

这里多了 hive.keytab

3.上传安装包中提供的 mysg1-connector-java-5.1.33.jar 到 hive 的 lib 目录下,上传完成后 hive 就能够链接 mysg1-connector 了。

4.因为 hive 的原数据是保存到 mysg1-connector 所以要为 hive 安装mysql yum install -y mysgl-server mysgl mysgl-devel,运行。

5.安装好后启动和设置 mysql

启动: service mysald start

开机自动启动:chkconfig mysgld on

设置初始密码为 root:/usr/bin/mysqladmin -u root password 'root',密码 root

6.验证登录 mysql -uroot -p root

7.配置 hive-env.sh

进入 cd /bigdata/hive-1.1.0-cdh5.14.4/conf/文件夹里面

cp hive-env.sh.template hive-env.sh

# vim hivp-env.sh 新增

将以下代码复制进来,保存。

export JAVA_HOME=/usr/local/jdk1.8.0_221

export HADOOP_HOME=/bigdata/hadoop-2.6.0-cdh5.14.4

export HIVE_HOME=/bigdata/hive-1.1.0-cdh5.14.4

export HIVE_CONF_DIR=/bigdata/hive-1.1.0-cdh5.14.4/conf

8. 配置 hive-site.xml

直接创建 vim hive-site.xml 新文件,把以下内容复制,

<configuration>

<property>

<name>javax.jdo.option.ConnectionURL</name>

<value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>

</property>

<property>

<name>javax.ido.option.ConnectionDriverName</name>

<value>com.mysq1.jdbc.Driver</value>

</property>

<property>

<name>javax.jdo.opticn.ConnectionUserName</name>

<value>root</value>

</property>

<property>

<name>javax.jdo.option.ConnectionPassword</name>

<value>root</value>

</property>

<property>

<name>hive.server2.authentication</name>

<value>KERBEROS</value>

</property>

<property>

<name>hive.server2.authentication.kerberosprincipal</name>

<value>hive/_HOST@ITCAST.CN</value>

</property>

<property>

<name>hive.server2.authentication.kerberos.keytab</name>

<value>/etc/security/keytabs/hive.keytab</value>

</property>

<property>

<name>hive.metastore.sasl.enabled</name><value>true</value>

</property>

<property>

<name>hive.metastore.kerberos.keytabfile</name>

<value>/etc/security/keytabs/hivekeytab</value>

</property>

<property>

<name>hive.metastorekerberosprincipal</name>

<value>hive/_HOST@ITCAST.CN</value>

</property>

<property>

<name></name><value></value>

</property>

</configuration>

hive 的配置其实也很简单,比如 ConnectionURL 的链接,还有驱动和账户,包括密码等等,下面的配置就是 cookwos 的相关,比如说 hive 的安全认证使用 cookwos 进行认证,同样他还需要 cookwos 账户,这个账户同样是 hive,一个 host 的转译,他还需要ktable文件,这里需要来启动一下 metstore 包括还有一个 manerstorp 需要使用的文件,同样共用这个文件就可以了,还有需要使用的账户。

9.初始化 hive 源数据库:bin/schematool -dbType mysql -initSchema -verbose xm1

这里是使用 schematool 工具,数据管理型是 mysql,执行 initSchema,verbose显示输出。多了非常多的表,说明初始化完成了

10.认证 hive 的账户:

kinit-kt /etc/security/keytabs/hive.kevtab hive/cdh0.itcast.cn@ITCAST.CN

Hive 就成功认证到 hive 账户下

image.png

11.启动 hive 相关服务

启动 metastore:nohup bin/hive --service metastore>metastore.log 2>&1 &

输入 cd /bigdata/hive-,执行到这样的目录下,执行命令,把日志输出到 metastore.log 里,2>&1 &表示在后台运行,RunJar 就是进程

启动 hiveserver2: nohup bin/hive --service hiveserver2 >hs2.log 2>&1 &

多了 RunJar,就是 hiveserver2。

12.测试 hive

执行 bin/hive,没有问题后创建数据库叫做 create database test;

image.png

13.测试 bin/beeline

执行 bin/beeline

进入后执行:!Connectidbc:hive2://cdh0.itcast.cn:10000/default;principal=hive/cdh0.itcast.cn@ITCAST.CN

一定要加这句话连接成功

成功连接后执行:create table test_temp(id int, name string, address string)

多了一个表则代表没问题:

image.png

然后插入执行: insert into test temp values(1, "hahaha", "beijing"), (2, "heiheihei", "shanghai"), (3."hohoho","shenzhen"):

执行: select * from test_temp;

把这个目录给770的权限,再重新执行,会看到插入的数据被正确查出来了,说明 hive 被正确查询出来了。

image.png

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
3月前
|
SQL 数据库 HIVE
记录hive数据库远程访问配置问题
记录hive数据库远程访问配置问题
114 0
|
4月前
|
测试技术 API 容器
|
4月前
|
Web App开发 Java Linux
Nexus【部署 02】最新版本 nexus-3.35.0-02-unix.tar.gz 安装配置启动及测试(JDK版本+虚拟机参数配置说明)
Nexus【部署 02】最新版本 nexus-3.35.0-02-unix.tar.gz 安装配置启动及测试(JDK版本+虚拟机参数配置说明)
116 0
|
30天前
|
SQL JSON 算法
hive学习笔记
hive学习笔记
|
2月前
|
Java 测试技术 编译器
JMM测试利器-JCStress学习笔记
JMM测试利器-JCStress学习笔记
|
4月前
|
Ubuntu 测试技术 Linux
|
4月前
|
网络协议 Java 应用服务中间件
如何使用支付宝的沙箱环境在本地配置模拟支付并发布至公网测试
如何使用支付宝的沙箱环境在本地配置模拟支付并发布至公网测试
|
4月前
|
存储 SQL 分布式计算
Hadoop(HDFS+MapReduce+Hive+数仓基础概念)学习笔记(自用)
Hadoop(HDFS+MapReduce+Hive+数仓基础概念)学习笔记(自用)
251 0
|
4月前
|
NoSQL 测试技术 Redis
Redis【性能 01】Redis 5.x 6.x 7.x 共5个不同版本延迟及性能测试对比分析(单机版默认配置)
Redis【性能 01】Redis 5.x 6.x 7.x 共5个不同版本延迟及性能测试对比分析(单机版默认配置)
199 0
|
4月前
|
NoSQL Java API
SpringBoot【ElasticSearch集成 02】Java HTTP Rest client for ElasticSearch Jest 客户端集成(依赖+配置+增删改查测试源码)推荐使用
SpringBoot【ElasticSearch集成 02】Java HTTP Rest client for ElasticSearch Jest 客户端集成(依赖+配置+增删改查测试源码)推荐使用
56 0