Hive Remote模式搭建

一、实验环境

1.软件版本:apache-hive-2.3.0-bin.tar.gz、mysql-community-server-5.7.19

2.mysql JDBC驱动包:mysql-connector-java-5.1.44.tar.gz

3.mysql已经安装在hadoop5上

4..主机规划


hadoop3

Remote:client
hadoop4 Remote:client
hadoop5 Remote:server;mysql

二、基础配置

1.解压并移动hive

[[email protected] ~]# tar -zxf apache-hive-2.3.0-bin.tar.gz
[[email protected] ~]# cp -r apache-hive-2.3.0-bin /usr/local/hive

2.修改环境变量

[[email protected] ~]# vim /etc/profile
export HIVE_HOME=/usr/local/hive
export PATH=$HIVE_HOME/bin:$PATH
[[email protected] ~]# source /etc/profile

3.复制初始文件

[[email protected] ~]# cd /usr/local/hive/conf/
[[email protected] conf]# cp hive-env.sh.template hive-env.sh  
[[email protected] conf]# cp hive-default.xml.template hive-site.xml  
[[email protected] conf]# cp hive-log4j2.properties.template hive-log4j2.properties  
[[email protected] conf]# cp hive-exec-log4j2.properties.template hive-exec-log4j2.properties

4.修改hive-env.sh文件

[[email protected] conf]# vim hive-env.sh    #在最后添加
export JAVA_HOME=/usr/local/jdk
export HADOOP_HOME=/usr/local/hadoop
export HIVE_HOME=/usr/local/hive    
export HIVE_CONF_DIR=/usr/local/hive/conf

5.拷贝mysql的JDBC驱动包

[[email protected] ~]# tar -zxf mysql-connector-java-5.1.44.tar.gz 
[[email protected] ~]# cp mysql-connector-java-5.1.44/mysql-connector-java-5.1.44-bin.jar /usr/local/hive/lib/

6.在hdfs中创建一下目录,并授权,用于存储文件

hdfs dfs -mkdir -p /user/hive/warehouse
hdfs dfs -mkdir -p /user/hive/tmp
hdfs dfs -mkdir -p /user/hive/log
hdfs dfs -chmod -R 777 /user/hive/warehouse
hdfs dfs -chmod -R 777 /user/hive/tmp
hdfs dfs -chmod -R 777 /user/hive/log

7.在mysql中创建相关用户和库

