Hive常用命令

  1. desc formatted test66; 查看表的信息

Hive是什么

1)Hive 处理的数据存储在 HDFS
2)Hive 分析数据底层的默认实现是 MapReduce
3)执行程序运行在 Yarn 上

查看日志

  1. cd /tmp/root/
  2. tail -f hive.log
  1. -verbose #在输出设备上显示虚拟机运行信息

DBS+TBLS定位资源位置

为什么把元数据放mysql? 默认的开两个hive就不行

idea怎么连hive? 需要连服务地址

所以需要给hive启一个服务,即连元数据

  1. <!-- 指定存储元数据要连接的地址 -->
  2. <property>
  3. <name>hive.metastore.uris</name>
  4. <value>thrift://tao01:9083</value>
  5. </property>

使之前配置生效

hive --service metastore;

vi命令

 4.多行删除
首先在命令模式下,输入“:set nu”显示行号;通过行号确定你要删除的行;命令输入“:32,65d”,回车键,32-65行就被删除了
"shift + :" :进入命令行模式
"set nu" :显示行号
"etc + etc" :退出命令行模式

Hive客户端工具后续将使用Beeline 替代HiveCLI ,并且后续版本也会废弃掉HiveCLI 客户端工具,Beeline是 Hive 0.11版本引入的新命令行客户端工具,它是基于SQLLine CLI的JDBC客户端。

Beeline支持嵌入模式(embedded mode)和远程模式(remote mode)。在嵌入式模式下,运行嵌入式的Hive(类似Hive CLI),而远程模式可以通过Thrift连接到独立的HiveServer2进程上。从Hive 0.14版本开始,Beeline使用HiveServer2工作时,它也会从HiveServer2输出日志信息到STDERR。

0:标准输入 键盘

1:输出 标准输出 控制台

2:输出 错误输出 控制台

shell脚本

-d    当前路径或文件夹是否存在
&&    ||    =        ?    :
-z    当前字符串长度是否为0
eval    参数包含参数 多层参数
ps -ef | grep -v grep | grep -i HiveMetastore    -v不想要的东西    把自己过滤  -i是包含
netstat -nltp    端口号
awk 切分

netstat -nltp | grep -i 9083 |awk '{print $7}' | cut -d '/' -f 1 | xargs kill    关闭

linux常用命令

[root@tao01 bin]# ps -ef | grep -v grep | grep -i HiveMetastore
root      11064   1545 19 22:21 pts/0    00:00:09 /opt/moudle/jdk1.8.0_271/bin/java -Xmx256m -Djava.net.preferIPv4Stack=true -Dhadoop.log.dir=/opt/moudle/hadoop-2.10.1/logs -Dhadoop.log.file=hadoop.log -Dhadoop.home.dir=/opt/moudle/hadoop-2.10.1 -Dhadoop.id.str=root -Dhadoop.root.logger=INFO,console -Djava.library.path=/opt/moudle/hadoop-2.10.1/lib/native -Dhadoop.policy.file=hadoop-policy.xml -Djava.net.preferIPv4Stack=true -Dproc_metastore -Dlog4j.configurationFile=hive-log4j2.properties -Djava.util.logging.config.file=/opt/moudle/hive/conf/parquet-logging.properties -Dhadoop.security.logger=INFO,NullAppender org.apache.hadoop.util.RunJar /opt/moudle/hive/lib/hive-metastore-3.1.2.jar org.apache.hadoop.hive.metastore.HiveMetaStore

[root@tao01 bin]# jps
7091 DataNode
7333 NodeManager
11064 RunJar
11160 Jps
6990 NameNode
[root@tao01 bin]# ps -ef | grep -v grep | grep -i HiveMetastore | awk '{print $2}'
11064

[root@tao01 bin]# netstat -nltp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:50020           0.0.0.0:*               LISTEN      7091/java           
tcp        0      0 192.168.172.173:9000    0.0.0.0:*               LISTEN      6990/java           
tcp        0      0 0.0.0.0:50070           0.0.0.0:*               LISTEN      6990/java           
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      970/sshd            
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1196/master         
tcp        0      0 0.0.0.0:50010           0.0.0.0:*               LISTEN      7091/java           
tcp        0      0 0.0.0.0:9083            0.0.0.0:*               LISTEN      11064/java          
tcp        0      0 0.0.0.0:50075           0.0.0.0:*               LISTEN      7091/java           
tcp        0      0 127.0.0.1:36033         0.0.0.0:*               LISTEN      7091/java           
tcp6       0      0 :::8040                 :::*                    LISTEN      7333/java           
tcp6       0      0 :::8042                 :::*                    LISTEN      7333/java           
tcp6       0      0 :::3306                 :::*                    LISTEN      1506/mysqld         
tcp6       0      0 :::22                   :::*                    LISTEN      970/sshd            
tcp6       0      0 :::35544                :::*                    LISTEN      7333/java           
tcp6       0      0 ::1:25                  :::*                    LISTEN      1196/master         
tcp6       0      0 :::13562                :::*                    LISTEN      7333/java           
[root@tao01 bin]# netstat -nltp | grep -i 9083
tcp        0      0 0.0.0.0:9083            0.0.0.0:*               LISTEN      11064/java   

[root@tao01 bin]# netstat -nltp | grep -i 9083 |awk '{print $7}'
11064/java

[root@tao01 bin]# netstat -nltp | grep -i 9083 |awk '{print $7}' | cut -d '/' -f 1
11064

hive命令执行sql的其他方式

bin/hive -help
-e <quoted-query-string>         SQL from command line        命令行
 -f <filename>                    SQL from files            文件


cd ~
cat .hivehistory

template是模板文件 实际运行不会加载