How to Connect DBeaver to Oracle Autonomous Database by JDBC Thin Driver

之前介绍了如何使用SQL Developer使用PL/SQL Developer连接Oracle Autonomous Database。

但是实际上在macOS系统中,我更喜欢使用DBeaver这个GUI客户端来操作数据库,DBeaver是一款用Java编写的免费数据库工具,可以连接几十种数据库,包括RDBS,NoSQL,时序数据库,图数据库等等,非常丰富。

NewImage

在DBeaver中连接Oracle ADB,需要使用Oracle JDBC驱动。这个解决方案是在Stackoverflow中找到的,有意思的是回答者是Jeff Smith,而Jeff是Oracle SQL Developer,Oracle SQL Developer Web,Oracle SQLcl等工具的产品经理。

下载最新的JDBC驱动

需要使用18.3版本以上的JDBC驱动,可以是18.3,也可以是19.3。下载地址分别是:
Oracle Database 18c (18.3) drivers
Oracle Database 19c (19.3) drivers

我们以18.3 JDBC Driver为例,下载ojdbc8-full.tar.gz,这个压缩包中包括ojdbc8.jar等一系列使用wallet连接Oracle ATP所必须的jar包。解压以后包含以下这些文件。

$ ls -l
total 16640
-rw-r--r--@ 1 Kamus  staff     2595  8 21  2018 README.txt
-rwxr-xr-x@ 1 Kamus  staff    11596  8  3  2018 ojdbc.policy
-rw-r--r--@ 1 Kamus  staff  4161744  8  3  2018 ojdbc8.jar
-rw-r--r--@ 1 Kamus  staff   144428  8  3  2018 ons.jar
-rw-r--r--@ 1 Kamus  staff   307817  8  3  2018 oraclepki.jar
-rw-r--r--@ 1 Kamus  staff  1661545  8  3  2018 orai18n.jar
-rw-r--r--@ 1 Kamus  staff   205152  8  3  2018 osdt_cert.jar
-rw-r--r--@ 1 Kamus  staff   306854  8  3  2018 osdt_core.jar
-rw-r--r--@ 1 Kamus  staff    29103  8  3  2018 simplefan.jar
-rw-r--r--@ 1 Kamus  staff  1398331  8  3  2018 ucp.jar
-rw-r--r--@ 1 Kamus  staff   262415  8  3  2018 xdb6.jar

下载连接ADB的wallet文件

在Oracle Cloud管理后台下载连接ATP需要的wallet压缩文件,这一步在之前的文章中都有提及。
NewImage
下载以后解压到任意目录。

在Beaver中增加连接驱动

在菜单项Database->Driver Manager中,点击New按钮。
NewImage

  1. 点击“Add File”按钮,将之前下载的JDBC Driver文件ojdbc8.jar添加进来
  2. 点击“Find Class”按钮,会自动找到类名,选择类名以后,上方的Class Name处会自动填入
  3. 填写URL Template,这是最重要的一步,具体的文档介绍,可以参看Oracle官方文档-Using a JDBC URL Connection String with JDBC Thin Driver。其中的关键点是修改dbname_high为下载的ADB wallet文件解压后包括的tnsnames.ora中的连接串名字,TNS_ADMIN是ADB wallet文件解压后的目录路径
  4. 填写Default Port,这个端口对于Oracle ADB来说是1522,在tnsnames.ora中也可以看到

在DBeaver中创建数据库连接

在菜单项Database->New Database Connection中,选择上述创建的连接驱动,然后填入数据库用户名和密码。点击Test Connection。
NewImage

如果一切正常,会显示连接成功。

至此,可以成功用这个新建的连接登入到Oracle ADB中了。
NewImage

Enjoy the Oracle Cloud always free tier. 😀

Leave a Reply

Your email address will not be published. Required fields are marked *