我是靠谱客的博主 无聊紫菜,最近开发中收集的这篇文章主要介绍Ubuntu 20.04 LTS 安装hive配置metastore、mysql和JDBC,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前提:hive是基于hadoop的数据仓库工具,将一定格式的文件映射为一张张表,因此hive版本和hadoop版本有对应关系,一定要检查自己安装的hadoop和hive版本是否兼容;(文末会给出一些安装包,最新的可以到官网下载)

本人hadoop版本:2.7.1,hive版本:1.2.1,jdk:1.8.0_162,mysql:8.0.20,jdbc:8.0.20

hive1.2.1 兼容Hadoop 2.x.y.-------在链接内自己可以查看hive,hadoop关系(http://hive.apache.org/downloads.html)

查看hive版本:启动hive时会出现hive-common-x.x.x.jar,xxx就是版本号

查看hadoop版本:hadoop version,即可看到

查看JDK版本:java --version

另一个参考教程,hive配置mysql作为metastore(https://www.guru99.com/hive-metastore-configuration-mysql.html)

1.安装hive:

cd ~/下载
sudo tar -xzvf  ./apache-hive-1.2.1-bin.tar.gz -C /usr/loca  # 解压到/usr/local中
cd /usr/local
sudo mv apache-hive-1.2.1-bin hive  #将文件夹名改为hive
sudo chown -R hadoop:hadoop hive # 修改文件权限,注意修改为你的用户名和组

2.配置环境变量:

    先打开.bashrc隐藏文件,再复制export到首行并保存,最后使生效,注意查看路径与实际路径一致!!!

gedit ~/.bashrc  #或者vim ~/.bashrc
export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
source ~/.bashrc #使修改生效

3.启用hive-default.xml,修改hive-site.xml(./hive/conf)

    cd /usr/local/hive/conf

    mv hive-default.xml.template hive-default.xml

    vim hive-site.xml    #hive-site.xml中的设置优先级高于hive-default.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://localhost:3306/hive?createDatabaseIfNotExist=true</value>
    <description>JDBC connect string for a JDBC metastore</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.cj.jdbc.Driver</value>
    <description>Driver class name for a JDBC metastore</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>hive</value>
    <description>username to use against metastore database</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>hive</value>
    <description>password to use against metastore database</description>
  </property>
</configuration>

    看描述内容,设置了mysql地址,driver,数据库user,数据库passwd,可以根据情况自行修改哦,必须与后面mysql中创建的一致,否则连不上

4.安装msql:

sudo apt-get update  #更新软件源
sudo apt-get install mysql-server  #安装mysql

默认是启动的,可以通下面netstat -tap|grep mysql 查看(下面给出开启,关闭,重启命令)

sudo netstat -tap | grep mysql    #mysql节点处于LISTEN状态表示启动成功
sudo service mysql start  #开启
sudo service mysql stop    #关闭
sudo service mysql restart    #重启

注意我安装时没有提示输入root账户密码,默认是空

sudo mysql -u root -p    #密码按Enter即可进入mysql shell,空格也可以,普通用户一定sudo

5.下载安装mysql jdbc,下载地址

选择系统,系统版本,自动出现最新的安装包,注意下载的是deb格式的,可以使用cpkg命令安装

cd ~/下载    #切换到你的文件所在目录下
sudo apt install ./mysql-connector-java_8.0.20-1ubuntu20.04_all.deb
sudo dpkg -i mysql-connector-java_8.0.20-1ubuntu20.04_all.deb    #我用的是这个命令
cp /usr/share/java/mysql-connector-java-8.0.20.jar  /usr/local/hive/lib #将jar包拷贝到/hive/lib目录下

注意,你可能不知道安装到哪里了,别急,在/usr/share/java/,(验证路径的方法:打开deb文件,提取文件,看到.tar.xz文件,用xz -d 解压,tar -xvf 解包,出来的文件目录路径就是在系统中的路径,你可以cd试试,我也找了好一会试出来的)

6.创建mysql hive用户和hive库
    mysql -u root -p #登陆shell界面,请先确认已经启动

create user 'hive'@'localhost' identified by 'hive'; -- 创建hive用户,密码是hive,必须与hive-site.xml配置的user,password相同
grant all on *.* to 'hive'@'localhost' ; -- 将所有数据库的所有表的所有权限赋给hive
flush privileges;  -- 刷新mysql系统权限关系表

(有的教程中没有创建用户的语句,直接使用 grant all on *.* to hive@localhost identified by 'hive';会提示ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'identified by 'hive'' at line 1,语法错误,没有引号???)

7.Everything is ok,let's test:

    启动hadoop:start-dfs.sh or start-all.sh

    启动hive:hive

    创建表,create table test(id int,name string);

    到mysql中查看保存在元数据库的TBLS表中,use hive;select * from TBLS;

    如果有刚刚建的表名,则配置成功;   

备注:1.启动hive时如果出现Hive metastore database is not initialized的错误,则使用命令初始化:

schematool -dbType mysql -initSchema

                2.jdbc 8.0.20 driver class name 更改:com.mysql.cj.jdbc.Driver,其他教程中是com.mysql.jdbc.Driver,如果错了会提示。

JDBC(Ubuntu20.4)下载链接:n9p8

Linux JDK1.8.162,百度云盘提取:fp3g  下载链接

hadoop2.7.1,百度云盘提取码: tjwa,下载链接

apache-hive1.2.1,百度云盘提取码:3srn,下载链接

最后

以上就是无聊紫菜为你收集整理的Ubuntu 20.04 LTS 安装hive配置metastore、mysql和JDBC的全部内容,希望文章能够帮你解决Ubuntu 20.04 LTS 安装hive配置metastore、mysql和JDBC所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(60)

评论列表共有 0 条评论

立即
投稿
返回
顶部