Hive(二)

安装Hive 

1、上传解压

上传 apache-hive-2.3.9-bin.tar.gz 到 /opt/

解压压缩包:

[root@zhaohui01 opt]# tar zxvf apache-hive-2.3.9-bin.tar.gz

2、修改配置文件

  • 修改hive-env.sh.template 文件为 hive-env.sh

  • 在 hive-env.sh 添加如下环境变量

HADOOP_HOME=/opt/hadoop-2.7.7
HIVE_CONF_DIR=/opt/hive-2.3.9/conf
JAVA_HOME=/opt/jdk-1.8
  • 修改hive-default.xml 文件为 hive-site.xml

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
​
<configuration>
  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://zhaohui01:3306/metastore</value>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.cj.jdbc.Driver</value>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>root</value>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>123456</value>
  </property>
</configuration>
  • 下载mysql驱动到lib

    [root@zhaohui01 lib]# wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.25/mysql-connector-java-8.0.25.jar

  • 在bin目录下初始化驱动

    [root@zhaohui01 hive-2.3.9]# cd bin/
    [root@zhaohui01 bin]# ./schematool -initSchema -dbType mysql  

3、配置环境变量

echo 'export HIVE_HOME=/opt/hive-2.3.9' >> /etc/profile
echo 'export PATH=$HIVE_HOME/bin:$PATH' >> /etc/profile
source /etc/profile

4、启动hive

  • hive提供了控制台操作方式

    # hive 用于启动终端
    hive
  • 连接jdbc

1、本地连接直接到 /opt/hive-2.3.9/bin/ 目录下执行 hiveserver2 命令

[root@zhaohui01 bin]# hiveserver2

2、在另一个终端查看进程,出现 RunJar 说明服务开启

3、查看进程和端口号

  • # 查看进程 [root@zhaohui01 ~]# ps -ef | grep 5099 root       5099   2320  6 16:46 pts/0    00:00:17 /opt/jdk-1.8/bin/java -Xmx256m -Djava.net.preferIPv4Stack=true -Dhadoop.log.dir=/opt/hadoop-2.7.7/logs -Dhadoop.log.file=hadoop.log -Dhadoop.home.dir=/opt/hadoop-2.7.7 -Dhadoop.id.str=root -Dhadoop.root.logger=INFO,console -Djava.library.path=/opt/hadoop-2.7.7/lib/native -Dhadoop.policy.file=hadoop-policy.xml -Djava.net.preferIPv4Stack=true -Xmx512m -Dproc_hiveserver2 -Dlog4j.configurationFile=hive-log4j2.properties -Djava.util.logging.config.file=/opt/hive-2.3.9/conf/parquet-logging.properties -Dhadoop.security.logger=INFO,NullAppender org.apache.hadoop.util.RunJar /opt/hive-2.3.9/lib/hive-service-2.3.9.jar org.apache.hive.service.server.HiveServer2 root       5375   5304  0 16:51 pts/1    00:00:00 grep --color=auto 5099 ​ # 查看端口号 [root@zhaohui01 ~]# netstat -nap | grep 5099 tcp        0      0 0.0.0.0:10000           0.0.0.0:*               LISTEN      5099/java tcp        0      0 0.0.0.0:10002           0.0.0.0:*               LISTEN      5099/java tcp        0      0 192.168.235.10:47514    192.168.235.10:3306     ESTABLISHED 5099/java tcp        0      0 192.168.235.10:47522    192.168.235.10:3306     ESTABLISHED 5099/java tcp        0      0 192.168.235.10:47520    192.168.235.10:3306     ESTABLISHED 5099/java tcp        0      0 192.168.235.10:47512    192.168.235.10:3306     ESTABLISHED 5099/java unix  2     [ ]         STREAM     CONNECTED     256986   5099/java unix  3     [ ]         STREAM     CONNECTED     257052   5099/java unix  2     [ ]         STREAM     CONNECTED     252575   5099/java unix  3     [ ]         STREAM     CONNECTED     257051   5099/java ​

  • JDBC 连接使用 10000 端口号

  • hive提供JDBC服务器的远程连接方式

    beeline> ! connect jdbc:hive2://zhaohui01:10000

报错原因:没有root权限

解决方式:修改hdfs的访问权限

修改hadoop core-site.xml文件

<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
  1. 分发配置文件,并重启HDFS集群

    sscp /opt/hadoop-2.7.7/etc/hadoop/core-site.xml /opt/hadoop-2.7.7/etc/hadoop/
    start-dfs.sh
  2. 使用hiveserver2 开启hive的JDBC服务器

  3. hive提供beeline客户端连接hive2服务

[root@zhaohui01 bin]# beeline
Beeline version 2.3.9 by Apache Hive
# 连接JDBC
beeline> ! connect jdbc:hive2://zhaohui01:10000
Connecting to jdbc:hive2://zhaohui01:10000
# 输入username
Enter username for jdbc:hive2://zhaohui01:10000:
# 输入password
Enter password for jdbc:hive2://zhaohui01:10000:
Connected to: Apache Hive (version 2.3.9)
Driver: Hive JDBC (version 2.3.9)
Transaction isolation: TRANSACTION_REPEATABLE_READ
# 查看数据库
0: jdbc:hive2://zhaohui01:10000> show databases;
+----------------+
| database_name  |
+----------------+
| db_hive        |
| db_test01      |
| default        |
+----------------+
3 rows selected (1.378 seconds)
# 退出客户端
0: jdbc:hive2://zhaohui01:10000> !exit
​

4.数据库连接工具远程连接 IDEA

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值