1. 安装碰着表达

(1)hive1.2自此必要java1.7可能越来越高的版本,提议用1.8;

(2)hadoop版本2.x之上,hive2.0.0过后不再支持1.x;

在本文此前,hadoop景况已经安装,具体可知文章《编写翻译hadoop2.9源码并搭建情状》

for my honey!

一、安装hadoop集群,这里希图两台hadoop服务器,hd01,hd02

2. 下载并编写翻译hive源码

官方网址地址

自个儿采纳的是眼前的稳固版2.3.2

解压到安装目录,步入源码目录之后推行编译命令

mvn clean package -Pdist -DskipTests

编写翻译达成

1、前言

安装hive前提是要先安装hadoop集群,並且hive只须要再hadoop的namenode节点集群里安装就能够,能够不在datanode节点的机械上设置。别的还亟需表达的是,尽管修改配置文件并没有需求你已经把hadoop跑起来,可是本文中用到了hadoop命令,在施行那么些命令前你必须保险hadoop是在例行跑着的,并且运转hive的前提也是需求hadoop在平常运维,所以提议先将另外基础条件设置好,hive安装的景况基础包涵:
Hadoop-2.7.3
JDK-1.8.0_92
Spark-2.1.1-bin-hadoop2.7

二、安装MySQL数据库

编写翻译时碰着的标题总结

2、下载hive

下载地址:http://hive.apache.org/downloads.html
点击图中的Download a release now!

Betway官网 1

无标题.png

依照步骤找到作一镜像,使用wget命令下载
wget
https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-2.1.1/apache-hive-2.1.1-bin.tar.gz

三、下载hive安装包2.1.1

2.1 缺少jar包pentaho-aggdesigner-algorithm:jar

给编写翻译战败的这一个类型的pom.xml增添底下的货仓只怕增添maven的mirror

<repository>

    <releases>

                <enabled>true</enabled>

                <updatePolicy>always</updatePolicy>

                <checksumPolicy>warn</checksumPolicy>

    </releases>

    <id>conjars</id>

    <name>Conjars</name>

    <url>;

    <layout>default</layout>

</repository> 

<mirror>

    <id>conjars</id>

    <name>Conjars</name>

    <url>;

    <mirrorOf>*</mirrorOf>

</mirror>

若果如故不能够下载这就手动下载pentaho-aggdesigner-algorithm-5.1.5-jhyde.jar接下来增多到本地maven旅社

mvn install:install-file
-Dfile=/Users/zl/Downloads/pentaho-aggdesigner-algorithm-5.1.5-jhyde.jar
-DgroupId=org.pentaho
-DartifactId=pentaho-aggdesigner-algorithm -Dversion=5.1.5-jhyde
-Dpackaging=jar

3、安装HIVE

#设若hive安装文件放在/data/soft目录下
#本集群将hive安装到/data/spark目录下
#进去安装目录
cd /data/spark
#解压hive
tar -zxvf /data/soft/apache-hive-2.1.1-bin.tar.gz
#切换至root账户配置hive情况变量
vim /etc/profile


export HIVE_HOME=/data/soft/apache-hive-2.1.1
export HIVE_CONF_DIR=$HIVE_HOME/conf
export PATH=$PATH:$HIVE_HOME/bin


#root账户下使配置文件的改造生效
source /etc/profile

http://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-2.1.1/apache-hive-2.1.1-bin.tar.gz

2.2 缺少jar包javax.jms:jms:jar:1.1

以此包在大旨仓库确实是一直不的,不过在jboss饭店里面有,能够采用同样的管理格局

手动下载地址

4、配置hive文件

四、将安装包上传至hd01服务器
/data/tools目录下,并解压至/data/hive目录中。

3. 搭建景况

编写翻译完的安装包在目录packaging/target下

4.1、修改梅毒E配置文件

#进去hive配置文件存放目录
cd /data/soft/apache-hive-2.1.1-bin/conf
#把开始化的文本 复制一份出来 并且改名


cp hive-env.sh.template hive-env.sh
cp hive-default.xml.template hive-site.xml
cp hive-log4j2.properties.template hive-log4j2.properties
cp hive-exec-log4j2.properties.template hive-exec-log4j2.properties


五、创立hadoop用户,已创设忽略此步骤。

安插文件全体在conf目录下

4.2、修改hive-env.sh

#打开hive-env.sh文件
vim hive-env.sh


#hadoop_home路径
HADOOP_HOME=/data/spark/hadoop-2.7.3
#hive配置文件存放路线
export HIVE_CONF_DIR=/data/spark/apache-hive-2.1.1-bin/conf
#hive相关jar贮存路线
export HIVE_AUX_JARS_PATH=/data/spark/apache-hive-2.1.1-bin/lib


root操作:

(1) 修改配置文件hive-site.xml

mv hive-default.xml.template hive-site.xml

