系统环境继上篇hadoop2.6.5安装的配置:
系统:Centos6.9 x64
master 172.16.12.142 (安装Hive)
slave1 172.16.12.140
slave2 172.16.12.141
安装mysql
此处yum用的安装,也可源码编译安装等。
1.yum安装
yum install -y mysql-devel mysql-server
2.设置mysql密码
[root@master ~]# service mysqld restart
[root@master src]# mysqladmin -uroot password '123456'
3.创建数据库hive
[root@master src]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.1.73 Source distribution
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> create database hive;
Query OK, 1 row affected (0.45 sec)
mysql> grant all on hive.* to hive@'%' identified by '123456';
Query OK, 0 rows affected (0.00 sec)
mysql> grant all privileges on hive.* to hive@"master" identified by "123456";
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
下载hive
cd /usr/local/src
wget http://mirrors.hust.edu.cn/apache/hive/hive-1.2.2/apache-hive-1.2.2-bin.tar.gz
tar -zxvf apache-hive-1.2.2-bin.tar.gz
配置hive
1.先复制配置文件
[root@master apache-hive-1.2.2-bin]# cd /usr/local/src/apache-hive-1.2.2-bin/conf
[root@master conf]# cp hive-default.xml.template hive-site.xml
[root@master conf]# cp hive-env.sh.template hive-env.sh
[root@master conf]# cp hive-exec-log4j.properties.template hive-exec-log4j.properties
[root@master conf]# cp hive-log4j.properties.template hive-log4j.properties
2.创建一些目录 hdfs上的目录
注:下面的配置需要用到这些目录
[root@master conf]# hadoop fs -mkdir -p /hive/warehouse
[root@master conf]# hadoop fs -mkdir -p /hive/logs
[root@master conf]# hadoop fs -mkdir -p /hive/tmp
3.创建本地的目录
注:下面的配置需要用到这些目录
[root@master bin]# mkdir -p /hive/logs
[root@master bin]# mkdir -p /hive/exec
[root@master bin]# mkdir -p /hive/downloadedsource
4.配置hive-site.xml
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
<description>Username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
<description>password to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://172.16.12.142:3306/hive?createDatabaseIfNotExist=true&useSSL=false</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
<property>
<name>hive.metastore.uris</name>
<value/> //这里我是默认的,没变
<description>Thrift URI for the remote metastore. Used by metastore client to connect to remote metastore.</description>
</property>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/hive/warehouse</value> //到时候需要在hdfs上建立想要的目录
<description>location of default database for the warehouse,Hive在HDFS上的根目录</description>
</property>
<property>
<name>hive.exec.local.scratchdir</name>
<value>/hive/exec</value>
<description>Local scratch space for Hive jobs</description>
</property>
<property>
<name>hive.downloaded.resources.dir</name>
<value>/hive/downloadedsource</value>
<description>Temporary local directory for added resources in the remote file system.</description>
</property>
5.配置log4j.property
注:修改hive.log.dir
# vim hive-log4j.properties
hive.log.dir=/hive/logs
6.下载mysql驱动包
# cd /usr/local/src/apache-hive-1.2.2-bin/lib
# wget http://central.maven.org/maven2/mysql/mysql-connector-java/5.1.38/mysql-connector-java-5.1.38.jar
启动服务
[root@master bin]# ./hive --service metastore&
[1] 3660
[root@master bin]# Starting Hive Metastore Server
[root@master bin]# jps
3751 Jps
1973 SecondaryNameNode
3541 RunJar
2119 ResourceManager
3660 RunJar
1797 NameNode
如果执行上述命令报错如下:
org.apache.thrift.transport.TTransportException: Could not create ServerSocket on address 0.0.0.0/0.0.0.0:9083.
出现上述报错的原因是系统里存在hive进程,导致启动冲突。
解决方法就是kill掉hive进程再启动。
# ps -ef| grep hive|grep -v grep|xargs kill -9
本文由 Mr Gu 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为: Apr 13, 2018 at 05:08 am