hive安装与配置详解(hive os安装教程)

本篇文章给大家谈谈hive安装与配置详解,以及hive os安装教程对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

hive的安装,什么是hive的metastore的远程与本地

这里实验一下此谨把hive.metastore.local参数设置为false的情况下怎么启动hive,

当然首先要修改为false,

hive.metastore.local

false

controls whether to connect to remove metastore server or open a new metastore server in Hive Client JVM

并加入配置thrift server的配置:

hive.metastore.uris thrift://127.0.0.1:9083

然后启动hadoop集群,启动win上的mysql,保证集群ok,测试mysql ok

然后启动metastore:hive --service metastore

这个过程会测试连接 建立schema 建表

继续启动thrift server:吵逗hive --service hiveserver

Starting Hive Thrift Server

这里会卡住,其实这是典型的前台启动,如果退出到shell,那么server就会停止,想后台启动的话可以采用nohup方式。

最后启动hive:hive

hive show tables;

OK

tb

tb2

Time taken: 1.117 seconds

发现hive就可以启动起来了,其实我们只需要把hive理解为几个部分森碰基即可:metastore、thrift server和剩下的hive,这几个部分都是可以分开部署的,放在不同的服务器上,这样的设计增加了hive的ha和可扩展性 但是分开部署会牺牲很大的可维护性,也增加了运维的复杂性,所以一般还是把元数据留着mysql中 其他的部分放在一个jvm中。

hive也是个cs结构的东西 thrift是负责client和server通信的

[img]

hadoop分布式系统中怎么安装hive

Hive是基于Hadoop构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在hadoop 分布式文件系统中的数据。其在Hadoop的架构体系中承担了一个SQL解析的过程,它提供了对外的入口来获取用户的指令然后对指令进行分析,解析出一个MapReduce程序组成可执行计划,并按照该计划生成对应的MapReduce任务提交给Hadoop集群处理,获取最终的结果。元数据——如表模式——存储在名为metastore的数据库中。

系统环境

ip地址1 hadoop-master

ip地址2 hadoop-slave

MySQL安装在master机器上,hive服务器也安装在master上

Hive下载

下载源码包,最新版本可自行去官网下载

[hadoop@hadoop-master ~]$ wget hive的下载地址

[hadoop@hadoop-master ~]$ tar -zxf apache-hive-1.2.1-bin.tar.gz 

[hadoop@hadoop-master ~]$ ls

apache-hive-1.2.1-bin  apache-hive-1.2.1-bin.tar.gz  dfs  hadoop-2.7.1  Hsource  tmp12341234

配置环境变量

[root@hadoop-master hadoop]# vi /etc/profile

HIVE_HOME=/home/hadoop/apache-hive-1.2.1-bin

PATH=$PATH:$HIVE_HOME/bin

export HIVE_NAME PATH

Metastore

metastore是hive元数据集中存放地。它包括两部分:服务和后台数据存储。有稿斗厅三种方式配置metastore:内嵌metastore、本地metastore以及远程metastore。 

本次搭建中采用MySQL作为远程仓库,部署在hadoop-master节点上,hive服务端也安装在hive-master上,hive客户端即hadoop-slave访问hive服务器。

创建Hive用户

mysqlCREATE USER 'hive' IDENTIFIED BY 'hive';

mysqlGRANT ALL PRIVILEGES ON *.* TO 'hive'@'hadoop-master' WITH GRANT OPTION;

mysqlflush privileges;123123

Hive用户登录

[hadoop@hadoop-master ~]mysql -h hadoop-master -uhive

mysqlset password = password('hive');1212

创建Hive数据库

mysqlcreate database hive;

配置Hive

修改配置文件 

进入到hive的配置文件目录下,找到hive-default.xml.template,cp份为hive-default.xml 

另创建hive-site.xml并添销拿加参数

[hadoop@hadoop-master conf]$ pwd

/home/hadoop/apache-hive-1.2.1-bin/conf

[hadoop@hadoop-master conf]$ vi hive-site.xml

configuration

    property

        namejavax.jdo.option.ConnectionURL/name

        valuejdbc:mysql://hadoop-master:3306/hive?createDatabaseIfNotExist=true/value

        descriptionJDBC connect string for a JDBC metastore/description    

    /property   

    property 

        namejavax.jdo.option.ConnectionDriverName/name 

        valuecom.mysql.jdbc.Driver/value 

        descriptionDriver class name for a JDBC metastore/description     

    /property               

    property 

        键隐namejavax.jdo.option.ConnectionUserName/name

        valuehivevalue

        descriptionusername to use against metastore database/description

    /property

    property  

        namejavax.jdo.option.ConnectionPassword/name

        valuehive/value

        descriptionpassword to use against metastore database/description  

    /property          

/configuration

Hive客户端配置

[hadoop@hadoop-master ~]$ scp -r apache-hive-1.2.1-bin/ hadoop@hadoop-slave:/home/hadoop

[hadoop@hadoop-slave conf]$ vi hive-site.xml