将${system:java.io.tmpdir}全体换成/work/data/hive_data/tmp

将${system:user.name}全体替换到本身的用户名

hive.metastore.warehouse.di=/work/data/hive_data/warehouse

datanucleus.schema.autoCreateAll=true

hive.metastore.schema.verification=false

下边三个是非必须的,只是为着二回性修改好,以往用的话一贯用

hive.repl.rootdir的值修改为/work/data/hive_data/repl_rootdir

hive.repl.cmrootdir的值修改为/work/data/hive_data/repl_cmrootdir

4.3、在hdfs中成立文件并授权

#hive中积攒的多少和产生的有时文件须求仓库储存在hdfs中,由此必要再hdfs中开创相应文件
#贮存hive中现实数量目录
hadoop fs -mkdir /data/hive/warehouse
#贮存hive运转发生的不经常文件
hadoop fs -mkdir /data/hive/tmp
#寄放hive日志文件
hadoop fs -mkdir /data/hive/log
#修改文件权限
hadoop fs -chmod -R 777 /data/hive/warehouse
hadoop fs -chmod -R 777 /data/hive/tmp
hadoop fs -chmod -R 777 /data/hive/log

useradd hadoop

(2)hive-log4j2.properties

mv hive-log4j2.properties.template hive-log4j2.properties

hive私下认可使用Derby数据库,基于Derby数据库的铺排已经成功,本文使用mysql数据库,配置后续hive-site.xml文件

javax.jdo.option.ConnectionURL=jdbc:mysql://localhost:3306/hive?useUnicode=true&characterEncoding=utf8&autoReconnect=true&rewriteBatchedStatements=true&useSSL=false

javax.jdo.option.ConnectionDriverName=com.mysql.jdbc.Driver

javax.jdo.option.ConnectionUserName=hive

javax.jdo.option.ConnectionPassword=123qwe

下载mysql-connector-java

下载地址:https://cdn.mysql.com//Downloads/Connector-J/mysql-connector-java-5.1.45.zip

解压获得mysql-connector-java-5.1.45.jar,拷贝到hive的lib目录下

4.4、修改hive-site.xml文件

#设置hive数据存款和储蓄目录、有的时候目录、日志寄放目录


<property>
  <name>hive.exec.scratchdir</name>
  <value>hdfs://master:9000/data/hive/temp</value>
</property>
<property>
   <name>hive.metastore.warehouse.dir</name>
  <value>hdfs://master:9000/data/hive/warehouse</value>
</property>
<property>
  <name>hive.querylog.location</name>
  <value>hdfs://master:9000/data/hive/log</value>
</property>

<!—该配置是关闭hive元数据版本认证,不然会在运营spark程序时报错–>
<property>
  <name>hive.metastore.schema.verification</name>
  <value>false</value>
</property>


注:1、在安排hdfs文件路线时必须填写完整的hdfs相对路线,如hdfs://master:9000/data/hive/temp
master:8000为集群namenode所在节点的IP和端口号
2、以上配置必要再hive-site.xml文件中找到要求配置的参数,
并修改其暗中认可值。倘诺只是复制以上配置到hive-site.xml
文件会在运营时被默许值覆盖而一点办法也未有运营

passwd hadoop

开发银行Hive 的 Metastore Server服务进度

hive –service metastore &

4.5、 修改hive-site.xml文件中mysql连接库配置

#出于本集群众性采矿业用mysql存款和储蓄hive元数据新闻,由此须要配置mysql连接音讯


<!—配置mysql IP 端口以及放元数据的库名称–>
<property>
  <name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:mysql://000.000.000.000:3036/hive?createDatabaseIfNotExist=true</value>
</property>
<!—配置mysql运维器名称 –>
<property>
  <name>javax.jdo.option.ConnectionDriverName</name>
   <value>com.mysql.jdbc.Driver</value>
</property>
<!—配置连接mysql用户名 –>
<property>
  <name>javax.jdo.option.ConnectionUserName</name>
  <value>******</value>
</property>
<!—配置连接mysql用户名登入密码–>
<property>
  <name>javax.jdo.option.ConnectionPassword</name>
  <value>********</value>
</property>


注:1、同样以上配置音信须要找到hive-site.xml文件中相应的陈设属性,并修改为相应的值
2、连接mysql的用户名必须持有很高的操作mysql的权限不然开头化时会提醒权限不足

六、修改hive目录权限

