【博学谷学习记录】大数据课程-学习十三周总结

Hive的交互方式

第一种交互方式:bin/hive hive

创建一个数据库

create database mytest; show databases;

第二种交互方式:使用sql语句或者sql脚本进行交互

不进入hive的客户端直接执行hive的hql语句 hive -e “create database mytest2”

或者我们可以将我们的hql语句写成一个sql脚本然后执行 cd /export/server vim hive.sql

脚本内容如下: create database mytest3; use mytest3; create table stu(id int,name string);

通过hive -f 来执行我们的sql脚本 hive -f /export/server/hive.sql

第三种交互方式:Beeline Client

hive经过发展,推出了第二代客户端beeline,但是beeline客户端不是直接访问metastore服务的,而是需要单独启动hiveserver2服务。 1)在node1的/export/server/hadoop-3.1.4/etc/hadoop目录下,修改core-site.xml,在该文件中添加以下配置,实现用户代理: hadoop.proxyuser.root.hosts hadoop.proxyuser.root.groups

将修改好的core-site.xml文件分发到node2和node3,然后重启Hadoop(stop-all.sh start-all.sh) scp core-site.xml node2: P W D s c p c o r e − s i t e . x m l n o d e 3 : PWD scp core-site.xml node3: PWDscpcore−site.xmlnode3:PWD

2)在hive运行的服务器上,确保已经启动metastore服务和hiveserver2服务,如果没有启动,则执行以下语句 nohup /export/server/hive/bin/hive --service metastore & nohup /export/server/hive/bin/hive --service hiveserver2 &

nohup 和 & 表示后台启动 3:在node3上使用beeline客户端进行连接访问。 /export/server/hive-3.1.2/bin/beeline

根据提醒进行以下操作: [root@node3 ~]# /export/server/hive-3.1.2/bin/beeline which: no hbase in (:/export/server/hive-2.1.0/bin::/export/server/hadoop-2.7.5/bin:/export/data/hadoop-2.7.5/sbin::/export/server/jdk1.8.0_241/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/export/server/mysql-5.7.29/bin:/root/bin) Beeline version 2.1.0 by Apache Hive beeline> !connect jdbc:hive2://node3:10000 Connecting to jdbc:hive2://node3:10000 Enter username for jdbc:hive2://node3:10000: root Enter password for jdbc:hive2://node3:10000:123456

连接成功之后,出现以下内容,可以在提示符后边输入hive sql命令

经验分享 程序员 微信小程序 职场和发展