本地模式搭建Hive

前面在使用内嵌模式搭建Hive的时候,默认使用的是derby来存储元数据。这里我们使用本地模式搭建时,尝试使用mysql来进行数据存储。

  • 安装mysql

参考:https://blog.csdn.net/QYHuiiQ/article/details/124158197

在之前已经搭建了三台节点的hadoop集群(https://blog.csdn.net/QYHuiiQ/article/details/123055389?spm=1001.2014.3001.5501),这里我们将mysql安装在hadoop03节点上。

本地模式搭建Hive_第1张图片

  •  配置hive

参考搭建内嵌模式时的操作(内嵌模式搭建Hive_QYHuiiQ的博客-CSDN博客):

解压并配置环境变量,配置hive-env.sh,配置hive-site.xml。

这里我们就直接使用内嵌模式时在hadoop02节点上搭建的hive。

修改完上述的配置之后,继续修改hive-site.xml中mysql相关的配置:

[root@hadoop02 conf]# pwd
/usr/local/wyh/apache-hive-2.3.9-bin/conf
[root@hadoop02 conf]# vi hive-site.xml

javax.jdo.option.ConnectionURL的值修改为mysql的连接信息:


    javax.jdo.option.ConnectionURL
    jdbc:mysql://hadoop03:3306/hive?createDatabaseIfNotExist=true//这里的hive是数据库名称,如果不存在的话会自动创建
    
      JDBC connect string for a JDBC metastore.
      To use SSL to encrypt/authenticate the connection, provide database-specific SSL flag in the connection URL.
      For example, jdbc:postgresql://myhost/db?ssl=true for postgres database.
    
  

javax.jdo.option.ConnectionDriverName的值修改为mysql的驱动:


    javax.jdo.option.ConnectionDriverName
    com.mysql.jdbc.Driver
    Driver class name for a JDBC metastore
  

javax.jdo.option.ConnectionUserName的值修改为mysql的登陆用户名:


    javax.jdo.option.ConnectionUserName
    root
    Username to use against metastore database
  

javax.jdo.option.ConnectionPassword的值修改为mysql上述用户名对应的密码:


    javax.jdo.option.ConnectionPassword
    123456
    password to use against metastore database
  
  • 在hadoop02上安装mysql connector

由于在hadoop02上的hive要去连接hadoop03上的mysql,需要在hadoop02上安装mysql驱动,这个类似于我们平时写的java程序同样需要connector jar包。

下载connector jar:

MySQL :: Download MySQL Connector/J (Archived Versions)

本地模式搭建Hive_第2张图片

 下载之后得到的是zip,需要先解压缩之后才可以得到jar:

本地模式搭建Hive_第3张图片

 将jar放在$HIVE_HOME/lib目录下:

[root@hadoop02 wyh]# cp mysql-connector-java-5.1.28-bin.jar ./apache-hive-2.3.9-bin/lib/
  • 初始化数据库
[root@hadoop02 apache-hive-2.3.9-bin]# schematool -initSchema -dbType mysql
  • 验证数据库是否创建成功

在hadoop03上登陆mysql服务查看:

mysql> show databases;

可以看到它已经帮我们创建了名称为hive的数据库:

本地模式搭建Hive_第4张图片

以上就是本地模式搭建Hive的过程。

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