ITPub博客

首页 > 数据库 > 国内数据库 > GaussDB T 强体验:通过 DBeaver/RazorSQL/DbVisualizer工具连接数据库(附测试账号)

GaussDB T 强体验:通过 DBeaver/RazorSQL/DbVisualizer工具连接数据库(附测试账号)

原创 国内数据库 作者:数据和云 时间:2020-01-03 15:24:35 0 删除 编辑

导读: 工欲善其事,必先利其器。很多读者问,如何连接 GaussDB T(原 GaussDB 100)呢?在安装了 GaussDB T 之后,本文分别通过 DBeaver工具、RazorSQL图形化工具、 DbVisualizer图形化工具和数据库建立了连接,供大家参考学习,欢迎在评论区讨论。另:墨天轮组建了一个GaussDB学习的扣扣群(640663596),会分享 GaussDB T 的测试账号,供大家直接上手 GaussDB T数据库,揭开面纱。



一、 通过 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 < 5;

数据驱动,成就未来,云和恩墨,不负所托!


二、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.


SQL> 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

来源:墨天轮(https://www.modb.pro/db/13670,复制至浏览器即可查看)


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31556440/viewspace-2671813/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
分享数据库技术、新闻与信息,尤其是和Oracle数据库相关的内容,文章内容来自原创、专栏作者投稿或读者投稿。

注册时间:2018-09-27

  • 博文量
    259
  • 访问量
    280438