configuration

    property  

        namehive.metastore.uris/name  

    valuethrift://hadoop-master:9083/value  

    /property

/configuration

Hive启动

要启动metastore服务

[hadoop@hadoop-master ~]$ hive --service metastore 

[hadoop@hadoop-master ~]$ jps

10288 RunJar  #多了一个进程

9365 NameNode

9670 SecondaryNameNode

11096 Jps

9944 NodeManager

9838 ResourceManager

9471 DataNode

Hive服务器端访问

[hadoop@hadoop-master ~]$ hive

Logging initialized using configuration in jar:file:/home/hadoop/apache-hive-1.2.1-bin/lib/hive-common-1.2.1.jar!/hive-log4j.properties

hive show databases;

OK

default

src

Time taken: 1.332 seconds, Fetched: 2 row(s)

hive use src;

OK

Time taken: 0.037 seconds

hive create table test1(id int);

OK

Time taken: 0.572 seconds

hive show tables;

OK

abc

test

test1

Time taken: 0.057 seconds, Fetched: 3 row(s)

hive

Hive客户端访问

[hadoop@hadoop-slave conf]$ hive

Logging initialized using configuration in jar:file:/home/hadoop/apache-hive-1.2.1-bin/lib/hive-common-1.2.1.jar!/hive-log4j.properties

hive show databases;

OK

default

src

Time taken: 1.022 seconds, Fetched: 2 row(s)

hive use src;

OK

Time taken: 0.057 seconds

hive show tables;

OK

abc

test

test1

Time taken: 0.218 seconds, Fetched: 3 row(s)

hive create table test2(id int ,name string);

OK

Time taken: 5.518 seconds

hive show tables;

OK

abc

test

test1

test2

Time taken: 0.102 seconds, Fetched: 4 row(s)

hive在启动过程中会去环境变量中找哪个hadoop的变量

一、hive配置

1.安装环境

在hadoop-1.2.1集群上安装hive-1.2.1

2.将hive-1.2.1环境变量添加到PATH路径下

使用如下命令打开配置文件

nano /etc/profile

在打开的配置文件里添加如下代码

export HIVE_HOME=/opt/hive-1.2.1PATH=$HIVE_HOME/bin:$PATH

3.配置hive-default.xml和hive-site.xml

在/opt/hive-1.2.1/conf目录下没有这两个文件夹,只有一个hive-default.xml.template,复制hive-default.xml.template,命名为hive-default.xml。

然后修改hive-default.xml文件里的内容,将默认的路径换成绝对路径,具体修改如下图:

然后复制hive-default.xml,命名为hive-site.xml。

在/opt/hive-1.2.1/conf只有hive-env.sh.template文件,复制hive-site.sh.template并命名为hive-site.sh,然后祥戚瞎修改hive-site.sh文件权限,使用如下命令

chmod u+x hive-env.sh

4.配置hive-log4j.properties

在/opt/hive-1.2.1/conf目录下只有hive-log4j.properties.template文件,复制hive-log4j.properties.template并命名为谨空hive-log4j.properties,命令如下

cp hive-log4j.properties.template  hive-log4j.properties

将log4j.appender.EventCounter=org.apache.hadoop.hive.shims.HiveEventCounter

修改仔乎为:log4j.appender.EventCounter=org.apache.hadoop.log.metrics.EventCounter

否则会出现警告:

WARN conf.HiveConf: HiveConf of name hive.metastore.local does not exist

WARNING: org.apache.hadoop.metrics.jvm.EventCounter is deprecated. Please use org.apache.hadoop.log.metrics.EventCounter in all the log4j.properties files.

5.启动hive

使用命令hive启动

二、在启动过程中出现的问题

1./tmp/hive文件权限问题

解决方案:需要使用如下命令修改/tmp/hive文件权限

hadoop fs -chmod -R 777 /tmp/hive

2.找不到路径问题

解决方案:需要按照上述步骤3来配置hive-default.xml和hive-site.xml文件。

Hive应用实践-安装并配置mysql

(已安装则跳过)

yum -y install wget

安装这个包后,会获得两个mysql的yum repo源:嫌坦

修改配置文件/etc/my.cnf,添加

然后,重启服务:

MYSQL就可以无密码登录了

删除配置文件my.cnf中的skip-grant-tables

重启服务: systemctl restart mysqld

使用密埋敏码芹液桐登录: mysql -uroot -p

注:需要关闭centos防火墙

查看版本号:

mysql -V

启动mysql服务

systemcl start mysqld.service

停止mysql服务

systemctl stop mysqld.service

重启mysql服务

systemctl restart mysqld.service

查看mysql服务当前状态

systemctl status mysqld.service

设置mysql服务开机自启动

systemctl enable mysqld.service

停止mysql服务开机自启动

systemctl disable mysqld.service

rpm -qa|grep mariadb

rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64

输出内容最后root@localhost:XXXXXXXX中的XXXX为初始密码

编写后保存

关于hive安装与配置详解和hive os安装教程的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

标签列表