麒麟操作系统-04-Hive3.1.2安装与部署

麒麟操作系统-04-Hive3.1.2安装与部署

在大数据平台的搭建过程中,我们安装完成Hadoop之后,接着安装Hive。

这里版本选择,是因为Hive 3.1.2相对于之前的版本,在查询性能、事务能力、SQL标准支持等方面均有不小的改进和优化,是一个更加稳定、高效的版本。

话不多说,上干货。

按照顺序看到这里的话,应该知道,所有的安装包上传到software,解压到server。再次提醒。

1、解压:

tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /opt/server
# 改名,良好的命名规范。
cd /opt/server
mv apache-hive-3.1.2-bin.tar.gz/ hive-3.1.2.tar.gz

2、进入hive的安装目录,先操作lib文件夹下的三个jar

  1. 删除log4j-slf4j-impl-2.10.0.jar (解决日志冲突)
rm -rf log4j-slf4j-impl-2.10.0.jar
  1. 替换guava
    H A D O O P H O M E / s h a r e / c o m m o n / l i b / g u a v a − 27.0 − j r e . j a r 替换过来,删除自带的低版本。 ‘ HADOOP_HOME/share/common/lib/guava-27.0-jre.jar 替换过来,删除自带的低版本。` HADOOPHOME/share/common/lib/guava27.0jre.jar替换过来,删除自带的低版本。HADOOP_HOME替换为自己hadoop的安装目录,$HIVE_HOME替换为自己的hive安装目录,没有配置环境变量的话,不要直接复制粘贴。`

    mv $HADOOP_HOME/share/common/lib/guava-27.0-jre.jar $HIVE_HOME/lib/
    rm $HIVE_HOME/lib/guava-19.0.jar
    
  2. 添加mysql的连接驱动 mysql-connector-java-5.1.47.jar
    (做开发的应该不会没有吧?)

3、配置metastore到mysql

说明:

​ 在hive中,我们需要将默认的元数据存储数据库更换为MySQL,默认为Derby。因为Derby只支持单会话,而MySQL支持多会话。

若是没有安装mysql,参照我的另一篇教程:http://t.csdn.cn/eNltB

进入到$HIVE_HOME/conf/目录下,编辑:

vim hive-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
	<configuration>
		<!-- jdbc连接的URL -->
		<property>
			<name>javax.jdo.option.ConnectionURL</name>
			<value>jdbc:mysql://node1:3306/metastore?useSSL=false</value>
		</property>
		<!-- jdbc连接的Driver-->
		<property>
		<name>javax.jdo.option.ConnectionDriverName</name>
		<value>com.mysql.jdbc.Driver</value>
		</property>
		<!-- jdbc连接的username-->
		<property>
			<name>javax.jdo.option.ConnectionUserName</name>
			<value>root</value>
		</property>
		<!-- jdbc连接的password -->
		<property>
			<name>javax.jdo.option.ConnectionPassword</name>
			<value>123456</value>
		</property>
		<!-- Hive默认在HDFS的工作目录 -->
		<property>
			<name>hive.metastore.warehouse.dir</name>
			<value>/user/hive/warehouse</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>		 
        <!-- 指定存储元数据要连接的地址 -->
		<property>
			<name>hive.metastore.uris</name>
			<value>thrift://node1:9083</value>
		</property>
		<!-- 指定hiveserver2连接的host -->
		<property>
			<name>hive.server2.thrift.bind.host</name>
			<value>node1</value>
		</property>
		<!-- 指定hiveserver2连接的端口号 -->
		<property>
			<name>hive.server2.thrift.port</name>
			<value>10000</value>
		</property>
	</configuration>

4、登录MySQL,创建hive元数据库

可以直接命令行登录,也可以使用navicat等第三方连接软件,创建一个空的数据库metastore即可。

mysql -uroot -p123456
> create database metastore;
> quit;

进入hive的bin目录初始化数据库:

./schematool -initSchema -dbType mysql -verbose

查看MySQL中的metastore数据库,多出74张表,表示初始化成功。

5、配置hive环境变量(可以解压之后直接做)

vim /etc/profile
export HIVE_HOME=/opt/server/hive-3.1.2
export PATH=$PATH:$HIVE_HOME/bin