mysql> create database metastore;
Query OK, 1 row affected (0.03 sec)
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.26 sec)
mysql> grant all on local_hive.* to [email protected]‘%‘ identified by ‘hive123456‘;
Query OK, 0 rows affected, 1 warning (0.03 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

7.使用scp将hive拷贝到hadoop3和4上

[[email protected] ~]# scp -r /usr/local/hive [email protected]:/usr/local/
[[email protected] ~]# scp -r /usr/local/hive [email protected]:/usr/local/

三、修改配置文件

1.服务端hive-site.xml的配置(在hadoop5上)

<configuration>
<property>
    <name>hive.exec.scratchdir</name>
    <value>/user/hive/tmp</value>
</property>
<property>
    <name>hive.metastore.warehouse.dir</name>
    <value>/user/hive/warehouse</value>
</property>
<property>
    <name>hive.querylog.location</name>
    <value>/user/hive/log</value>
</property>

<property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://hadoop5:3306/metastore?createDatabaseIfNotExist=true&amp;characterEncoding=UTF-8&amp;useSSL=false</value>
</property>
<property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
</property>
<property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>hive</value>
</property>
<property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>hive123456</value>
</property>
</configuration>

2.客户端hive-site.xml的配置(在hadoop3和4上)

<configuration>
<property>
    <name>hive.metastore.uris</name>
    <value>thrift://hadoop5:9083</value>
</property>
<property>
    <name>hive.exec.scratchdir</name>
    <value>/user/hive/tmp</value>
</property>
<property>
    <name>hive.metastore.warehouse.dir</name>
    <value>/user/hive/warehouse</value>
</property>
<property>
    <name>hive.querylog.location</name>
    <value>/user/hive/log</value>
</property>
<property>
    <name>hive.metastore.local</name>
    <value>false</value>
</property>
</configuration>

四、启动hive(两中方式)

1.直接启动

service:

[[email protected] ~]# hive --service metastore

client:

[[email protected] ~]# hive
hive> show databases;
OK
default
Time taken: 1.599 seconds, Fetched: 1 row(s)
hive> quit;

2.beeline方式

需要先在hadoop的core-site.xml中添加配置

<property>  
  <name>hadoop.proxyuser.root.groups</name>  
  <value>*</value>  
</property>  
<property>  
  <name>hadoop.proxyuser.root.hosts</name>  
  <value>*</value>  
</property>

service:

[[email protected] ~]# nohup hiveserver2 &
[[email protected] ~]# netstat -nptl | grep 10000
tcp        0      0 0.0.0.0:10000           0.0.0.0:*               LISTEN      3464/java

client:

[[email protected] ~]# beeline 
Beeline version 1.2.1.spark2 by Apache Hive
beeline> !connect jdbc:hive2://hadoop5:10000 hive hive123456
Connecting to jdbc:hive2://hadoop5:10000
17/09/21 09:47:31 INFO jdbc.Utils: Supplied authorities: hadoop5:10000
17/09/21 09:47:31 INFO jdbc.Utils: Resolved authority: hadoop5:10000
17/09/21 09:47:31 INFO jdbc.HiveConnection: Will try to open client transport with JDBC Uri: jdbc:hive2://hadoop5:10000
Connected to: Apache Hive (version 2.3.0)
Driver: Hive JDBC (version 1.2.1.spark2)
Transaction isolation: TRANSACTION_REPEATABLE_READ
0: jdbc:hive2://hadoop5:10000> show databases;
+----------------+--+
| database_name  |
+----------------+--+
| default        |
+----------------+--+
1 row selected (2.258 seconds)
时间: 2024-08-27 17:52:20

Hive Remote模式搭建的相关文章

Hive本地模式安装及遇到的问题和解决方案

Apache Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行. 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析. Hive有三种运行模式: 1.内嵌模式:将元数据保存在本地内嵌的Derby数据库中,这得使用Hive最简单的方式,不过使用内嵌模式的话,缺点也比较明显,因为一个内嵌的D

安装Hive(独立模式 使用mysql连接)

安装Hive(独立模式 使用mysql连接) 1.默认安装了java+hadoop 2.下载对应hadoop版本的安装包 3.解压安装包 tar zxvf apache-hive-1.2.1-bin.tar.gz 4.安装mysql yum -y install mysql-server mysql mysqldev //需要以root身份运行 另外可能需要配置yum源 mysql常用命令: service mysqld start/stop chkconfig mysqld on //加入开机

Hive严格模式

Hive严格模式 Hive提供了一个严格模式,可以防止用户执行那些可能产生意向不到的不好的效果的查询.说通俗一点就是这种模式可以阻止某些查询的执行.通过如下语句设置严格模式: [java] view plain copy hive> set hive.mapred.mode=strict; 设置为严格模式后,可以禁止3种类型的查询: (1):带有分区的表的查询 如果在一个分区表执行hive,除非where语句中包含分区字段过滤条件来显示数据范围,否则不允许执行.换句话说就是在严格模式下不允许用户

【Hadoop基础教程】2、Hadoop之单机模式搭建

单机模式所需要的系统资源是最少的,这种安装模式下,Hadoop的core-site.xml.mapred-site.xml.hdfs-site.xml配置文件均为空.默认情况下,官方hadoop-1.2.1.tar.gz文件默认使用的就是单机安装模式.当配置文件为空时,Hadoop完全运行在本地,不与其他节点交互,也不使用Hadoop文件系统,不加载任何守护进程,该模式主要用于开发调试MapReduce应用程序的逻辑,不与任何守护进程交互进而避免复杂性.以hadoop用户远程登录K-Master

18.6 负载均衡集群介绍;18.7 LVS介绍;18.9 LVS NAT模式搭建(上);18.10 LVS NAT模式搭建(下)

扩展: lvs 三种模式详解 http://www.it165.net/admin/html/201401/2248.html lvs几种算法 http://www.aminglinux.com/bbs/thread-7407-1-1.html 关于arp_ignore和 arp_announce http://www.cnblogs.com/lgfeng/archive/2012/10/16/2726308.html lvs原理相关的   http://blog.csdn.net/pi9nc/

Hadoop2.6.0单机模式搭建

1.下载安装jdk 下载jdk1.6.0_39_x64.bin ./jdk1.6.0_39_x64.bin 执行文件 2.配置环境变量 vim /etc/profile 追加: export JAVA_HOME=/root/hadoop/jdk1.6.0_39export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/libexport PATH=$PATH:$JAVA_HOME/bin 让环境变量生效 source /etc/prof

DNS 服务器三种模式搭建和常见问题解答

DNS 服务器三种模式搭建和常见问题解答                               作者浩浩哥来了   主DNS服务器搭建   DNS是域名服务器(DomainNameServer)的缩写,在TCP/IP网络中是一种很重要的网络服务,它用于将易于记忆的域名和不易记忆的IP地址进行转化   Vim /etc/hosts 修改主机名 127.0.0.1  localhost localhost.localdomain localhost4 localhost4.localdomai

负载均衡集群介绍,LVS介绍,LVS的调度算法,LVS的NAT模式搭建

笔记内容: 18.6负载均衡集群介绍 18.7 LVS介绍 18.8 LVS的调度算法 18.9/18.10 LVS NAT模式搭建 笔记日期:2017-11-11 18.6负载均衡集群介绍 首先我们先介绍一下什么是负载均衡: 负载平衡(Load balancing)是一种计算机网络技术,用来在多个计算机(计算机集群).网络连接.CPU.磁盘驱动器或其他资源中分配负载,以达到最佳化资源使用.最大化吞吐率.最小化响应时间.同时避免过载的目的.这是来自维基百科的介绍.负载均衡的目的,就在于平衡计算机

LVS DR模式搭建,keepalived + lvs

笔记内容: 18.11 LVS DR模式搭建 18.12 keepalived lvs 笔记日期:2017-11-13 18.11 LVS DR模式搭建 在实际生产环境中DR模式是用得最多的,NAT模式都用得比较少,因为NAT有一个瓶颈,服务器少还行,一旦服务器多的话,就不行了.所以DR模式才是重点,这一章节介绍如何搭建DR模式. 准备工作: 准备三台机器,一台作为分发器(dir),其他两台作为Real Server.三台机器都可以使用同一网段的IP,与NAT模式不同的是,三台机器都需要绑定一个