Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制

前期准备:因为hive是构建在hadoop集群之上的,所以要先进行hadoop集群的搭建

一、内嵌模式:使用hive内置的关系型数据库(derby)来存储元数据

1.下载并上传到虚拟机上,我是在/opt目录下

2.解压并且重命名

3.配置hive环境,个人习惯把配置文件放在my_enc.sh中

4. 初始化元数据库(derby)

5.启动hive

二、Linux mysql数据库的安装

1.下载并上传至虚拟机中,我还是在/opt目录下

2.查看系统中是否已经安装MySQL和mariadb

3.安装MySQL

4.初始化MySQL数据库

5.启动MySQL

6.查看MySQL临时密码

7.使用临时密码登录MySQL并修改密码

8.修改MySQL数据库下的user表的root权限,让root可通过任意ip连接

 三、将Hive的元数据配置到mysql

 1.在hive中导入MySQL依赖的jar包

 2.配置hive连接mysql的信息

   1)在hive conf目录下新建一个hive-site.xml文件

   2)在配置文件中添加自定义的参数信息

   3)在MySQL新建数据库hive

   4)初始化hive的元数据库

   5)启动并使用hive

     四、配置hive能够远程访问

      1.使用元数据服务方式访问hive

       1)在服务端slave1的配置文件hive-site.xml文件添加如下的配置信息

       2)启动元数据

      2.使用JDBC方式访问hive

      1)在hadoop集群中配置允许root通过代理方式访问hadoop集群

      2)将修改后的配置文件core-site.xml分发到集群中的其他节点

      3)重启hadoop集群,metastore,hiveserver2先停止

      4) 服务端slave1

      5)使用后台进程启动(hiveserver2 –metastore- mysql)

      6)客户端(第二代客户端beeline)安全机制


前期准备:因为hive是构建在hadoop集群之上的,所以要先进行hadoop集群的搭建

hadoop集群搭建推荐文章

一、内嵌模式:使用hive内置的关系型数据库(derby)来存储元数据

1.下载并上传到虚拟机上,我是在/opt目录下

Apache官网下载

我提供的网盘下载

提取码: nbp7

2.解压并且重命名

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第1张图片

3.配置hive环境,个人习惯把配置文件放在my_enc.sh中

 Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第2张图片

 让配置文件生效 

 

4. 初始化元数据库(derby)

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第3张图片

5.启动hive

会出现拒绝连接,因为hive是构建在hadoop上的,所以需要启动hadoop集群先

 启动hadoop

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第4张图片

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第5张图片

重新启动hive

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第6张图片

启动成功, 但derby一次只能连接一个客户端,也就是只能在slave1中才可以启动hive,所以需要进行MySQL数据库的安装

二、Linux mysql数据库的安装

1.下载并上传至虚拟机中,我还是在/opt目录下

mysql官网下载

我提供的网盘下载

提取码: 2jqv

 2.解压到sql(新建一个文件夹)

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第7张图片

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第8张图片

3.查看系统中是否已经安装MySQL和mariadb

若系统已经安装MySQL或mariadb,需要卸载掉 

4.安装MySQL(依次安装如下文件,一定要按照顺序

 Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第9张图片

5.初始化MySQL数据库

6.启动MySQL

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第10张图片

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第11张图片 

7.查看MySQL临时密码

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第12张图片

8.使用临时密码登录MySQL并修改密码

临时密码只能用来登录,若要进行其他操作,则需要修改密码

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第13张图片

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第14张图片

重新登录

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第15张图片

 这样就可以使用一些SQL语句啦

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第16张图片 

使用Navicat会发现连接不上,root只允许本机登录,客户端连不了

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第17张图片 

怎么办:修改用户权限

9.修改MySQL数据库下的user表的root权限,让root可通过任意ip连接

重启生效或者flush

这样使用Navicat连接就可以连接成功了

 Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第18张图片

 三、将Hive的元数据配置到mysql(hive数据库中)

 1.在hive中导入MySQL依赖的jar包,放到hive的lib目录下

   我提供的网盘下载jar包

   提取码: sb4x

   

  

  2.配置hive连接mysql的信息

   元数据本来在derby数据库转为MySQL的hive数据库

   1)在hive conf目录下新建一个hive-site.xml文件

    

     

    Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第19张图片

   2)在配置文件中添加自定义的参数信息(复制其他的配置文件)

    Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第20张图片

    Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第21张图片

     3)在MySQL新建数据库hive

   (hive名字任意,主要与连接的配置文件的URL指定的数据名一致即可)

      在xshell中登录MySQL创建或在客户端Navicat创建

      Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第22张图片

      

     4)初始化hive的元数据库

      

      Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第23张图片

      5)启动并使用hive

      Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第24张图片

      

      Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第25张图片

      配置到现在还是只能一台客户端访问,因为还没有配置对外的接口

   四、配置hive能够远程访问

   1.使用元数据服务方式访问hive

   1)在服务端slave1的配置文件hive-site.xml文件添加如下的配置信息

    Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第26张图片

  2)启动元数据

  第一种方式:将hive元数据作为前台进程启动,即关闭程序窗口,服务随之停止(不推荐使用)

  Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第27张图片

  Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第28张图片

  第二种方式:将hive元数据作为后台进程启动,即关闭程序窗口,服务依然正常运行

  Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第29张图片

  Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第30张图片

  要让其他客户端slave2也能够访问,需要在slave2配置hive,步骤与前面一致,不多加赘述      

 Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第31张图片   

 Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第32张图片

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第33张图片

 在客户端slave2启动hive,就能和服务端slave1一样进行SQL语句的操作了

 2.使用JDBC方式访问hive

 1)在hadoop集群中配置允许root通过代理方式访问hadoop集群

  在配置文件core-site.xml文件中添加上:

  

  Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第34张图片

  2)将修改后的配置文件core-site.xml分发到集群中的其他节点

  

  3)重启hadoop集群,metastore,hiveserver2先停止

  

  Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第35张图片

  

  Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第36张图片

 4) 服务端slave1

 在conf目录下的配置文件hive-site.xml添加配置信息

 

 Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第37张图片

 5)使用后台进程启动(hiveserver2 –metastore- mysql)

 Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第38张图片

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第39张图片

6)客户端(第二代客户端beeline)安全机制

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第40张图片

这样配置完成后,客户端slave3只需要解压hive文件后,通过get就能够直接访问

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第41张图片

Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制_第42张图片

 hive的安装部署所有内容就结束到这里啦!!!

 

 

 

       

你可能感兴趣的:(hive,hive,mysql,大数据,hadoop,linux)