问题1:metastore.sh: line 29: export: ` -Dproc_metastore  not a valid identifier

翻看这一个本子开掘=号后边多了多个空格,去掉即可

4.6、修改hive-site.xml不时文件目录

1、在地头创造一文本
  mkdir $HIVE_HOME/temp
2、在配备文件 hive-site.xml 里面
  把{system:java.io.tmpdir}改成$HIVE_HOME/tmp/
  把{system:user.name}改成{user.name}

root操作

启动hiveserver服务

hive –service hiveserver2 &

进入hive客户端 

hive

测量试验语句

create table test (key string);

show tables ;

时至明天,安装已经成功。

4.7、配置JDBC驱动包

1、下载jdbc驱动包
 地址https://dev.mysql.com/downloads/connector/j/5.1.html
2、 解压后将jdbc-connector-java.jar文件拷贝到 $烫伤E_HOME/lib文件夹下

cd /data

5、HIVE运行

1、 初始化hive元数据
  $HIVE_HOME/bin/schematool -dbType mysql –initSchema
2、 后台运营hiveserver2服务
  $HIVE_HOME/bin/hive –service hiveserver2&
3、 启动beeline
  beeline
4、 连接hive
  !connect
jdbc:hive2://master:10000/default

chown -R hadoop hive

六、设置hive意况变量

切换到hadoop用户:

vi ~/.bash_profile

添加 HIVE_HOME=/data/hive

PATH=$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH:$HOME/bin

export PATH JAVA_HOME HIVE_HOME

保留退出

source ~/.bash_profile使情形变量生效

七、修改hive配置文件

1)图谋安顿文件

cd /data/hive/conf

cp hive-env.sh.template hive-env.sh

cp hive-default.xml.template hive-site.xml

cp hive-log4j2.properties.template hive-log4j2.properties

cp hive-exec-log4j2.properties.template hive-exec-log4j2.properties

2)修改hive-env.sh,在终极增多:

export JAVA_HOME=/data/jdk1.8

export HADOOP_HOME=/data/hadoop/hadoop-2.7.4

export HIVE_HOME=/data/hive

export HIVE_CONF_DIR=$HIVE_HOME/conf

3)修改hive-site.xml,找到以下对应的property修改其value值

hive.exec.scratchdir

/tmp/hive-${user.name}

HDFS root scratch dir for Hive jobs which gets created with write all
(733) permission. For each connecting user, an HDFS scratch dir:
${hive.exec.scratchdir}/<username> is created, with
${hive.scratch.dir.permission}.

hive.exec.local.scratchdir

/tmp/${user.name}

Local scratch space for Hive jobs

hive.downloaded.resources.dir

/tmp/hive/resources

Temporary local directory for added resources in the remote file system.

hive.querylog.location

/tmp/${user.name}

Location of Hive run time structured log file

hive.server2.logging.operation.log.location

/tmp/${user.name}/operation_logs

Top level directory where operation logs are stored if logging
functionality is enabled

4)修改hadoop配置core-site.xml,参预以下配置,开启hive访谈hdfs权限:

其间,hadoop.proxyuser.hadoop.hosts,黑古铜色字符为索要拜访hdfs的系统用户。

hadoop.proxyuser.hadoop.hosts

*

hadoop.proxyuser.hadoop.groups

*

5)配置hive元数据存款和储蓄,hive暗中同意使用derby内嵌数据库,生产遭逢一般采取mysql数据库

将 mysql-connector-java-5.1.43-bin.jar 放入 $HIVE_HOME/lib 下。

在hive-site.xml中配备如下音讯:

javax.jdo.option.ConnectionURL

jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&characterEncoding=UTF-8&useSSL=false

javax.jdo.option.ConnectionDriverName

com.mysql.jdbc.Driver

javax.jdo.option.ConnectionUserName

hive

javax.jdo.option.ConnectionPassword

hive

6)为hive创建hdfs目录

在 Hive 中创制表以前必要采纳以下 HDFS 命令创制 /tmp 和
/user/hive/warehouse (hive-site.xml 配置文件中属性项
hive.metastore.warehouse.dir 的暗中同意值) 目录并给它们赋写权限。

保证hadoop的hdfs服务已运维。

进入hadoophome的bin目录,cd /data/hadoop/hadoop-2.7.4/bin

各类施行以下命令:

./hdfs dfs -mkdir /tmp

./hdfs dfs -mkdir -p /user/hive/warehouse

./hdfs dfs -chmod g+w /tmp

./hdfs dfs -chmod g+w /user/hive/warehouse

7)给mysql创建hive用户

mysql -u root -p,登录mysql

mysql> CREATE USER ‘hive’@’localhost’ IDENTIFIED BY “hive”;

mysql> grant all privileges on *.* to hive@localhost identified by
‘hive’;

8)运行hive

初始化hive,执行 schematool -dbType mysql -initSchema

实行hive命令,走入命令行,输入show tables测量试验服务

9)修改log配置文件,将log输出到钦赐目录

vi hive-log4j2.properties

10)由于hiveserver2未有后台运行的脚本,将以下脚本复制到bin目录下,并予以当前用户实行权限。

下一场施行 hiveserver2.sh start

metastore.sh start

11)浏览器展开hiveserver webui

相关文章