本篇内容主要讲解“hive-1.2.1的安装步骤”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“hive-1.2.1的安装步骤”吧!
IP | 主机名 | 部署 |
192.168.2.10 | bi10 | hadoop-2.6.2,hive-1.2.1,hive metastore |
192.168.2.12 | bi12 | hadoop-2.6.2,hive-1.2.1,hive metastore |
192.168.2.13 | bi13 | hadoop-2.6.2,hive-1.2.1 |
新建用户hive,密码hive,然后授权。数据库IP:192.168.2.11 端口:3306
CREATE USER 'hive'@'%' IDENTIFIED BY 'hive'; GRANT ALL PRIVILEGES ON *.* TO 'hive'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES; CREATE DATABASE hive; alter database hive character set latin1;
解压hive-1.2.1到/home/hadoop/work/hive-1.2.1目录下,然后修改配置文件
修改hive-site.xml,进入hive的conf目录下
[hadoop@bi13 conf]$ mv hive-env.sh.template hive-site.xml [hadoop@bi13 conf]$ vim hive-site.xml
hive-site.xml,参数说明:
hive.metastore.warehouse.dir | hive数据仓库在hdfs中的位置,由于hadoop集群采用了ha的方式,所以在这里使用hdfs://masters/user/hive/warehouse,而没有具体的namenode主机+端口 |
hive.metastore.uris | 这个使用hive使用metastore server的端口配置,我们使用默认的9083端口 |
hive.exec.scratchdir | 同样,由于ha的配置,我们使用hdfs://masters/user/hive/tmp |
javax.jdo.option.ConnectionPassword | mysql数据库密码 |
javax.jdo.option.ConnectionDriverName | mysql数据库驱动 |
javax.jdo.option.ConnectionURL | mysql数据库URL |
javax.jdo.option.ConnectionUserName | mysql数据库用户名 |
hive.querylog.location hive.server2.logging.operation.log.location hive.exec.local.scratchdir hive.downloaded.resources.dir | 这些配置项的value值必须写成具体的路径,否在会出现问题 |
<property> <name>hive.metastore.warehouse.dir</name> <value>hdfs://masters/user/hive/warehouse</value> <description>location of default database for the warehouse</description> </property> <property> <name>hive.metastore.uris</name> <value>thrift://bi10:9083,thrift://bi12:9083</value> <description>Thrift URI for the remote metastore. Used by metastore client to connect to remote metastore.</description> </property> <property> <name>hive.exec.scratchdir</name> <value>hdfs://masters/user/hive/tmp</value> <description>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}.</description> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>hive</value> <description>password to use against metastore database</description> </property> <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.ConnectionURL</name> <value>jdbc:mysql://192.168.2.11:3306/hive?createDatabaseIfNotExist=true</value> <description>JDBC connect string 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>hive.querylog.location</name> <value>/home/hadoop/work/hive-1.2.1/tmp/iotmp</value> <description>Location of Hive run time structured log file</description> </property> <property> <name>hive.server2.logging.operation.log.location</name> <value>/home/hadoop/work/hive-1.2.1/tmp/operation_logs</value> <description>Top level directory where operation logs are stored if logging functionality is enabled</description> </property> <property> <name>hive.exec.local.scratchdir</name> <value>/home/hadoop/work/hive-1.2.1/tmp/${system:user.name}</value> <description>Local scratch space for Hive jobs</description> </property> <property> <name>hive.downloaded.resources.dir</name> <value>/home/hadoop/work/hive-1.2.1/tmp/${hive.session.id}_resources</value> <description>Temporary local directory for added resources in the remote file system.</description> </property>
使用hive下面的jline-2.12.jar替代hadoop下面的jline-0.9.94.jar
mv hive-1.2.1/lib/jline-2.12.jar hadoop-2.6.2/share/hadoop/yarn/lib/ mv hadoop-2.6.2/share/hadoop/yarn/lib/jline-0.9.94.jar hadoop-2.6.2/share/hadoop/yarn/lib/jline-0.9.94.jar.bak
把以上操作复制到所有部署hive的机器上
分别在bi10和bi12下面启动metastore service
nohup hive --service metastore > null 2>&1 &
进入hive,看是否有问题。如果存在问题是用hive --hiveconf hive.root.logger=DEBUG,console启动,可以看到具体的日志。
[hadoop@bi13 work]$ hive SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/home/hadoop/work/hadoop-2.6.2/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/home/hadoop/work/spark-1.5.1/lib/spark-assembly-1.5.1-hadoop2.4.0.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/home/hadoop/work/hadoop-2.6.2/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/home/hadoop/work/spark-1.5.1/lib/spark-assembly-1.5.1-hadoop2.4.0.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] Logging initialized using configuration in jar:file:/home/hadoop/work/hive-1.2.1/lib/hive-common-1.2.1.jar!/hive-log4j.properties hive>
到此,相信大家对“hive-1.2.1的安装步骤”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。