前言:由于只是在自己的虚拟机上进行学习,所以对hive只是进行最简单的配置,其他复杂的配置文件没有配置。
1、前提
1.1 安装配置jdk1.8
1.2 安装hadoop2.x
hadoop单机模式安装见:centos7 hadoop 单机模式安装配置
1.3 安装mysql并配置myql允许远程访问,我的mysql版本5.7.18。
mysql数据库安装过程请参考:Centos 7.2 安装 Mysql 5.7.13
2、下载hive
下载地址:http://mirror.bit.edu.cn/apache/hive/,我下载的是apache-hive-2.3.2-bin.tar.gz。
wget http://mirror.bit.edu.cn/apache/hive/hive-2.3.2/apache-hive-2.3.2-bin.tar.gz 或者下载到本地,通过工具上传到虚拟机中
3、解压到/opt目录下(目录根据自己习惯)
tar -zxvf apache-hive-2.3.2-bin.tar.gz -C /opt/
4、配置hive环境变量
vim /etc/profile
export HIVE_HOME=/opt/apache-hive-2.3.2-bin export PATH=$PATH:$HIVE_HOME/bin
source /etc/profile
5、配置hive
5.1 配置hive-site.xml
其中ConnectionUserName和ConnectionPassword为mysql远程访问的用户名和密码,hive_metadata为mysql数据库,随自己习惯命名。
cd /opt/apache-hive-2.3.2-bin/conf/ vim hive-site.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://192.168.44.128:3306/hive_metadata?&createDatabaseIfNotExist=true&characterEncoding=UTF-8&useSSL=false</value> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>root</value> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>Root-123456</value> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> </property> <property> <name>datanucleus.schema.autoCreateAll</name> <value>true</value> </property> <property> <name>hive.metastore.schema.verification</name> <value>false</value> </property> </configuration>
5.2 配置hive-site.xml
cp hive-env.sh.template hive-env.sh
vim hive-env.sh
HADOOP_HOME=/opt/hadoop-2.7.5 export HIVE_CONF_DIR=/opt/apache-hive-2.3.2-bin/conf
6、加载mysql驱动(要与自己安装的mysql版本一致)
下载地址:http://dev.mysql.com/downloads/connector/j/
我下载的是:mysql-connector-java-5.1.46.tar.gz,解压并将其中的mysql-connector-java-5.1.46-bin.jar放到hive/lib下
具体路径为:/opt/apache-hive-2.3.2-bin/lib
7、初始化数据库
schematool -initSchema -dbType mysql
启动hive之前先启动hadoop,不然会报Connection refused异常,在命令行jps看一下hadoop是否启动成功然后启动hive
8、启动hive
hive
然后简单的测试:
show databases;
9、简单的hive语句测试
出现如下图所示即代表配置成功!
建表:
CREATE TABLE IF NOT EXISTS test (id INT,name STRING)ROW FORMAT DELIMITED FIELDS TERMINATED BY " " LINES TERMINATED BY "\n";
插入数据
insert into test values(1,'张三');
查询
select * from test;
本文来自博客园,作者:大码王,转载请注明原文链接:https://www.cnblogs.com/huanghanyu/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具