IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 一 Hive 概述安装及其基本使用 -> 正文阅读

[大数据]一 Hive 概述安装及其基本使用

一, Hive概述

1. 什么是Hive

[概念]

Hive: 由FaceBookc开源用于解决海量结构化日志的数据统计工具.

  • Hive是基于Hadoop的一个数据仓库工具, 可以将结构化的数据文件映射为一张表, 并提供类SQL(Hive SQL)查询功能.
  • Hive处理的数据存储在HDFS.
  • Hive的本质是将SQL语句转换为MapReduce任务运行, 使得不熟悉MapReduce的用户也能很方便利用HQL 处理和计算HDFS上的结构化数据,适用于离线的批量数据计算.

[本质]

请添加图片描述

Hive 依赖于 HDFS 存储数据,Hive 将 HQL 转换成 MapReduce 执行,所以说 Hive 是基于 Hadoop 的一个数据仓库工具,实质就是一款基于 HDFS 的 MapReduce 计算框架,对存储在 HDFS 中的数据进行分析和管理

2. Hive 优缺点

[优点]

[缺点]

3. Hive 架构

二, Hive安装

2.1 下载地址和文档地址

Hive-3.1.2 安装包下载
Hive官方文档地址

2.2 安装Hive

  1. 把下载的安装包apache-hive-3.1.2-bin.tar.gz上传到/opt/software目录中
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zbupgr5N-1627818272700)(2021-07-31-11-23-12.png)]

  2. 使用tar命令, 解压安装包到/opt/module/目录中, 然后改名hive-3.1.2
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wgfrPrtW-1627818272702)(2021-07-31-11-24-42.png)]
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-X4X20ECl-1627818272704)(2021-07-31-11-25-37.png)]

  3. 添加相应的环境变量, 千万不要忘了source /etc/profile 进行生效噢!
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EwBhY0to-1627818272706)(2021-07-31-11-31-47.png)]

  4. 解决日志jar包冲突
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ks7mKzkW-1627818272707)(2021-07-31-11-36-47.png)]

  5. 初始化元数据库

# 加上 --verbose 可以打印下一些监控信息, 无关紧要.
[win10@bigdata01 hive-3.1.2]$ bin/schematool -dbType derby -initSchema --verbose
  • 成功执行后最终结果:
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Y5mktVyJ-1627818272708)(2021-07-31-15-25-20.png)]

初始化元数据可能会碰到的错误

[错误1-java.langNoSuchMethodError]

Exception in thread “main” java.langNoSuchMethodError: com.google.common.base.Preconditions.checkArgument(ZLjava/lang/String;Ljava/lang/Object;)V

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bPD11f52-1627818272709)(2021-07-31-14-34-18.png)]

  • 问题原因:
    hadoop安装目录lib库目录下的Guava-版本号-jre.jar包与 hive的lib库中的 Guava-版本号.jar包版本不一致导致的,
    • Guava-xx.jar包 在hadoop安装目录下的路径是/hadoop安装路径/share/hadoop/common/lib
    • 在hive安装目录下的路径是: /hive安装目录/lib
  • 解决办法:

用hadoop中的这个Guava-版本号-jre.jar替换掉hive路径下的jar包, 名字改成跟hive一致的形式, 即Guava-版本号.jar(当然版本号要与hadoop的一直即可.)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mS5kpyeL-1627818272710)(2021-07-31-14-47-17.png)]
如下图, 上面是hive原有的jar包, 下面是从hadoop目录复制过来的jar包, 我们做以下修改即可:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wKbYQmOy-1627818272711)(2021-07-31-14-48-29.png)]

[错误2-Error: DDL is not permitted for a read-only connection, user or database.]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-li7geKu5-1627818272712)(2021-07-31-14-54-44.png)]

  • 问题原因: /metastore_db目录下文件属于的用户名和组名有问题, 在当前用户中没有相关的读写权限, 之所以出现这种情况可能是因为在初始化元数据库的时候, 使用了root用户去启动(sudo 提权等等), 造成derby数据库生成的文件属于的用户名和组都成了root.
  • 解决办法, 直接重装最好, 但是也能通过找到Hive安装目录下的metastore.db目录, 更改为当前用户即可, 当然还要删除 .lck文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Jhlb6pq0-1627818272713)(2021-07-31-15-06-30.png)]

