hive

Hive 安装及配置

1 上传

把 apache-hive-3.1.2-bin.tar.gz 上传到 linux 的/opt/software 目录下

2 解压

解压 apache-hive-3.1.2-bin.tar.gz 到/opt/module/目录下面
[user@master software]$ tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /opt/module/

3 改名

修改 apache-hive-3.1.2-bin.tar.gz 的名称为 hive-3.1.2
[user@master module]$ mv apache-hive-3.1.2-bin/ hive-3.1.2

4 hive-env.sh

修改/opt/module/hive-3.1.2/conf 目录下的 hive-env.sh.template 名称为 hive-env.sh
[user@master conf]$ mv hive-env.sh.template hive-env.sh

配置 hive-env.sh 文件

配置 HADOOP_HOME 路径 
export HADOOP_HOME=/opt/module/hadoop-3.1.4 
配置 HIVE_CONF_DIR 路径 
export HIVE_CONF_DIR=/opt/module/hive-3.1.2/conf 

5 元数据配置到 MySql

5.1驱动拷贝

1.在/opt/software/mysql-libs 目录下解压 mysql-connector-java-5.1.27.tar.gz 驱动包 [root@datat1 mysql-libs]# tar -zxvf mysql-connector-java-5.1.27.tar.gz

2.拷贝 mysql-connector-java-5.1.27-bin.jar 到/opt/module/hive-3.1.2/lib/
[root@data1 mysql-connector-java-5.1.27]# cp /opt/software/mysql-libs/mysql-connector-java-5.1.27/mysql-connector-java-5.1.27-bin.jar /opt/module/hive/lib/

5.2配置 Metastore 到 MySql

在/opt/module/hive/conf 目录下创建一个 hive-site.xml
[atguigu@hadoop102 conf]$ touch hive-site.xml
[atguigu@hadoop102 conf]$ vi hive-site.xml

根据官方文档配置参数,拷贝数据到 hive-site.xml 文件
配置 hive-site.sh 文件

    <!--临时文件目录-->
  <property>
     <name>system:java.io.tmpdir</name>
     <value>/user/hive/warehouse</value>
  </property>

<!--系统用户名-->
<!--  
  <property>
     <name>system:user.name</name>
     <value>${user.name}</value>
  </property>
-->
    <!--数据库类型-->
  <property>
     <name>hive.metastore.db.type</name>
     <value>mysql</value>
  </property>
    <!--在MySQL中hive的元数据库-->
  <property>
     <name>javax.jdo.option.ConnectionURL</name>
     <value>jdbc:mysql://192.168.1.104:3306/MyNewMetastore?createDatabaseIfNotExist=true</value>
  </property>
<!--连接MySQL的驱动-->
  <property>
     <name>javax.jdo.option.ConnectionDriverName</name>
     <value>com.mysql.cj.jdbc.Driver</value>
  </property>
    <!--连接MySQL的用户名-->
  <property>
     <name>javax.jdo.option.ConnectionUserName</name>
     <value>root</value>
     <description>user name for connecting to mysql server</description>
  </property>
  <!--连接MySQL的密码-->
  <property>
     <name>javax.jdo.option.ConnectionPassword</name>
     <value>Ctkj@2020</value>
     <description>password for connecting to mysql server</description>
  </property>
  <!--可以实现显示当前数据库,以及查询表的头信息配置-->
  <property>
    <name>hive.cli.print.header</name>
    <value>true</value>
  </property>

  <property>
    <name>hive.cli.print.current.db</name>
    <value>true</value>
  </property>
<!--为了解决INFO 太多问题-->
  <property>
        <name>hive.server2.logging.operation.enabled</name>
        <value>false</value>
  </property>
<!--为了解决没有配置Tez问题-->
  <property>
        <name>hive.execution.engine</name>
        <value>mr</value>
  </property>
<!--解决hive操作info太多的问题-->
  <property>
        <name>hive.server2.logging.operation.enabled</name>
        <value>false</value>
  </property>

4.1.5 启动Hadoop 集群

必须启动 hdfs 和 yarn
[user@data1 hadoop-3.1.4]$ sbin/start-dfs.sh
[user@data2 hadoop-3.1.4]$ sbin/start-yarn.sh
在 HDFS 上创建/tmp 和/user/hive/warehouse 两个目录并修改他们的同组权限可写
(可不操作,系统会自动创建)
[user@data1 hadoop-3.1.4]$ bin/hadoop fs -mkdir /tmp
[user@data1 hadoop-3.1.4]$ bin/hadoop fs -mkdir -p /user/hive/warehouse

[user@data1 hadoop-3.1.4] b i n / h a d o o p f s − c h m o d g + w / t m p [ u s e r @ d a t a 1 h a d o o p − 3.1.4 ] bin/hadoop fs -chmod g+w /tmp [user@data1 hadoop-3.1.4] bin/hadoopfschmodg+w/tmp[user@data1hadoop3.1.4]bin/hadoop fs -chmod g+w /user/hive/warehouse

4.1.6 Hive 基本操作

(1)	启动 hive 
[atguigu@hadoop102 hive]$ bin/hive 
(2)	查看数据库 
hive> show databases; 
(3)	打开默认数据库 
hive> use default; 
(4)	显示 default 数据库中的表 
hive> show tables; 
(5)	创建一张表 
hive> create table student(id int, name string); 
(6)	显示数据库中有几张表 
hive> show tables; 
(7)	查看表的结构 
hive> desc student; 
(8)	向表中插入数据 
hive> insert into student values(1000,"ss"); 
(9)	查询表中数据 
hive> select * from student; 
(10)	退出 hive 
hive> quit; 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值