共计 4551 个字符,预计需要花费 12 分钟才能阅读完成。
行业资讯
数据库
如何通过 DBeaver/RazorSQL/DbVisualizer 工具连接数据库
如何通过 DBeaver/RazorSQL/DbVisualizer 工具连接数据库,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面丸趣 TV 小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
一、通过 DBeaver 和 GaussDB T 数据库无缝交互
DBeaver 是一款通用的 SQL 客户端和数据库管理工具。对于关系数据库,它使用 JDBC API 通过 JDBC 驱动程序与数据库交互。dbeaver 提供了一个编辑器,支持代码完成和语法突显, 同时通过提供插件体系结构,允许用户修改应用程序的大部分行为,以提供与数据库无关的针对数据库的功能或特性。
DBeaver 的社区版功能就极为丰富和强大。
安装了 DBeaver 之后,通过“Driver Manager”新建驱动,在以下页面添加 GaussDB 的驱动,驱动来自 GaussDB T 提供的介质,解压后可以找到 JDBC 驱动 jar 文件:
添加了驱动文件之后,『Find Class』,在下拉选择 ZenithDriver 之后,『Class Name』位置,会自动填写 GaussDB 的驱动名称。
接下来,在 URL Template 位置填写你的数据库地址和端口信息(前提是,服务器开启了远程访问许可),保存,就一切就绪了。
在建立连接时,我的系统遇到如下错误:
[errorCode=GS-00503, SQLState=‘08006’, reason=‘Get connection failed., detail: java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter’, clientIP=19.18.1.7.]
— javax/xml/bind/DatatypeConverter — javax.xml.bind.DatatypeConverter
javax/xml/bind/DatatypeConverter
javax/xml/bind/DatatypeConverter
javax.xml.bind.DatatypeConverter
javax.xml.bind.DatatypeConverter
注意这里的关键错误是:java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter’。
这是由于连接调用的 JAXB API 是 java EE 的 API,在 java SE 9.0 之后,默认情况下,Java SE 中将不再包含 java EE 的 Jar 包。而在 java 6 / 7 / 8 时关于这个 API 都是捆绑在一起的,所以要么降级 JDK,要么补充 API 包。
这其中最为关键的是 jaxb-api,通过如下链接下载,然后加入驱动文件中即可:
jaxb-api-2.3.0.jar
下载地址:
http://search.maven.org/remotecontent?filepath=javax/xml/bind/jaxb-api/2.3.0/jaxb-api-2.3.0.jar
现在我们就可以毫无障碍的体验和探索 GaussDB T 的世界了:
然后就可以用 GaussDB T (也就是 GaussDB 100) 绘制圣诞树了,纯国产,更喜庆。话不多说,上图:
SQL 如下:
SELECT
CASE WHEN ENMOTECH = 1
THEN lpad(* ,
GAO,
)
ELSE lpad(,
GAO + 1-ENMOTECH,
) || rpad(* ,
lag(ENMOTECH)
OVER (PARTITION BY 1
ORDER BY
ENMOTECH) + ENMOTECH -2,
* )
END 圣诞快乐!
FROM
(SELECT
LEVEL ENMOTECH ,
MAX(LEVEL)
OVER (PARTITION BY 1) GAO
FROM dual
CONNECT BY LEVEL 19 )
UNION ALL
SELECT
lpad(lpad( * ,3, *),19)
FROM dual
CONNECT BY LEVEL
数据驱动,成就未来,云和恩墨,不负所托!
二、MAC 下使用 RazorSQL 图形化工具连接华为 GaussDB T 数据库
由于官方出的 Data Studio 没有 MAC 版本,所以在 Mac 下要借助其他图形化工具 RazorSQL 来连接高斯 100 数据库,直接加载华为高斯的 jdbc 驱动即可,找到一个兼容 Mac OS 的工具 razorsql。
1、下载并安装 razorsql
https://razorsql.com/download.html
2、开启客户端 ip 白名单:
在 zhba.conf 文件中加入 host * 192.168.56.0/24,表示 56 网段的 IP 都可以连接。
[omm@pr7 cfg]$ pwd
/opt/gaussdb/data/cfg
[omm@pr7 cfg]$ ls -lrt
total 12
-rw------- 1 omm dbgrp 254 Oct 16 10:26 zengine.ini_bak
-rw------- 1 omm dbgrp 361 Oct 16 10:26 zengine.ini
-rw------- 1 omm dbgrp 766 Dec 25 12:17 zhba.conf
[omm@pr7 cfg]$ vi zhba.conf
host * 127.0.0.1,::1
host * 192.168.56.0/24
3、创建测试账号并赋权:
SQL
create user steven
identified by modb123;
GS-00339, [1:15]tcp connection is closed, reason: 32
SQL exit;
[omm@pr7 bin]$ zsql SYS/Changeme_123@127.0.0.1:1888
Warning: SSL connection to server without CA certificate is insecure. Continue anyway? (y/n):y
connected.
create user steven
identified by modb123;
GS-00658, The password was invalid: password can t be less than min length characters
SQL ^[[A^C
SQL
create user steven
identified by modb1234;
GS-00657, Password is too simple, password should contain at least three of the following character types:
A. at least one lowercase letter
B. at least one uppercase letter
C. at least one digit
D. at least one special character: `~!@#$%^ *()-_=+\|[{}]: , . /? and space
SQL
SQL ^[[A^C
SQL
create user steven
identified by modb123$;
Succeed.
SQL
grant connect,resource to steven;
Succeed.
5、重新加载 hba IP 白名单配置文件
SQL
alter system reload hba config;
Succeed.
6、使用 RazorSQL 工具连接 gaussdb
DATABASE TYPE 选择 OTHER
依次输入
连接名称:gauss
登录用户及密码:steven/modb123$
jdbc 驱动类名称:com.huawei.gauss.jdbc.ZenithDriver
驱动文件路径:/gaussdb/GaussDB_100_1.0.1-REDHAT7.5-X86/GaussDB_100_1.0.1-CLIENT-JDBC/com.huawei.gauss.jdbc.ZenithDriver-GaussDB_100_1.0.1.SPC2.B003.jar
JDBC URL:jdbc:zenith:@192.168.56.102:1888
如下:
7、使用 RazorSQL 工具测试 SQL
create table steven_test (id number,class_name varchar2(30),name varchar2(50));
insert into STEVEN.STEVEN_TEST
values (1, 222 , steven)
select *
from STEVEN.STEVEN_TEST
8、使用 RazorSQL 画一个圣诞树
用老杨的 SQL 画一个圣诞树:
三、MAC 下使用 DbVisualizer 图形化工具连接 GaussDB T 数据库库
以下介绍在 MAC OS 下使用 DbVisualizer 图形化工具连接高斯 100 GaussDB T 数据库,解决 Get connection failed., detail: java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter 问题。
使用后发觉 RazorSQL 界面不太友好,后来找到 DbVisualizer,界面和功能都比 RazorSQL 要好。
1、下载并安装 DbVisualizer
下载地址:
https://www.dbvis.com/download/10.0
2、给用户赋予查看所有表的权限
SQL
grant select any table to steven;
Succeed.
3、DbVisualizer 中加载 gaussdb 驱动
Tools Driver Manager…
右上角点击加号,create a new driver
点击 driver jar files 的文件夹选择 gaussdb 100 的 jdbc 驱动。
name:gaussdb
URL:jdbc:zenith:@:
Driver Class:选择 com.huawei.gauss.jdbc.ZenithDriver
截图如下:
4、新建数据库连接
database type 选择 Generic
Driver 选择 gaussdb
URL:jdbc:zenith:@192.168.56.102:1888
登录用户及密码:steven/modb123$
点击连接报错:
Get connection failed., detail: java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter
因 java 版本太新,后下载 jaxb-api-2.3.0.jar 加入到 java path 解决
http://search.maven.org/remotecontent?filepath=javax/xml/bind/jaxb-api/2.3.0/jaxb-api-2.3.0.jar
下载后放到了其中一个 java class path 即可。
help – about 可以看到:
/Applications/DbVisualizer.app/Contents/java/app/lib
5、连接数据库查看数据
6、运行 SQL
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注丸趣 TV 行业资讯频道,感谢您对丸趣 TV 的支持。