2.3 启动和使用Hive

  1. 启动Hive
bin/hive

可能会出现的错误:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HtWbnPf5-1627818273323)(2021-07-31-15-37-08.png)]

别忘了启动你的hadoop集群噢, 因为hive需要存储和读取hdfs中的数据!

  1. Hive的简单使用
  • 创建数据库test;
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ymUFoB4h-1627818272714)(2021-07-31-16-00-39.png)]
  • 往test数据库添加新表testtable, 并查看表结构;
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hU7qDaQf-1627818272715)(2021-07-31-15-59-45.png)]
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-a8sbFe8f-1627818272716)(2021-07-31-16-01-10.png)]
  • 往表中添加一条数据;
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TJ29xu9A-1627818272717)(2021-07-31-16-06-08.png)]

可以看到在插入数据到表的时候, 数据经过了Map-Reduce过程, 之后肯定是被存放到了HDFS中.

  • 查看表中的数据
    1. 从hive客户端查看:
      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ArGLGQgY-1627818272718)(2021-07-31-16-05-18.png)]
    2. 直接查看HDFS目录中的数据.
      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xZvkQf4C-1627818272719)(2021-07-31-16-08-33.png)]
  1. 如何实时查看 Hive的运行日志? 为什么我们需要替换掉元数据库 Derby?
  • 在xshell单独开一个终端, 并实时监控日志: tail -f /tmp/win10(linux主句用户名)/hive.log, 同时我们再开一个终端去启动hive bin/hive,
  • 此时查看log日志变化, 会疯狂报错, 结束后从日志末尾往上三分之一处, 会出现这么一句话:
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8PfbE19D-1627818272720)(2021-07-31-16-45-38.png)]
  • 这句话是说已经有别的Derby实例在使用数据库了, 即Derby同一时刻只能由一个用户使用.
  • 综上我们可以知道在Hive中元数据库 Derby被替换的原因:
      1. Derby数据库不支持并发,也就是只支持单线程操作,当有一个用户在对Hive进行操作时,其他用户则无法操作, 若应用在生产环境效率低下;
      1. 当在切换目录后,重新进入Hive会找不到原来已经创建的数据库和表。主要原因是比如第一次是在bin目录下进入Hive,在进入后,会在bin目录下创建一个metaStore.db的目录和一个derby.log的日志文件. 那么经过更换目录后,然后进入Hive就会存在一个问题,原有的元数据信息都是基于bin目录下创建的,所以在找数据库和表的信息时候,都是基于bin目录的,而此时就会存在找不到原有创建的数据库和表的信息,所以会将默认的Derby数据库进行更换为Mysql。

2.4 安装MySQL

  1. 检查当前系统是否安装了Mysql, 如果有, 卸载之;
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-p6AVgCfd-1627818272721)(2021-07-31-17-05-13.png)]

  2. 下载后, 将安装包 Mysql完全版+JDBC连接器, 提取码: lqi4拷贝到linux系统的/opt/software目录下, 解压之, 连接器后面再用.
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3nAkvy9g-1627818272722)(2021-07-31-17-46-53.png)]

  3. 按照以下顺序(common->libs–>libs-compat–>client–>server),执行安装命令
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-j7Sd8Dgu-1627818272723)(2021-07-31-17-53-18.png)]
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-e5Ot7WKR-1627818272724)(2021-07-31-17-53-57.png)]

  4. 删除/etc/my.cnf 文件中datadir所指向的目录中所有的内容;(当然初次安装, 里面是没有数据的,也就不需要执行这一步了.)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0uTqWAMa-1627818272725)(2021-07-31-19-32-49.png)]

  1. 初始化数据库, 并查看临时生成的root用户的密码
  • 初始化
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9ajDs7cg-1627818272726)(2021-07-31-19-39-33.png)]

  • 查看临时生成root用户的密码
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wEoXSR7a-1627818272727)(2021-07-31-19-42-37.png)]

  1. 启动Mysql服务
