irpas技术客

Hive3详细教程(一)Hive3+Hadoop3环境安装_Java朱老师_hive3 安装

网络投稿 7473

本次Hive使用Hive3.1.2。 本次规划为三台虚拟机结点,其中在hp301上安装mysql和hive。

主机名IP地址hp1192.168.150.101mysql/hivehp2192.168.150.102hp3192.168.150.103使用Hive需要用到的环境是Hadoop,本次使用的是Hadoop3.3.1,其安装、使用过程详见本博客Hadoop3系列:Hadoop3详细教程使用Hive需要在Linux虚拟机上安装Mysql,安装过程详见,本博客关于在Linux上安装和卸载MySQL的连接:Linux下MySQL安装与卸载

完成以上操作后,我们可以进行Hive的安装。 以下为详细安装步骤: 1.下载apache-hive-3.1.2-bin.tar.gz上传到hp301 /apps下。 2.解压至/usr/local下

tar -zxvf /apps/apache-hive-3.1.2-bin.tar.gz -C /usr/local

3.为方便后续使用,对其创建一个软连接:

ln -s /usr/local/apache-hive-3.1.2-bin/ /usr/local/hive3

4.配置Hive的环境变量: 在/etc/profile.d下新建一个hive.sh

vi/etc/profile.d/hive.sh

在其中书写以下代码:

export HIVE_HOME=/usr/local/hive3 export PATH=$PATH:$HIVE_HOME/bin

使用source命令,使环境变量生效:

source /etc/profile.d/hive.sh

6.修改配置文件 将/usr/local/hive3/conf/hive-env.sh.template改名为hive-env.sh 并在后面追加:

export JAVA_HOME=$JAVA_HOME export HADOOP_HOME=$HADOOP_HOME export HIVE_HOME=$HIVE_HOME

在hive3/conf中新建一个hive-site.xml,里面填写:

<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <!-- jdbc URL --> <property> <name>javax.jdo.option.ConnectionURL</name> <!--规划mysql中存储元数据的数据库名为metastore,当初始化数据时不存在时自动创建--> <value>jdbc:mysql://hp1:3306/metastore?createDatabaseIfNotExist=true&amp;useSSL=false</value> </property> <!-- jdbc Driver--> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> </property> <!--数据库用户名--> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>root</value> </property> <!--数据库密码--> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>Hive123+</value> </property> <!-- Hive 元数据存储版本的验证 --> <property> <name>hive.metastore.schema.verification</name> <value>false</value> </property> <!--元数据存储授权--> <property> <name>hive.metastore.event.db.notification.api.auth</name> <value>false</value> </property> <!-- Hive 默认在 HDFS 的工作目录 --> <property> <name>hive.metastore.warehouse.dir</name> <value>/user/hive/warehouse</value> </property> </configuration>

7.添加Java访问MySQL的jar包 下载mysql-connector-java-5.1.47-bin.jar并上传到linux服务器,然后将其复制到/usr/local/hive3/lib下

8.初始化Hive数据库,执行命令:

schematool -initSchema -dbType mysql

此时使用navicat查看hp1的数据库,会发现多了一个metastrore的数据库,库中所有的表即使Hive存放元数据的表结构: 9.使用Hive 启动hadoop

start-all.sh

hadoop成功启动之后,可以启动hive客户端:

hive

如图所示的命令行效果: 可以通过另一个连接查看进程,Hive实际上就是一个RunJar进程: 如果启动hive报异常:

Exception in thread "main" java.lang.RuntimeException: org.apache.hadoop.hdfs.server.namenode.SafeModeException: Cannot create directory /tmp/hive. Name node is in safe mode. Resources are low on NN. Please add or free up more resourcesthen turn off safe mode manually. NOTE: If you turn off safe mode before adding resources, the NN will immediately return to safe mode. Use "hdfs dfsadmin -safemode leave" to turn safe mode off. NamenodeHostName:hp1

有可能是空间不足,可以删除一些安装包。 也可能是hadoop处于安全模式,用以下命令解除:

hadoop dfsadmin -safemode leave #进入安全模式 hadoop dfsadmin -safemode enter #查看当前模式 hadoop dfsadmin -safemode get


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #Hive3 #安装 #本次Hive使用Hive312