SparkSql使用spark-sql cli查询Hive里面的数据

https://blog.csdn.net/qq_41489540/article/details/109957066

使用hiveserver2 + beeline

为什么hiveserver2 + beeline???

spark-sql 得到的结果不够友好, 所以可以使用hiveserver2 + beeline

开始操作

1.启动 thrift服务器

在spark的根目录执行

  1. [root@zjj101 spark-2.1.1-bin-hadoop2.7]# sbin/start-thriftserver.sh \
  2. > --master yarn \
  3. > --hiveconf hive.server2.thrift.bind.host=zjj101\
  4. > -–hiveconf hive.server2.thrift.port=10000 ;
  5. starting org.apache.spark.sql.hive.thriftserver.HiveThriftServer2, logging to /root/soft/spark-2.1.1-bin-hadoop2.7/logs/spark-root-org.apache.spark.sql.hive.thriftserver.HiveThriftServer2-1-zjj101.out
  6. [root@zjj101 spark-2.1.1-bin-hadoop2.7]#

说明
sbin/start-thriftserver.sh \

—master yarn \ # 是yarn模式 —hiveconf hive.server2.thrift.bind.host=zjj101\ # 这个是绑定的ip.一般是当前机器 -–hiveconf hive.server2.thrift.port=10000 # 这个是绑定的端口,写10000

2.再开个终端

可以还是连接上面那个服务器
进入到spark的根目录下面

进入beeline

  1. bin/beeline

连接服务器命令

  1. !connect jdbc:hive2://zjj101:10000

然后按照提示输入用户名和密码
默认的用户名和密码是 none none

  1. # 执行 beeline
  2. [root@zjj101 spark-2.1.1-bin-hadoop2.7]# bin/beeline
  3. Beeline version 1.2.1.spark2 by Apache Hive
  4. # 连接beeline服务器
  5. beeline> !connect jdbc:hive2://zjj101:10000
  6. Connecting to jdbc:hive2://zjj101:10000
  7. # 用户名密码,如果没设置的话,默认都是none
  8. Enter username for jdbc:hive2://zjj101:10000: none
  9. Enter password for jdbc:hive2://zjj101:10000: ****
  10. 20/11/22 16:44:01 INFO jdbc.Utils: Supplied authorities: zjj101:10000
  11. 20/11/22 16:44:01 INFO jdbc.Utils: Resolved authority: zjj101:10000
  12. 20/11/22 16:44:01 INFO jdbc.HiveConnection: Will try to open client transport with JDBC Uri: jdbc:hive2://zjj101:10000
  13. Connected to: Apache Hive (version 1.2.1)
  14. Driver: Hive JDBC (version 1.2.1.spark2)
  15. Transaction isolation: TRANSACTION_REPEATABLE_READ
  16. # 随便写个SQL
  17. 0: jdbc:hive2://zjj101:10000> show tables;
  18. +-----------+--+
  19. | tab_name |
  20. +-----------+--+
  21. | student |
  22. +-----------+--+
  23. 1 row selected (1.049 seconds)
  24. 0: jdbc:hive2://zjj101:10000>