sudo systemctl start mysqld

# 验证mysql是否为running
sudo systemctl status mysqld

可能会出现的问题:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2qjPeDIZ-1627818272729)(2021-07-31-20-05-40.png)]

解决办法: /etc/selinux/config里修改SELINUX=permissive后,再reboot就可了!

  1. 登录mysql数据库, 并修改root用户的密码
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FM60GByv-1627818272730)(2021-07-31-20-39-31.png)]
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4Wjbl881-1627818272732)(2021-07-31-20-39-05.png)]

可能出现的问题:
Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)

解决方法:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GR1VBkwN-1627818272733)(2021-07-31-20-40-31.png)]

  1. 修改mysql库下的user表中的root用户, 让其允许任意ip连接(而不止 root@localhost)
mysql> update mysql.user set host='%' where user='root';
mysql> flush privileges;

2.5 Hive 元数据配置到MySQL

2.5.1 将MySQl的JDBC驱动拷贝到Hive的lib目录下

  1. /opt/software/mysql-connector-xx -> $HIVE_HOME/lib

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tI6pctEa-1627818272733)(2021-08-01-07-56-08.png)]

2.5.2 配置MetaStore到MySQL

  1. 在 $HIVE_HOME/conf 新建 hive-site.xml, 并输入以下内容:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>

<!-- jdbc 连接的 URL, 注意哦, metastore是代表元数据库名叫 metastore噢, 在mysql建库的时候一定要跟这个保持一致噢 -->
<property>
	<name>javax.jdo.option.ConnectionURL</name>
	<value>jdbc:mysql://bigdata01: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 元数据存储版本的验证 -->
<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>
  1. 登录mysql, 并创建一个数据库作为元数据库;
[win10@bigdata01 hive-3.1.2] mysql -u root -p123456;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yWWeMmyV-1627818272734)(2021-08-01-08-21-24.png)]

  1. 初始化Hive的元数据库
[win10@bigdata hive-3.1.2]schematool -initSchema -dbType mysql --verbose

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7Y3BXk3o-1627818272735)(2021-08-01-08-24-34.png)]

2.5.3 再次启动Hive

  1. 启动后Hive(一定不要忘了开启Hadoop集群, 不然又得是connection refused报错!!)
[win10@bigdata01 hive-3.1.2]bin/hive
  1. 在xshell(crt)新建会话窗口, 并切换到hive目录再次启动一个hive 会话, 可以看到在切换元数据库为mysql后, 可以支持多用户访问元数据库了;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YrqCsSe3-1627818272736)(2021-08-01-08-29-18.png)]

2.6 访问Hive的三种方式

2.6.1 前面提到的访问, 即本地访问 bin/hive

2.6.2 使用元数据服务的方式访问Hive

  1. 在 hive-site.xml 文件中添加如下配置信息:
<!-- 指定存储元数据要连接的地址 -->
<property>
    <name>hive.metastore.uris</name>
    <value>thrift://bigdata01:9083</value>
</property>
  1. 启动 metastore后, 去启动 hive

要注意到, metastore service是前台进程, 是在终端中运行的命令,那么该终端就为进程的控制终端,一旦这个终端关闭,这个进程也随之消失。所以这个服务启动后, 我们需要重新开一个终端进行别的操作.

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4B9h2io4-1627818272737)(2021-08-01-11-11-26.png)]

[win10@bigdata01 hive-3.1.2] hive --service metastore

## 下面是在新的终端中启动hive
[win10@bigdata01 hive-3.1.2] bin/hive

注意: 在这里容易发生下面的错误
org.apache.thrift.transport.TTransportException: Could not create ServerSocket on address 0.0.0.0/0.0.0.0:9083.

