博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
将Hive的默认数据库Derby改为Postgresql
阅读量:6356 次
发布时间:2019-06-23

本文共 1933 字,大约阅读时间需要 6 分钟。

  hot3.png

Hive的默认数据库为Derby,这个数据库用于自己调试是可以的,但是要面对大量数据就有些力不从心了,所以接下来我要将Derby换为Postgresql,我会具体说一下在更换过程中需要注意的地方。

首先,下载Hive,我们直接下载稳定的apache-hive-0.14.0-bin.tar.gz,下载地址,

http://apache.fayea.com/hive/stable/

下载完成后,安装,将Hive添加到环境变量中,编辑bashrc文件

vim ~/.bashrc

将下行添加进去

export HIVE_HOME=/opt/apache-hive-0.14.0-bin

同时将bin目录添加到PATH中

export PATH=$HIVE_HOME/bin:$PATH

配置完成后,执行下面的命令,让修改的环境变量马上生效

source ~/.bashrc

好了,到这里Hive就安装完了,切换到系统管理员的身份,执行hive,看看效果

如果执行完成后没有报错,应该来到这个界面

083754_phwS_79159.png

执行

show tables;

如果返回OK,就说明你的Hive安装成功了。

接下来修改默认数据库:

首先,下载postgresql的jdbc驱动包,下载地址

http://jdbc.postgresql.org/download.html

仔细查看页面说明,选择符合自己系统环境的驱动包,我这里下载的是

postgresql-9.3-1102.jdbc41.jar

好了,将这个驱动包上传到Hive的lib目录下面,在Hive的conf目录下面添加

hive-site.xml

文件,对于0.14版本而言这个文件默认是没有的,在文件中添加以下内容

  
  
  
  
  
javax.jdo.option.ConnectionURL
jdbc:postgresql://db_ip:db_port/db_name
JDBC connect string for a JDBC metastore
javax.jdo.option.ConnectionDriverName
org.postgresql.Driver
Driver class name for a JDBC metastore
javax.jdo.option.ConnectionUserName
db_user
username to use against metastore database
javax.jdo.option.ConnectionPassword
db_pwd
password to use against metastore database

这个文件中说明了,具体的数据库连接的相关信息,到这里应该就部署完成了,但是还有一些细节需要操作,

$JAVA_HOME/lib/tools.jar

这个jar包拷贝到Hive的lib目录下。

为了防止Postgresql发生死锁需要导入一个sql,在上面的下载的Hive的包中进入到以下目录

apache-hive-0.14.0-bin.tar.gz\apache-hive-0.14.0-bin\scripts\metastore\upgrade\postgres

找到文件

hive-schema-0.14.0.postgres.sql

在linux中执行以下命令进行导入

psql -U db_user -d db_name -h db_ip -f hive-schema-0.14.0.postgres.sql

导入完成后,所以的修改就完成了,赶快去验证一下

create table text_test(str string);show tables;

如果一切显示正常,那么恭喜你,修改成功!

转载于:https://my.oschina.net/sucre/blog/365351

你可能感兴趣的文章
谷歌Pixel 3吸引三星用户, 但未动摇iPhone地位
查看>>
VUE中使用vuex,cookie,全局变量(少代码示例)
查看>>
grep -w 的解析_学习笔记
查看>>
TX Text Control文字处理教程(3)打印操作
查看>>
CENTOS 7 如何修改IP地址为静态!
查看>>
MyCat分片算法学习(纯转)
查看>>
IO Foundation 3 -文件解析器 FileParser
查看>>
linux学习经验之谈
查看>>
mysqld_multi实现多主一从复制
查看>>
中介模式
查看>>
JS中将变量转为字符串
查看>>
servlet笔记
查看>>
JVM(五)垃圾回收器的前世今生
查看>>
Spring Boot 自动配置之@EnableAutoConfiguration
查看>>
web前端笔记
查看>>
finally知识讲解
查看>>
Matplotlib绘图与可视化
查看>>
openstack ocata版(脚本)控制节点安装
查看>>
【微信公众号开发】获取并保存access_token、jsapi_ticket票据(可用于微信分享、语音识别等等)...
查看>>
datatable 获取最大值
查看>>