Centos7 从零开始搭建 hive(含hive测试-数据导入与安装包)

Centos7 从零开始搭建 hive

博主这两天搭建了Centos,所以写个教程帮助大家去搭建hive数据仓库的环境。
对于hive,其实搭建的时候我们需要有一些认识

  1. hive本质上是一个“集成数据库”,它是由很多数据库组成的。
  2. hive 需要由hadoop环境支持。
  3. hadoop是由java编写的,所以,事实上很多运行在hadoop环境中的软件都是需要java编写的接口的。

那么开始搭建,搭建hive一共分为如下几步
1.安装vmware
2.安装centos系统
3.在centos上安装hadoop
4.在centos上安装mysql
5.安装hive
6.测试hive
简化的话一共是五步,那么对于本次安装过程,前两步暂时不写了,后期会补上去,当然前两部也比较简单。可以看看网络上其他教程。

那么假设你已经完成了前两步,那么本次安装我们需要的安装包如下
在这里插入图片描述没错,只有五个,并不多,我已上传到我的网盘可以自行下载。
百度网盘如下:
链接:https://pan.baidu.com/s/1pJ6C649NGjHflPvMiZw87g
提取码:taqr

注: 所有的操作皆在root权限下进行

  1. 准备安装包,并设置文件目录
    首先,我们进行如下命令设置文件目录
    进入终端
 su -
 #输入root 用户密码,进入管理员权限
 cd /home 
 mkdir software  #创建文件夹

然后,将上面四个安装包前三个,放入software文件夹下

  1. 安装hadoop
    2.1 解压安装包
cd /home/software
tar -zxvf hadoop-2.7.1.tar.gz
tar -zxvf jdk-8u231-linux-x64.tar.gz

然后,在终端输入

ls

查看是否解压完成
在这里插入图片描述
即出现hadoop-2.7.1 和 jdk1.8.0_231

2.2 配置环境变量
在终端输入

vi /etc/profile

在文件末尾加入如下语句:

export JAVA_HOME=/home/software/jdk1.8.0_231
export HADOOP_PREFIX=/home/software/hadoop-2.7.1
export CLASSPATH=".:$JAVA_HOME/lib:$CLASSPATH"
export PATH="$JAVA_HOME/bin:$PATH:$HADOOP_PREFIX/bin:$PATH"
export HADOOP_PREFIX PATH CLASSPATH

2.3 修改${HADOOP_HMOE}/etc/hadoop/hadoop-env.sh文件,修改JAVA_HOME配置(也可以修改/etc/profile文件,增加JAVA_HOME配置)。

vi /home/software/hadoop-2.7.1/etc/hadoop/hadoop-env.sh

修改文件,修改改环境变量

export JAVA_HOME=/home/software/jdk1.8.0_231/ #修改之后 版本打错

2.4 设置伪分布模式(Pseudo-Distributed Operation)

vi /home/software/hadoop-2.7.1/etc/hadoop/core-site.xml

增加配置(fs.defaultFS:默认文件系统名称):

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

修改etc/hadoop/hdfs-site.xml文件,增加配置(dfs.replication:文件副本数):

vi /home/software/hadoop-2.7.1/etc/hadoop/hdfs-site.xml

增加如下配置



<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>


2.5 设置主机允许无密码SSH链接

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa       # 创建公钥私钥对
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 
chmod 0600 ~/.ssh/authorized_keys # 设置权限,owner有读写权限,group和other无权限

2.6 格式化文件系统

cd /home/software/hadoop-2.7.1
bin/hdfs namenode -format

2.7 生效环境

source /etc/profile

2.8 启动hadoop

cd /home/software/hadoop-2.7.1
./sbin/start-all.sh

2.9 查看进程

jps

结果如下:
在这里插入图片描述

打开firebox浏览器,输入:http://192.168.114.135:50070
结果如下
在这里插入图片描述2.10 输入地址:http://192.168.114.135:8088/,可查看YARN
在这里插入图片描述

3.安装mysql病配置sql服务器
3.1 安装 rpm

cd /home/sofrware
rpm -ivh mysql-community-release-el7-5.noarch.rpm

3.2 执行安装

yum install mysql-community-server

3.3 设置开机启动并启动mysql服务

systemctl enable mysqld
systemctl start mysqld

ok,因为版本的原因,安装的mysql未自动生成密码,8.x版本以上会自动生成
3.4 输入mysql ,启动mysql

mysql

结果如下图所示:
在这里插入图片描述3.5 赋予root权限
在mysql命令窗口执行,为了能让root用户可以操作hive
abc123 为root密码

grant all privileges on *.* to 'root'@'%' identified by 'abc123' with grant option;

3.6 防火墙开放3306端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

3.7 启动、关闭、重启服务

systemctl start mysqld
systemctl stop mysqld
systemctl restart mysqld
  1. 安装hive
    4.1 解压安装包,并改名
cd /home/software/
tar -zxvf apache-hive-2.3.9-bin.tar.gz
mv apache-hive-2.3.9-bin/ apache-hive-2.3.9/

4.2 配置hive-log4j2.properties和hive-site.xml

cd /home/software/apache-hive-2.3.9/conf/
cp hive-log4j2.properties.template hive-log4j2.properties
vi hive-site.xml

编辑如下内容:
注:下述代码中,192.168.107.144为本机虚拟机ip地址,编辑时需要修改成自己的

<?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.107.144:3306/hive?createDatabaseIfNotExist=true</value>
 </property>
 <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
  <value>com.mysql.jdbc.Driver</value>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>root</value>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>abc123</value>
  </property>
</configuration>

4.3 初始化数据库
将最后一个文件mysql-connector-java-5.1.17.jar 放在
/home/software/apache-hive-2.3.9/lib文件夹下
然后执行如下命令

ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime #hive和mysql服务器都要执行,mysql要重启服务
cd /home/software/apache-hive-2.3.9/bin/ 
./schematool -dbType mysql -initSchema

4.4 配置hive环境变量

vim /etc/profile  

在最后加入如下内容:

export HIVE_HOME=/home/software/apache-hive-2.3.9
export PATH=$PATH:$HIVE_HOME/bin

生效环境

source /etc/profile 

4.5 启动hive

hive

结果如下:
在这里插入图片描述
5. 测试hive
hive环境下输入:
5.1 创建数据库和表

#创建测试hive数据库
create database hive_test;	
use hive_test;
#创建hive数据表,指定一个分区
CREATE TABLE testa (  
    id INT,  
    name string,  
    area string  
) PARTITIONED BY (create_time string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' STORED AS TEXTFILE;

5.2创建数据集

cd /home
mkdir data
vi test.txt

编辑如下内容

1,fish1,SZ  
2,fish2,SH  
3,fish3,HZ  
4,fish4,QD  
5,fish5,SR

5.3本地数据导入到hive中并创建一个分区:
注:下述代码在hive命令行下运行

LOAD DATA LOCAL INPATH '/home/data/test.txt' INTO TABLE testa PARTITION(create_time='2020-05-11');

5.4 测试是否导入

select * from testa ;

结果如下
在这里插入图片描述

但这里就搭建完成了,如果有疑问可以在评论中私聊我

  • 16
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值