文章目录
前言
最近在Phoenix中批量建表,结果发现所有的表都建错了,想着直接删库,重新建库,然后使用以下命令
DROP SCHEMA SCHEMA_NAME
,提示SCHEMA不为空,不能够直接删除,然而几十张表,一张一张删除又不太现实,所以想着能不能借助一些数据库管理工具来简化操作,首先想到的就是最常用的两个工具dbeaver和DataGrip,于是开始了花费半天的探索之路…
一、dbeaver连接Phoenix
首先使用的是最好用的dbeaver,按理说应该很简单,之前连接MySQL和hive等,不就是简单的输入数据库地址和端口号,选择一下相应的驱动吗?然而这个坑,就出在了这个驱动上。
二、踩坑之旅
1.第一次
刚开始嘛,就先试一下,来到dbeaver的主界面
下一步后来到以下页面,与连接其他数据库一样,写入数据库所在服务器地址(此处已做映射)
然后点击编辑驱动设置(这个操作就不截图了),来到以下界面(上面那个页面中url一栏,默认是没有
:/hbase
的,此处是啥,后面会讲到)
选择无认证,我安装的phoenix没有用到认证操作,然后点库,来到驱动页面
dbeaver提供的驱动,只有这一个,很明显,与我的版本不匹配(pheonix5.0-hbase2.0)
,但第一次嘛,还是试一试,万一呢,然后点击测试连接(我这之前删掉了,需要重新下载)
下载太慢了,我直接停止了,不过想想也知道,版本不对应,下载下来也是报错(如果你安装的版本恰好与这个对应,能不能成功连接,欢迎到评论区留言)。
2.第二次到第n-1次
遇到问题不要慌,然后打开浏览器开搜,简单翻阅,得到以下几个需要修改的地方
- 在url后面添加zookeeper地址(查看与添加如下)(此处不修改貌似也不会报错)
- 修改连接属性(此处一定要添加,可能会报错,也可能连接到数据库后查看不到表)
- 最最最重要的一点,修改dbeaver的java版本(一定按照我写的来) 在dbeaver的安装目录中,找到
dbeaver.ini
文件,并打开 在其中添加本机的java环境,一定一定要添加到-vmargs
之后,否则会导致dbeaver打不开(此处修改的原因是,dbeaver自带一个11版的jer) - 基本配置就这些,最后就是解决驱动问题 根据网上查到的方法: 1、去phoenix jdbc网站下载对应版本的jdbc驱动, 2、在安装集群的phoenix的目录中,存在着一个jdbc驱动
phoenix-5.0.0-HBase-2.0-client.jar
,导出来 还需要hbase安装目录下,conf中的hbase-site.xml
文件 以上俩文件都导出来,然后将hbase-site.xml
文件放入phoenix-5.0.0-HBase-2.0-client.jar
中,可以用解压软件将jar包打开(注意不是解压),xml文件拖进去 然后,在dbeaver中导入jar包,找到驱动
然后进行测试连接,按照网上查到的大部分经验,到此就应该大功完成了,然而,我这儿又出了问题
(本人两种都已尝试,不知是不是我使用的版本特殊的原因,均未成功连接)
3.第n次(成功)
百度、谷歌、github、csdn,在各个搜索网站和社区辗转,花费了一个多小时,找到了一个可行的方案,原文链接
将hbase目录下整个lib包导出,将之前的
hbase-site.xml
文件放入到其中的
phoenix-5.0.0-HBase-2.0-server.jar
中(如果不放,后面还会报错),然后在dbeaver中添加文件夹
然后测试连接,有可能还会报错,重启一下dbeaver即可解决
完美成功!!!
三、DataGrap连接Phoenix
在dbeaver成功连接上了phoenix之后,转而想到了DataGrap,因为有了dbeaver上成功的经验,这次就少走路很多的弯路,除了驱动,其他的设置都是一气呵成
- 创建驱动程序 由于datagrap没有直接支持phoenix,所以此处选择新建一个驱动程序 点进来,往下滑动,可以找到phenix – 基本支持
- 基本的配置,修改本地jdk,还有两个参数的设置
- 最后就又来到驱动这儿,从上面dbeaver中可以知道,各种jar包都不能够成功连接,经我测试在此处一样不行。那之前的lib包呢?但我找了半天,没找到导入文件夹的选项。那是不是将lib中的jar包一个一个导入呢,我一看100多个,人都没麻了,正当不知如何是,突然发现能够批量导入jar包(+ -> 自定义JAR -> 找到lib包 -> 按住shift 然后选择lib包中 头尾文件 -> 确定) jar包导入成功后,等待DataGrap加载(需要一点时间),然后选择我们需要的jdbc 然后就可以创建数据源,输入url,格式参照dbeaver那边(可以复制过来) 之后就可以快乐的使用啦!
总结
哈哈,以上就是dbeaver和datagrap连接pheonix的全部过程,虽然踩了很多的坑,但最后成功解决,如果有疑问,欢迎留言交流。
版权归原作者 小何尚未秃头 所有, 如有侵权,请联系我们删除。