0


DataGrip和dbeaver成功连接Phoenix及避坑指南(pheonix5.0-hbase2.0)

文章目录


前言

最近在Phoenix中批量建表,结果发现所有的表都建错了,想着直接删库,重新建库,然后使用以下命令

DROP SCHEMA SCHEMA_NAME

,提示SCHEMA不为空,不能够直接删除,然而几十张表,一张一张删除又不太现实,所以想着能不能借助一些数据库管理工具来简化操作,首先想到的就是最常用的两个工具dbeaver和DataGrip,于是开始了花费半天的探索之路…


一、dbeaver连接Phoenix

首先使用的是最好用的dbeaver,按理说应该很简单,之前连接MySQL和hive等,不就是简单的输入数据库地址和端口号,选择一下相应的驱动吗?然而这个坑,就出在了这个驱动上。

二、踩坑之旅

1.第一次

刚开始嘛,就先试一下,来到dbeaver的主界面dbeaver选择pheonix数据库
下一步后来到以下页面,与连接其他数据库一样,写入数据库所在服务器地址(此处已做映射)
写入地址
然后点击编辑驱动设置(这个操作就不截图了),来到以下界面(上面那个页面中url一栏,默认是没有

:/hbase

的,此处是啥,后面会讲到)
选择无认证
选择无认证,我安装的phoenix没有用到认证操作,然后点库,来到驱动页面
默认驱动
dbeaver提供的驱动,只有这一个,很明显,与我的版本不匹配(pheonix5.0-hbase2.0)
,但第一次嘛,还是试一试,万一呢,然后点击测试连接(我这之前删掉了,需要重新下载)
默认驱动下载
下载太慢了,我直接停止了,不过想想也知道,版本不对应,下载下来也是报错(如果你安装的版本恰好与这个对应,能不能成功连接,欢迎到评论区留言)。

2.第二次到第n-1次

遇到问题不要慌,然后打开浏览器开搜,简单翻阅,得到以下几个需要修改的地方

  • 在url后面添加zookeeper地址(查看与添加如下)(此处不修改貌似也不会报错)url-zookeeper添加
  • 修改连接属性(此处一定要添加,可能会报错,也可能连接到数据库后查看不到表)修改连接属性
  • 最最最重要的一点,修改dbeaver的java版本(一定按照我写的来) 在dbeaver的安装目录中,找到dbeaver.ini文件,并打开dbeaver.ini 在其中添加本机的java环境,一定一定要添加到-vmargs之后,否则会导致dbeaver打不开(此处修改的原因是,dbeaver自带一个11版的jer)修改jdk版本
  • 基本配置就这些,最后就是解决驱动问题 根据网上查到的方法: 1、去phoenix jdbc网站下载对应版本的jdbc驱动, 2、在安装集群的phoenix的目录中,存在着一个jdbc驱动phoenix-5.0.0-HBase-2.0-client.jar,导出来phoenix自带驱动 还需要hbase安装目录下,conf中的hbase-site.xml文件hbase-site.xml 以上俩文件都导出来,然后将hbase-site.xml文件放入phoenix-5.0.0-HBase-2.0-client.jar中,可以用解压软件将jar包打开(注意不是解压),xml文件拖进去打开jar包 然后,在dbeaver中导入jar包,找到驱动导jar包

然后进行测试连接,按照网上查到的大部分经验,到此就应该大功完成了,然而,我这儿又出了问题
err

(本人两种都已尝试,不知是不是我使用的版本特殊的原因,均未成功连接)

3.第n次(成功)

百度、谷歌、github、csdn,在各个搜索网站和社区辗转,花费了一个多小时,找到了一个可行的方案,原文链接
hbase-lib
将hbase目录下整个lib包导出,将之前的

hbase-site.xml

文件放入到其中的

phoenix-5.0.0-HBase-2.0-server.jar

中(如果不放,后面还会报错),然后在dbeaver中添加文件夹
jdbc
然后测试连接,有可能还会报错,重启一下dbeaver即可解决
成功
完美成功!!!

三、DataGrap连接Phoenix

在dbeaver成功连接上了phoenix之后,转而想到了DataGrap,因为有了dbeaver上成功的经验,这次就少走路很多的弯路,除了驱动,其他的设置都是一气呵成

  1. 创建驱动程序 由于datagrap没有直接支持phoenix,所以此处选择新建一个驱动程序驱动程序 点进来,往下滑动,可以找到phenix – 基本支持基本配置
  2. 基本的配置,修改本地jdk,还有两个参数的设置
  3. 最后就又来到驱动这儿,从上面dbeaver中可以知道,各种jar包都不能够成功连接,经我测试在此处一样不行。那之前的lib包呢?但我找了半天,没找到导入文件夹的选项。那是不是将lib中的jar包一个一个导入呢,我一看100多个,人都没麻了,正当不知如何是,突然发现能够批量导入jar包(+ -> 自定义JAR -> 找到lib包 -> 按住shift 然后选择lib包中 头尾文件 -> 确定)添加jar包批量导入 jar包导入成功后,等待DataGrap加载(需要一点时间),然后选择我们需要的jdbcjdbc 然后就可以创建数据源,输入url,格式参照dbeaver那边(可以复制过来) 之后就可以快乐的使用啦!连接成功

总结

哈哈,以上就是dbeaver和datagrap连接pheonix的全部过程,虽然踩了很多的坑,但最后成功解决,如果有疑问,欢迎留言交流。


本文转载自: https://blog.csdn.net/weixin_44804660/article/details/126092012
版权归原作者 小何尚未秃头 所有, 如有侵权,请联系我们删除。

“DataGrip和dbeaver成功连接Phoenix及避坑指南(pheonix5.0-hbase2.0)”的评论:

还没有评论