博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hive 环境搭建
阅读量:2429 次
发布时间:2019-05-10

本文共 3447 字,大约阅读时间需要 11 分钟。

实验环境

namenode: 192.168.0.160datanode: 192.168.0.160,192.168.0.161mysql-server: 192.168.0.170hadoop版本: 2.6.5hive版本:1.2.2mysql版本:5.7主机操作系统:ubuntu-16.04-x64

安装

在安装hive前,需要了解hive部署的三种模式:

  1. 内嵌模式
    内嵌模式的元数据采用hive自带的derby来存储。由于derby只支持同时一个用户访问所以生产环境下一般不推荐使用。
  2. 本地数据库模式
    hive元数据保存在本地数据库中。
  3. 远程数据库模式
    hive元数据保存在远程数据库中。

本文讲解第三种部署方式,数据库采用mysql。

1.搭建hadoop

hive是基于hadoop来进行数据分析,因此需要先安装hadoop,可以参考

2.安装mysql

sudo apt-get install mysql-serversudo apt install mysql-clientsudo apt install libmysqlclient-dev

现在设置mysql允许远程访问

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

将bind-address = 127.0.0.1中的ip部分修改为0.0.0.0。

bind-address = 0.0.0.0

重启mysql服务

sudo service  mysql restart

查看mysql服务的运行状态

sudo netstat -tlnActive Internet connections (only servers)Proto Recv-Q Send-Q Local Address           Foreign Address         State      tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN   #mysql进程  tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN     tcp6       0      0 :::22                   :::*                    LISTEN     tcp6       0      0 ::1:631                 :::*                    LISTEN

3.下载并配置hive

下载hive,点击。

将下载后的二进制包上传到namenode上,并解压。

tar xf apache-hive-1.2.2-bin.tar.gz  mv apache-hive-1.2.2-bin hive

修改配置文件conf/hive-env.sh

cp conf/hive-env.sh.template  conf/hive-env.shvim conf/hive-env.sh#修改内容HADOOP_HOME=/home/hadoop/software/hadoop-2.6.5

修改配置文件conf/hive-site.conf

cp conf/hive-default.xml.template  conf/hive-site.xmlvim conf/hive-site.xml#数据库URL
javax.jdo.option.ConnectionURL
jdbc:mysql://192.168.0.170:3306/hive?createDatabaseIfNoExist=true&characterEncoding=utf8&useSSL=true&useUnicode=true&serverTimezone=UTC
JDBC connect string for a JDBC metastore
#下面两项必须配置,不然启动会报错
system:user.name
hadoop
system:java.io.tmpdir
/home/hadoop/software/hive/tmp
#数据库用户名
javax.jdo.option.ConnectionUserName
root
Username to use against metastore database
#数据库连接驱动
javax.jdo.option.ConnectionDriverName
com.mysql.jdbc.Driver
Driver class name for a JDBC metastore
#数据库连接密码
javax.jdo.option.ConnectionPassword
123456
password to use against metastore database

下载mysql jdbc驱动包,点击,并将驱动包拷贝到hive安装包lib路径下。

tar xf mysql-connector-java-5.1.46.tar.gzcp mysql-connector-java-5.1.46/mysql-connector-java-5.1.46.jar  lib/# mysql server版本为5.7.x时,mysql-connector的版本选择5.x,否则可能出现不可预知错误。

4.启动

启动hadoop

./sbin/start-all.sh

初始化hive

./bin/schematool -dbType mysql  -initSchema    Metastore connection URL:        jdbc:mysql://192.168.0.170:3306/hive?createDatabaseIfNoExist=true&characterEncoding=utf8&useSSL=true&useUnicode=true&serverTimezone=UTC    Metastore Connection Driver :    com.mysql.cj.jdbc.Driver    Metastore connection User:       root    Starting metastore schema initialization to 1.2.0    Initialization script hive-schema-1.2.0.mysql.sql    Initialization script completed    schemaTool completed

启动hive

./bin/hiveLogging initialized using configuration in jar:file:/home/hadoop/software/hive/lib/hive-common-1.2.2.jar!/hive-log4j.propertieshive> show databases;OKdefaultTime taken: 0.021 seconds, Fetched: 1 row(s)hive>

至此hive安装完毕。

转载地址:http://yzjmb.baihongyu.com/

你可能感兴趣的文章
研发团队来了高颜值的妹子,这结局万万没想到 | 每日趣闻
查看>>
太难了!开源项目如何商业化?
查看>>
谷歌排名第一的编程语言,死磕它这两点,小白也能学的会!不信你看!
查看>>
程序员掉头发的原因找到了 | 每日趣闻
查看>>
腾讯:我就是那只吃了假辣椒酱的憨憨。老干妈:企鹅你可长点心吧!
查看>>
倒计时1天 | 张钹院士领衔,AI开发者大会20大论坛全攻略!
查看>>
运维工程师的日常?? | 每日趣闻
查看>>
31 道 Java 核心面试题,统统打包给你!
查看>>
太拼了:谷歌第一编程语言小白也能学会!
查看>>
三分钟黑了阿里?马云下死命令留他?吴翰清辟谣:我没黑过阿里
查看>>
如果重新一次高考,你还会选择软件专业当程序员吗? | 每日趣闻
查看>>
如何设计一个安全可靠的 API 接口?
查看>>
一年一度程序员“补课”季来袭,618 背后技术大公开!
查看>>
我和美国 AI 博士聊了聊:2020 年,这件事比存钱更重要!
查看>>
陈芳,高考之后我要学计算机专业,将来做 IT 发财了,我就娶你!
查看>>
“编程能力差的程序员,90%输在这事上!”谷歌AI专家:都是瞎努力!
查看>>
张一鸣做电商:再造一个“抖音”
查看>>
“你写的 Bug 让我来改好吗” | 每日趣闻
查看>>
大厂技术文档:Redis+Nginx+Spring全家桶+Dubbo精选
查看>>
笑死,别再黑程序员了好吗? | 每日趣闻
查看>>