错误原因: 启动hive服务(hive --service metastore 之前 开启了hive(bin/hive))
解决办法: jps, 然后用 kill -9 pid 删除所有的 runjar
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-A3I8qpEE-1627818273326)(2021-08-01-10-06-55.png)]

2.6.3 使用JDBC方式访问Hive

  1. 在 hive-site.xml 添加以下配置信息
<!-- 指定 hiveserver2 连接的 host -->
<property>
<name>hive.server2.thrift.bind.host</name>
<value>bigdata01</value>
</property>

<!-- 指定 hiveserver2 连接的端口号 -->
<property>
<name>hive.server2.thrift.port</name>
<value>10000</value>
</property>
  1. 启动 hiveserver2(同样也是前台进程)(在这之前, 前面我们配置的元数据服务也是需要启动的 哦!)

前提: 开启元数据服务(前台进程)
hive --service metastore

  • 开启hiveserver2
[win10@bigdata01 hive] hive --service hiveserver2
  • 启动成功的标志
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aIoKLi0O-1627818272738)(2021-08-01-13-53-26.png)]

在这一步需要注意的是: hiveserver2的启动时间会比较长一些, 当你观察日志(tail -f /tmp/linux用户名/hive.log)的时候,还会出现报错(如下图所示), 这个错误的主要原因是我们没有设置tez引擎相关的东西, 此时一分钟之后将会重试开启hiveserver2, 我们只需耐心等待启动成功即可.
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zSR4D9JA-1627818273327)(2021-08-01-11-06-58.png)]

什么是hiveserver2, 它的作用是什么?

  1. 启动 beeline客户端
[win10@bigdata01 hive-3.1.2] bin/beeline -u jdbc:hive2://bigdata01:10000 -n win10

注意: 这里极易出现以下错误:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SnRJ26aB-1627818272739)(2021-08-01-11-46-13.png)]
解决办法: beeline连接hiveserver2报错:User: root is not allowed to impersonate root

  1. 以上工作做完之后, 成功连接会出现以下界面:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-whhsNc8z-1627818272740)(2021-08-01-11-48-05.png)]

  1. Hive 服务启停脚本(只使用,暂时不用理解)
##// Hive 启停脚本

#!/bin/bash
# 判断logs是否存在, 目录不存在, 新建之
HIVE_LOG_DIR=$HIVE_HOME/logs			
if [ ! -d $HIVE_LOG_DIR ]
then
	mkdir -p $HIVE_LOG_DIR
fi
#检查进程是否运行正常,参数 1 为进程名,参数 2 为进程端口
function check_process()
{
	pid=$(ps -ef 2>/dev/null | grep -v grep | grep -i $1 | awk '{print$2}')
	ppid=$(netstat -nltp 2>/dev/null | grep $2 | awk '{print $7}' | cut -d '/' -f 1)
	echo $pid
	[[ "$pid" =~ "$ppid" ]] && [ "$ppid" ] && return 0 || return 1
}
## 启动 Metastore.service (元数据服务) + hiveserver2服务
function hive_start()
{
	metapid=$(check_process HiveMetastore 9083)
	cmd="nohup hive --service metastore >$HIVE_LOG_DIR/metastore.log 2>&1&"
	[ -z "$metapid" ] && eval $cmd || echo "Metastroe 服务已启动"
	server2pid=$(check_process HiveServer2 10000)
	cmd="nohup hive --service hiveserver2 >$HIVE_LOG_DIR/hiveServer2.log 2>&1 &"
	[ -z "$server2pid" ] && eval $cmd || echo "HiveServer2 服务已启动"
}

## 停止
function hive_stop()
{
	metapid=$(check_process HiveMetastore 9083)
	[ "$metapid" ] && kill $metapid || echo "Metastore 服务未启动"
	server2pid=$(check_process HiveServer2 10000)
	[ "$server2pid" ] && kill $server2pid || echo "HiveServer2 服务未启动"
}

case $1 in
"start")
	hive_start
;;
"stop")
	hive_stop
;;
"restart")
	hive_stop
	sleep 2
	hive_start
