docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=888888 -idt mysql:5.7.27
- 进入mysql容器:
docker exec -it mysql /bin/bash
- 进入容器后连接mysql,密码是888888:
mysql -h127.0.0.1 -uroot -p
- 新建名为hive的mysql账号:
CREATE USER ‘hive’ IDENTIFIED BY ‘888888’;
- 给hive账号授权访问(并且hvie账号还有权给其他账号授权):
GRANT ALL PRIVILEGES ON . TO ‘hive’@‘%’ WITH GRANT OPTION;
- 刷新权限数据:
flush privileges;
- 在宿主机的终端执行以下命令重启mysql服务:
docker exec mysql service mysql restart
- 再次进入mysql容器,以hive账号的身份登录mysql:
mysql -uhive -p
- 创建名为hive的数据库:
CREATE DATABASE hive;
安装hive
-
去hive官网下载,地址是:http://mirror.bit.edu.cn/apache/hive/ ,选择合适的版本,如下图:
注意:接下来的操作用的账号都不是root,而是hadoop
-
在hadoop账号的家目录下解压刚刚下载的apache-hive-1.2.2-bin.tar.gz文件,是个名为apache-hive-1.2.2-bin的目录;
-
编辑hadoop账号的.bash_profile文件,增加一个环境变量,就是将刚刚解压出来的apache-hive-1.2.2-bin文件夹的完整路径:
export HIVE_HOME=/home/hadoop/apache-hive-1.2.2-bin
-
修改完毕后,重新打开一个ssh连接,或者执行source ~/.bash_profile让环境变量立即生效;
-
进入目录apache-hive-1.2.2-bin/conf/,用模板文件复制一份配置文件:
cp hive-default.xml.template hive-default.xml
- 在此目录创建名为hive-site.xml的文件,内容如下:
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
- 将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
- 进入目录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
- 在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)
- 在目录/home/hadoop/apache-hive-1.2.2-bin/bin执行命令./hive即可启动;
初始化和启动已经完成,接下来验证hive;
验证
- 前面执行./hive之后,已进入了对话模式,输入以下命令创建名为test001的数据库:
CREATE database test001;
- 选择该数据库:
use test001;
- 创建一个名为test_table的表:
create table test_table(
id INT,
word STRING
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ‘\t’
STORED AS TEXTFILE;
- 新建一个ssh连接,创建名为hive_test.txt的文本文件,内容如下:
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
![img](https://i-blog.csdnimg.cn/blog_migrate/5124d5bfb09de131fb6c206aa4f04c23.jpeg)
最后
面试前一定少不了刷题,为了方便大家复习,我分享一波个人整理的面试大全宝典
- Java核心知识整理
Java核心知识
- Spring全家桶(实战系列)
- 其他电子书资料
Step3:刷题
既然是要面试,那么就少不了刷题,实际上春节回家后,哪儿也去不了,我自己是刷了不少面试题的,所以在面试过程中才能够做到心中有数,基本上会清楚面试过程中会问到哪些知识点,高频题又有哪些,所以刷题是面试前期准备过程中非常重要的一点。
以下是我私藏的面试题库:
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
前一定少不了刷题,为了方便大家复习,我分享一波个人整理的面试大全宝典**
- Java核心知识整理
[外链图片转存中…(img-glv02OoC-1713642856363)]
Java核心知识
- Spring全家桶(实战系列)
[外链图片转存中…(img-HeBP4T7P-1713642856364)]
- 其他电子书资料
[外链图片转存中…(img-JMdjolke-1713642856364)]
Step3:刷题
既然是要面试,那么就少不了刷题,实际上春节回家后,哪儿也去不了,我自己是刷了不少面试题的,所以在面试过程中才能够做到心中有数,基本上会清楚面试过程中会问到哪些知识点,高频题又有哪些,所以刷题是面试前期准备过程中非常重要的一点。
以下是我私藏的面试题库:
[外链图片转存中…(img-h3opcfxS-1713642856365)]
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!