Hive安装配置与使用

一、Hive安装

1.1修改Hadoop相关参数

(1)修改core-site.xml

vim /opt/module/hadoop/etc/hadoop/core-site.xml

<!-- 配置该babycun(superUser)允许通过代理访问的主机节点 -->

    <property>

        <name>hadoop.proxyuser.babycun.hosts</name>

        <value>*</value>

    </property>

<!-- 配置该babycun(superUser)允许通过代理用户所属组 -->

    <property>

        <name>hadoop.proxyuser.babycun.groups</name>

        <value>*</value>

    </property>

<!-- 配置该babycun(superUser)允许通过代理的用户-->

    <property>

        <name>hadoop.proxyuser.babycun.users</name>

        <value>*</value>

     </property>

(2)配置yarn-site.xml

vim /opt/module/hadoop/etc/hadoop/yarn-site.xml

<!-- NodeManager使用内存数,默认8G,修改为4G内存 -->

<property>

     <description>Amount of physical memory, in MB, that can be allocated

     for containers. If set to -1 and

     yarn.nodemanager.resource.detect-hardware-capabilities is true, it is

     automatically calculated(in case of Windows and Linux).

     In other cases, the default is 8192MB.

     </description>

     <name>yarn.nodemanager.resource.memory-mb</name>

     <value>4096</value>

</property>

<!-- 容器最小内存,默认512M -->

<property>

     <description>The minimum allocation for every container request at the RM  in MBs.

            Memory requests lower than this will be set to the value of this   property.

            Additionally, a node manager that is configured to have less memory than this value

     </description>

     <name>yarn.scheduler.minimum-allocation-mb</name>

     <value>512</value>

</property>

<!-- 容器最大内存,默认8G,修改为4G -->

<property>

     <description>The maximum allocation for every container request at the RM  in MBs.

            Memory requests higher than this will throw an   InvalidResourceRequestException.

     </description>

     <name>yarn.scheduler.maximum-allocation-mb</name>

     <value>4096</value>

</property>

<!-- 虚拟内存检查,默认打开,修改为关闭 -->

<property>

     <description>Whether virtual memory limits will be enforced for containers.</description>

     <name>yarn.nodemanager.vmem-check-enabled</name>

     <value>false</value>

</property>

1.2 Hive解压安装

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

2)将/opt/software/目录下的apache-hive-3.1.2-bin.tar.gz解压到/opt/module/目录下面

tar -zxvf /opt/module/apache-hive3.1.2-bin.tar.gz -C /opt/module/

3)修改解压后的目录名称为hive

mv /opt/module/apache-hive-3.1.2-bin /opt/module/hive

4)修改/etc/profile.d/my_env.sh文件,将hive的/bin目录添加到环境变量

sudo vim /etc/profile.d/my_env.sh

#HIVE_HOME的变量声明

export HIVE_HOME=/opt/module/hive

export PATH=$PATH:$HIVE_HOME/bin

断开xshell,重新连接

1.3 元数据库之Mysql--将数据库由derby改为mysql

1.Mysql安装

1)检查当前系统是否安装过Mysql,如果存在就是用下列命令移除,如果不存在则忽略。

 2)将MySQL安装包上传到/opt/software目录下

3)解压MySQL安装包资源解压到/opt/software 下新创建的mysql_jars目录

mkdir /opt/software/mysql_jars

tar -xf /opt/soft/mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar -C /opt/module/software/mysql_jars

4)查看mysql_jars目录下解压后的文件如下:

 5)在/opt/software/mysql_jars目录下执行rpm安装,严格按照如下顺序执行

安装mysql时出现错误

6)如果在mysql的数据存储路径下有文件存在,需要将其全部删除,存储路径地址在/etc/my.cnf文件中datadir参数所对应的值:

vim my.cnf

datadir=/var/lib/mysql

·删除/var/lib/mysql目录下的所有内容:

sudo rm -rf /var/lib/mysql/*

7)初始化数据库,会创建mysql内部数据库和表

sudo mysqld --initialize --user=mysql

8)初始化完成后,查看临时生成的root用户的密码,也是首次登录msql的密码

sudo cat /var/log/lysqld.log

 9)启动MySQL服务

sudo systemctl start mysqld

10)登录MySQL数据库

mysql -uroot -p -->输入临时密码

11)必须先修改root用户的密码,否则执行其他的操作会报错

12)修改mysql库下的user表中的root用户允许任意ip连接

 13)刷新使得修改生效

 2.配置Hive元数据库位Mysql

1) 拷贝驱动

Hive需要将元数据信息存储到元数据库mysql中,需要使用JDBC的方式连接到MySQL,所以,将MySQL的JDBC驱动拷贝到Hive的lib目录下,供hive调用

cp /opt/software/mysql-connector-java.5.1.37.jar /opt/module/hive/lib

 2)配置Metastore到MySql

在/opt/module/hive/conf目录下新建hive-site.xml文件(新建的配置文件中的配置会覆盖默认配置)

vim /opt/moudle/hive/conf/hive/site.xml

<configuration>

    <!-- jdbc连接的URL -->

    <property>

        <name>javax.jdo.option.ConnectionURL</name>

        <value>jdbc:mysql://hadoop102:3306/metastore?useSSL=false</value>

</property>

    <!-- jdbc连接的Driver-->

    <property>

        <name>javax.jdo.option.ConnectionDriverName</name>

        <value>com.mysql.jdbc.Driver</value>

</property>

    <!-- jdbc连接的username-->

    <property>

        <name>javax.jdo.option.ConnectionUserName</name>

        <value>root</value>

    </property>

    <!-- jdbc连接的password -->

    <property>

        <name>javax.jdo.option.ConnectionPassword</name>

        <value>你的密码</value>

</property>

    <!-- Hive默认在HDFS的工作目录 -->

    <property>

        <name>hive.metastore.warehouse.dir</name>

        <value>/user/hive/warehouse</value>

    </property>

   <!-- Hive元数据存储的验证 -->

    <property>

        <name>hive.metastore.schema.verification</name>

        <value>false</value>

    </property>

    <!-- 元数据存储授权  -->

    <property>

        <name>hive.metastore.event.db.notification.api.auth</name>

        <value>false</value>

    </property>

</configuration>

4.Hive初始化元数据库

在mysql中创建hive存储元数据的数据库metastore,再通过hive的初始化元数据库操作创建表

1)登陆MySQL

mysql -uroot -p 密码

2)新建Hive元数据库

create database metastore;

quit;

3)初始化Hive元数据库

cd /opt/module/hive

bin/schematool -initSchema -dbType mysql -verbose

5.启动Hive

1)启动Hive

cd /opt/module/hive

bin/hive

6.修改元数据库字符集

mysql -uroot -p密码

1)字段注释

alter table matastore.COLUMNS_V2 modify column COMMENT varchar(256) character set utf8;

2)表注释

alter table metastore.TABLE_PARAMS modify column PARAM_VALUE mediumtext character set utf8;

3)修改hive-site.xml中JDBC URL,如下

<property>

     <name>javax.jdo.option.ConnectionURL</name>

<value>jdbc:mysql://hadoop102:3306/metastore?useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8</value>

</property>

1.3  HiveServer2模式

开启HiveServer2模式

1)在hive-site.xml文件中添加如下配置信息:

    <!-- 指定hiveserver2连接的host -->

    <property>

        <name>hive.server2.thrift.bind.host</name>

        <value>hadoop102</value>

    </property>

    <!-- 指定hiveserver2连接的端口号 -->

    <property>

        <name>hive.server2.thrift.port</name>

        <value>10000</value>

    </property>

2)启动Hive服务

bin/hive --service hiveserver2

3)启动beeline客户端

bin/beeline -u jdbc:hive2://hadoop102:10000 -n 用户名

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值