;;
"status")
	check_process HiveMetastore 9083 >/dev/null && echo "Metastore 服务运行正常" || echo "Metastore 服务运行异常"
	check_process HiveServer2 10000 >/dev/null && echo "HiveServer2 服务运行正常" || echo "HiveServer2 服务运行异常"
;;
*)
	echo Invalid Args!
	echo 'Usage: '$(basename $0)' start|stop|restart|status'
;;
esac
  1. 赋予执行权限;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GqjX5kAE-1627818272742)(2021-08-01-15-00-24.png)]

  1. 添加到全局环境变量, 随处便可运行;
  • 其实有点脱裤子放屁, 因为这个脚本正好是放在了hive安装目录下的/bin目录中, 权当复习了哈哈
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HySpornK-1627818272743)(2021-08-01-15-32-21.png)]
  1. 在我们脚本启动时候, 便可以利用 bin/hive, 或者 bin/beeline -u jdbc:hive2://bigdata01:10000 -n win10 启动hive客户端了

  2. 注释掉 hiveServer2服务的启动配置, 因为我们访问hive有三种方式呢, 这种使用(metastore service + hiveserver2), 然后在用beeline启动客户端的交互方式太麻烦,时间还长, 所以我们在下面的实操中不使用这种方式, 而是直接使用 bin/hive 启动hive客户端进行交互操作.

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2TpJaGpo-1627818272744)(2021-08-01-15-47-26.png)]

2.7 Hive常用的交互命令

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7ZWGjQgn-1627818272746)(2021-08-01-16-58-21.png)]

  1. hive -e “sql语句;”
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0F15lmV0-1627818272747)(2021-08-01-16-57-32.png)]
  2. hive -f 写入了sql命令的文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-enyLKLld-1627818272748)(2021-08-01-16-56-52.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9s9hN5XE-1627818272750)(2021-08-01-16-56-10.png)]

  • 追加.
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5035EBmD-1627818272751)(2021-08-01-16-58-53.png)]

可能出现的问题:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1ut56dEQ-1627818272752)(2021-08-01-16-52-34.png)]

2.8 Hive其他命令操作

  1. 退出hive窗口(exit/quit)

  2. 在hive 客户端里面查看hdfs文件系统(dfs -ls /)
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MpkAuRGl-1627818272753)(2021-08-01-17-01-56.png)]

  3. 查看在hive中输入的历史命令

    1. 进入到当前用户的主目录(/root 或者是 /home/win10)
    2. cat .hivehistory
    3. [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oecJNthC-1627818272754)(2021-08-01-17-05-10.png)]

2.9 Hive 常见属性配置

2.9.1 Hive运行日志信息配置

  1. Hive 的运行日志默认放在: /tmp/用户名/hive.log中, 非当天的日志自动命名为 hive.log.年-月-日
  2. 下面我们修改运行日志的存储目录为/opt/module/hive-3.1.2/logs
    1. 修改**/opt/module/hive-3.1.2/conf/hive-log4j2.properties.template**文件名,改为 hive-log4j.properties
      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GTePASK4-1627818272756)(2021-08-01-17-15-52.png)]
    2. 修改上述文件中log的存放位置
      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-84kdh7CF-1627818272757)(2021-08-01-17-26-41.png)]

2.9.2 打印当前数据库名和表名(方便)

<!-- 打印当前表的表名 -->
<property>
    <name>hive.cli.print.header</name>
    <value>true</value>
</property>

<!-- 打印当前使用数据库的名 -->
<property>
    <name>hive.cli.print.current.db</name>
    <value>true</value>
</property>

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rDK0KruX-1627818272758)(2021-08-01-17-37-52.png)]

2.9.3 参数配置方式

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Di3RoODp-1627818272759)(2021-08-01-19-23-26.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cJu47cqO-1627818272760)(2021-08-01-19-25-00.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ImoF6GYk-1627818272761)(2021-08-01-19-26-52.png)]
转存中…(img-84kdh7CF-1627818272757)]

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-08-02 10:53:03  更:2021-08-02 10:53:29 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/22 10:15:33-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码