安装和体验hive-1

docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=888888 -idt mysql:5.7.27

  1. 进入mysql容器:

docker exec -it mysql /bin/bash

  1. 进入容器后连接mysql,密码是888888:

mysql -h127.0.0.1 -uroot -p

  1. 新建名为hive的mysql账号:

CREATE USER ‘hive’ IDENTIFIED BY ‘888888’;

  1. 给hive账号授权访问(并且hvie账号还有权给其他账号授权):

GRANT ALL PRIVILEGES ON . TO ‘hive’@‘%’ WITH GRANT OPTION;

  1. 刷新权限数据:

flush privileges;

  1. 在宿主机的终端执行以下命令重启mysql服务:

docker exec mysql service mysql restart

  1. 再次进入mysql容器,以hive账号的身份登录mysql:

mysql -uhive -p

  1. 创建名为hive的数据库:

CREATE DATABASE hive;

安装hive

  1. 去hive官网下载,地址是:http://mirror.bit.edu.cn/apache/hive/ ,选择合适的版本,如下图:注意:接下来的操作用的账号都不是root,而是hadoop

  2. 在hadoop账号的家目录下解压刚刚下载的apache-hive-1.2.2-bin.tar.gz文件,是个名为apache-hive-1.2.2-bin的目录;

  3. 编辑hadoop账号的.bash_profile文件,增加一个环境变量,就是将刚刚解压出来的apache-hive-1.2.2-bin文件夹的完整路径:

export HIVE_HOME=/home/hadoop/apache-hive-1.2.2-bin

  1. 修改完毕后,重新打开一个ssh连接,或者执行source ~/.bash_profile让环境变量立即生效;

  2. 进入目录apache-hive-1.2.2-bin/conf/,用模板文件复制一份配置文件:

cp hive-default.xml.template hive-default.xml

  1. 在此目录创建名为hive-site.xml的文件,内容如下:
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

javax.jdo.option.ConnectionURL

jdbc:mysql://127.0.0.1:3306/hive?createDatabaseIfNotExist=true

javax.jdo.option.ConnectionDriverName

com.mysql.jdbc.Driver

javax.jdo.option.ConnectionUserName

hive

javax.jdo.option.ConnectionPassword

888888

  1. 将mysql的JDBC包放在此目录:/home/hadoop/apache-hive-1.2.2-bin/lib/,我这里用的是mysql-connector-java-5.1.47.jar,您可以在此下载:https://download.csdn.net/download/boling_cavalry/11834367

设置工作已经完成了,接下来是启动和初始化;

初始化和启动hive

  1. 进入目录apache-hive-1.2.2-bin/bin,执行以下命令初始化:

./schematool -initSchema -dbType mysql

操作成功后,控制台提示:

[hadoop@node0 bin]$ ./schematool -initSchema -dbType mysql

Metastore connection URL:  jdbc:mysql://127.0.0.1:3306/hive?createDatabaseIfNotExist=true

Metastore Connection Driver :  com.mysql.jdbc.Driver

Metastore connection User:  hive

Starting metastore schema initialization to 1.2.0

Initialization script hive-schema-1.2.0.mysql.sql

Initialization script completed

schemaTool completed

  1. 在mysql上看一下,数据库hvie下建了多个表:

mysql> show tables;

±--------------------------+

| Tables_in_hive            |

±--------------------------+

| BUCKETING_COLS            |

| CDS                       |

| COLUMNS_V2                |

| COMPACTION_QUEUE          |

| COMPLETED_TXN_COMPONENTS  |

| DATABASE_PARAMS           |

| DBS                       |

| DB_PRIVS                  |

| DELEGATION_TOKENS         |

| FUNCS                     |

| FUNC_RU                   |

| GLOBAL_PRIVS              |

| HIVE_LOCKS                |

| IDXS                      |

| INDEX_PARAMS              |

| MASTER_KEYS               |

| NEXT_COMPACTION_QUEUE_ID  |

| NEXT_LOCK_ID              |

| NEXT_TXN_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                |

| ROLES                     |

| ROLE_MAP                  |

| 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            |

| TYPES                     |

| TYPE_FIELDS               |

| VERSION                   |

±--------------------------+

53 rows in set (0.00 sec)

  1. 在目录/home/hadoop/apache-hive-1.2.2-bin/bin执行命令./hive即可启动;

初始化和启动已经完成,接下来验证hive;

验证

  1. 前面执行./hive之后,已进入了对话模式,输入以下命令创建名为test001的数据库:

CREATE database test001;

  1. 选择该数据库:

use test001;

  1. 创建一个名为test_table的表:

create table test_table(

id  INT,

word  STRING

)

ROW FORMAT DELIMITED

FIELDS TERMINATED BY  ‘\t’

STORED AS TEXTFILE;

  1. 新建一个ssh连接,创建名为hive_test.txt的文本文件,内容如下:

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

最后

面试前一定少不了刷题,为了方便大家复习,我分享一波个人整理的面试大全宝典

  • Java核心知识整理

2020年五面蚂蚁、三面拼多多、字节跳动最终拿offer入职拼多多

Java核心知识

  • Spring全家桶(实战系列)

2020年五面蚂蚁、三面拼多多、字节跳动最终拿offer入职拼多多

  • 其他电子书资料

2020年五面蚂蚁、三面拼多多、字节跳动最终拿offer入职拼多多

Step3:刷题

既然是要面试,那么就少不了刷题,实际上春节回家后,哪儿也去不了,我自己是刷了不少面试题的,所以在面试过程中才能够做到心中有数,基本上会清楚面试过程中会问到哪些知识点,高频题又有哪些,所以刷题是面试前期准备过程中非常重要的一点。

以下是我私藏的面试题库:

2020年五面蚂蚁、三面拼多多、字节跳动最终拿offer入职拼多多
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
前一定少不了刷题,为了方便大家复习,我分享一波个人整理的面试大全宝典**

  • Java核心知识整理

[外链图片转存中…(img-glv02OoC-1713642856363)]

Java核心知识

  • Spring全家桶(实战系列)

[外链图片转存中…(img-HeBP4T7P-1713642856364)]

  • 其他电子书资料

[外链图片转存中…(img-JMdjolke-1713642856364)]

Step3:刷题

既然是要面试,那么就少不了刷题,实际上春节回家后,哪儿也去不了,我自己是刷了不少面试题的,所以在面试过程中才能够做到心中有数,基本上会清楚面试过程中会问到哪些知识点,高频题又有哪些,所以刷题是面试前期准备过程中非常重要的一点。

以下是我私藏的面试题库:

[外链图片转存中…(img-h3opcfxS-1713642856365)]
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

  • 15
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值