6、启动

  • 先启动hadoop集群

    start-all.sh
    
  • 启动hive的元数据管理

    hive --service metastore & 
    # & 表示后台运行
    
  • 启动hive

    hive
    
  • 测试,有输出不报错即ok

    show databases;
    
  • 退出命令

    :quit
    

7、远程连接

开启远程连接:

hive --service hiveserver2 &

使用beeline进行连接测试:

beeline
> !connect jdbc:hive2://node1:10000
> root
> (无密码直接回车即可)
> show databases;

出现数据库列表,表示连接成功。

注意:

一般大数据操作hive数仓,写SQL都是在DataGrip软件中进行,类似于IDEA,同一家的产品。

连接方式类似于mysql的第三方连接,记住jdbc:hive2://node1:10000这个地址!

!!!

只使用本地hive,开启metastore,即可使用hive命令进入命令行操作界面;

使用远程工具连接hive,先开启metastore,再开启hiveserver2,才能使用工具连接hive!!

hive的操作命令,与mysql的语法类似,会更加丰富,需要专门练习。大数据中的sql一般要比之前学习mysql时要复杂一些。可以参考网上其他的教程,进行练习强化!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
以下是在 CentOS 7 上安装 Hive 3.1.2 的步骤: 1. 安装 Java JDK Hive 需要运行在 Java 环境中,因此需要先安装 Java JDK。 ```bash sudo yum install java-1.8.0-openjdk-devel ``` 2. 下载并解压 HiveApache Hive 的官网 https://hive.apache.org/downloads.html 下载 Hive 3.1.2 的压缩包,并解压到指定的目录。 ```bash # 下载 wget https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-3.1.2/apache-hive-3.1.2-bin.tar.gz # 解压 tar -zxvf apache-hive-3.1.2-bin.tar.gz sudo mv apache-hive-3.1.2-bin /usr/local/hive ``` 3. 配置环境变量 编辑 /etc/profile 文件,添加以下内容: ```bash export HIVE_HOME=/usr/local/hive export PATH=$PATH:$HIVE_HOME/bin ``` 保存并退出,执行以下命令使环境变量生效: ```bash source /etc/profile ``` 4. 配置 Hive 在 $HIVE_HOME/conf 目录下,将 hive-env.sh.template 文件复制为 hive-env.sh,并修改其中的 JAVA_HOME 变量指向 Java JDK 的安装路径。 ```bash cp $HIVE_HOME/conf/hive-env.sh.template $HIVE_HOME/conf/hive-env.sh vi $HIVE_HOME/conf/hive-env.sh # 修改为 export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk ``` 5. 配置 HadoopHadoop 的配置文件 core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml 复制到 $HIVE_HOME/conf 目录下。 ```bash cp $HADOOP_HOME/etc/hadoop/core-site.xml $HIVE_HOME/conf/ cp $HADOOP_HOME/etc/hadoop/hdfs-site.xml $HIVE_HOME/conf/ cp $HADOOP_HOME/etc/hadoop/mapred-site.xml $HIVE_HOME/conf/ cp $HADOOP_HOME/etc/hadoop/yarn-site.xml $HIVE_HOME/conf/ ``` 6. 配置元数据库 Hive 需要一个元数据库来存储它的元数据。在本地安装 Derby 数据库作为 Hive 的元数据库。 ```bash # 下载 Derby 数据库 wget https://mirrors.tuna.tsinghua.edu.cn/apache/db/derby/db-derby-10.15.2.0/db-derby-10.15.2.0-bin.tar.gz # 解压 tar -zxvf db-derby-10.15.2.0-bin.tar.gz sudo mv db-derby-10.15.2.0-bin /usr/local/derby # 配置环境变量 echo 'export DERBY_HOME=/usr/local/derby' >> /etc/profile echo 'export PATH=$PATH:$DERBY_HOME/bin' >> /etc/profile source /etc/profile # 创建元数据库 mkdir -p /usr/local/derby/data derby/bin/startNetworkServer & $HIVE_HOME/bin/schematool -dbType derby -initSchema ``` 7. 启动 Hive 执行以下命令启动 Hive: ```bash hive ``` 如果一切顺利,就可以看到 Hive 的命令行界面了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

m是只奶牛猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值