spark连接mysql创建hive表_Apache Spark整合Hive

安装hive前提是要先安装hadoop集群,并且hive只需要在NameNode节点集群中安装即可,可以不在DataNode节点的机器上安装。另外还需要说明的是,虽然修改配置文件并不需要你已经把hadoop跑起来,但是本文中用到了hadoop命令,在执行这些命令前你必须确保hadoop是在正常跑着的,而且启动hive的前提也是需要hadoop在正常跑着,所以建议你先将hadoop跑起来在按照本文操作。

1.前提环境

这里需要提前安装好mysql数据库,将mysql数据库作为hive的元数据库。

hive数据仓库的下载地址:hive-2.3.2/

2.Hive的安装和配置

2.1配置环境变量

编辑/etc/profile 文件,添加hive的环境变量

75b440c9b904?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

执行以下命令让配置生效:source /etc/profile

2.2使用mysql作为默认的元数据库

将mysql-connector-java-5.1.32-bin.jar 驱动包上载Hive的lib目录下:/usr/local/hadoop/apache-hive-2.3.2-bin/lib/

用hive/lib/jline-2.12.jar 替换$HADOOP_HOME/share/hadoop/yarm/lib/ ,如果没有替换,运行./bin/hive 命令会出错。

cp jline-2.12.jar /usr/local/hadoop/hadoop-2.8.2/share/hadoop/yarn/lib/

3.配置hive-site.xml文件

3.1新建hive-site.xml(建议使用touch)

在/usr/local/hadoop/apache-hive-2.3.2-bin/conf 目录下新建hive-site.xml,执行下面命令将hive-default.xml.template 复制到hive-site.xml

cp hive-default.xml.template hive-site.xml

3.2使用hadoop新建HDFS目录

因为在hive-site.xml中有这样的配置

hive.metastore.warehouse.dir

/user/hive/warehouse

hive.exec.scratchdir

/tmp/hive

所以要在hadoop集群新建/user/hive/warehouse目录,执行命令

cd $HADOOP_HOME #进入Hadoop主目录

bin/hadoop fs -mkdir -p /user/hive/warehouse #创建目录

bin/hadoop fs -chmod -R 777 /user/hive/warehouse #新建的目录赋予读写权限

bin/hadoop fs -mkdir -p /tmp/hive/#新建/tmp/hive/目录

bin/hadoop fs -chmod -R 777 /tmp/hive #目录赋予读写权限

#用以下命令检查目录是否创建成功

bin/hadoop fs -ls /user/hive

bin/hadoop fs -ls /tmp/hive

3.3修改hive-site.xml数据库相关的配置

将下面的配置信息添加到hive-site.xml文件中:

javax.jdo.option.ConnectionURL

jdbc:mysql://59.68.29.105:3306/hive?createDatabaseIfNotExist=true

JDBC connect string for a JDBC metastore

javax.jdo.option.ConnectionDriverName

com.mysql.jdbc.Driver

Driver class name for a JDB

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值