李林超博客
首页
归档
留言
友链
动态
关于
归档
留言
友链
动态
关于
首页
大数据
正文
07.Hive常用交互命令和属性配置
Leefs
2021-12-03 AM
1025℃
0条
[TOC] ### 一、Hive常用交互命令 **1.1 使用`hive –help`命令查看有哪些交互命令** ```bash [hadoop@localhost hive]$ bin/hive -help 2021-12-02 17:32:37,970 INFO [main] conf.HiveConf: Found configuration file file:/opt/software/hive/conf/hive-site.xml Hive Session ID = 5ba5893b-4ff1-4d23-9ca0-21f1daa42e9b 2021-12-02 17:32:45,836 INFO [main] SessionState: Hive Session ID = 5ba5893b-4ff1-4d23-9ca0-21f1daa42e9b usage: hive -d,--define
Variable substitution to apply to Hive commands. e.g. -d A=B or --define A=B --database
Specify the database to use -e
SQL from command line -f
SQL from files -H,--help Print help information --hiveconf
Use value for given property --hivevar
Variable substitution to apply to Hive commands. e.g. --hivevar A=B -i
Initialization SQL file -S,--silent Silent mode in interactive shell -v,--verbose Verbose mode (echo executed SQL to the console) ``` **1.2 `-e`: 不进入hive的交互窗口执行sql语句** ```bash [hadoop@localhost hive]$ bin/hive -e "select id from student;" ``` **1.3 `-f`:执行脚本中sql语句** + 在`/opt/software/hive`下创建 `datas` 目录并在 `datas` 目录下创建 `hivef.sql` 文件 ```shell [hadoop@localhost hive]$ mkdir datas [hadoop@localhost datas]$ touch hivef.sql ``` + 文件中写入正确的 sql 语句 ```mysql select * from student; ``` + 执行文件中的 sql 语句 ```bash [hadoop@localhost hive]$ bin/hive -f /opt/software/hive/datas/hivef.sql ``` + 执行文件中的 sql 语句并将结果写入文件中 ```shell [hadoop@localhost hive]$ bin/hive -f /opt/software/hive/datas/hivef.sql > /opt/software/hive/datas/hivef_result.txt ``` ### 二、Hive其他命令操作 **2.1 退出hive窗口** ```sql hive> exit; hive> quit; ``` **2.2 在`hive cli`命令窗口中查看hdfs文件系统** ```sql hive> dfs -ls /; ``` **2.3 查看在 hive 中输入的所有历史命令** + 进入到当前用户的根目录`/root` 或`/home/hadoop` ```shell [hadoop@localhost hive]$ cd /home/hadoop/ [hadoop@localhost ~]$ pwd /home/hadoop ``` + 查看`. hivehistory`文件 ```shell [hadoop@localhost ~]$ cat .hivehistory ``` ### 三、Hive常见属性配置 #### **3.1 Hive运行日志信息配置** **(1)Hive的log默认存放在`/tmp/hadoop/hive.log`目录下(当前用户名下)** ![07.Hive常用交互命令和属性配置01.jpg](https://lilinchao.com/usr/uploads/2021/12/2925805670.jpg) **(2)修改hive的log存放日志到`/opt/software/hive/logs`目录下** + 修改`hive-log4j2.properties.template`文件名称为`hive-log4j2.properties` ```bash [hadoop@localhost conf]$ pwd /opt/software/hive/conf [hadoop@localhost conf]$ mv hive-log4j2.properties.template hive-log4j2.properties ``` + 在`hive-log4j2.properties`文件中修改 log 存放位置 ```bash [hadoop@localhost conf]$ vim hive-log4j2.properties ``` 修改如下内容 ``` property.hive.log.dir = /opt/software/hive/logs ``` #### 3.2 打印当前库和表头 **修改配置文件`hive-site.xml`** ``` [hadoop@localhost conf]$ vim hive-site.xml ``` **加入如下内容** ```xml
hive.cli.print.header
true
hive.cli.print.current.db
true
``` #### 3.3 参数配置方式 **1、查看当前所有的配置信息** ```shell hive (default)> set; ``` **2、参数的配置三种方式** **(1)配置文件方式** + 默认配置文件:`hive-default.xml` + 用户自定义配置文件:`hive-site.xml` 注意:用户自定义配置会覆盖默认配置。另外,Hive也会读入`Hadoop`的配置,因为Hive是作为 `Hadoop`的客户端启动的,Hive的配置会覆盖 `Hadoop`的配置。配置文件的设定对本机启动的所有 Hive进程都有效。 **(2)命令行参数方式** 启动 Hive 时,可以在命令行添加`-hiveconf param=value`来设定参数。 ```shell [hadoop@localhost hive]$ bin/hive -hiveconf mapred.reduce.tasks=10; ``` *注意:仅对本次 hive 启动有效* **查看参数设置** ```bash hive (default)> set mapred.reduce.tasks; ``` **(3)参数声明方式** 可以在 HQL 中使用 SET 关键字设定参数 ```sql hive (default)> set mapred.reduce.tasks=100; ``` *注意:仅对本次 hive 启动有效。* **查看参数设置** ```shell hive (default)> set mapred.reduce.tasks; ``` 上述三种设定方式的优先级依次递增即: > 配置文件<命令行参数<参数声明 注意:某些系统级的参数,例如`log4j`相关的设定,必须用前两种方式设定,因为那些参数的读取在会话建立以前已经完成了。 *参考文章来源:* *《尚硅谷大数据技术之Hive》*
标签:
Hadoop
,
Hive
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:
https://lilinchao.com/archives/1704.html
上一篇
06.使用JDBC方式访问Hive
下一篇
08.Hive数据类型
取消回复
评论啦~
提交评论
栏目分类
随笔
2
Java
326
大数据
229
工具
31
其它
25
GO
47
标签云
Jquery
Eclipse
稀疏数组
哈希表
Ubuntu
链表
序列化和反序列化
Thymeleaf
ajax
前端
JVM
Spark SQL
Azkaban
队列
Java
排序
DataX
递归
栈
SpringCloud
GET和POST
Redis
gorm
锁
MySQL
BurpSuite
Quartz
Zookeeper
Hbase
Stream流
友情链接
申请
范明明
庄严博客
Mx
陶小桃Blog
虫洞