暂无图片
暂无图片
4
暂无图片
暂无图片
暂无图片

Windows工具DBeaver连接OceanBase数据库访问MySQL和Oracle租户

原创 shunwah 2022-03-09
6303

DBeaver连接OceanBase数据库

oceanbase部署请查看历史文章

https://www.modb.pro/db/324460 使用OBD自动部署三节点OceanBase文档

https://www.modb.pro/db/328171 OceanBase手动部署三节点OBserver文档

https://www.modb.pro/db/322997 OceanBase 单节点手动部署OB文档

https://www.modb.pro/db/250245 Docker单节点自动化部署OB集群


本次试验环境使用OBD自动部署三节点OceanBase文档

集群部署请参考之前文章:https://www.modb.pro/db/324460 使用OBD自动部署三节点OceanBase文档

安装部署版本

DBeaver 版本21.2.4.202111011413

安装方式

本次采用windows10,64环镜,下载压缩包本地安装


一、租户登录方式

通过 OBClient 连接数据库

OBClient 是一个交互式和批处理查询工具,通过 OBClient 您可以连接 OceanBase 数据库的 MySQL 和 Oracle 租户。

通过 OBClient 连接 OceanBase 数据库的 OceanBase 租户

[admin@CAIP131 ~]$ obclient -h172.20.2.120 -uroot@test_tenant#obce-3zones -P2883 -p -c -A oceanbase

通过 OBClient 连接 OceanBase 数据库的 MySQL 租户。

[admin@CAIP131 ~]$ obclient -h 172.20.2.120 -uroot@test_mysql#obce-3zones -P2883 -p -c -A sys

通过 OBClient 连接 OceanBase 数据库的 Oracle 租户。

[admin@CAIP131 ~]$ obclient -h 172.20.2.120 -uroot@test_oracle#obce-3zones -P2883 -p -c -A sys

需要使用 OceanBase 的 MySQL 租户时,可以使用 MySQL 客户端连接该租户。

[admin@CAIP131 ~]$ mysql -h172.20.2.120 -uroot@test_tenant#obce-3zones -P2883 -p -c -A oceanbase
  • 参数详解

  • -h:提供 OceanBase 数据库连接 IP,通常是一个 OBProxy 地址。

  • -u:提供租户的连接账户,格式有两种:用户名@租户名#集群名或者 集群名:租户名:用户名。使用 My SQL 客户端仅支持连接 MySQL 租户,MySQL 租户的管理员用户名默认是 root

  • -P:提供 OceanBase 数据库连接端口,也是 OBProxy 的监听端口,默认是 2883,可以自定义。

  • -c:表示在 MySQL 运行环境中不要忽略注释。

  • -A:表示在 MySQL 连接数据库时不自动获取统计信息。

  • oceanbase:访问的数据库的名称,可以更改为业务数据库。

租户模式:

sys租户是系统租户,是mysql模式的,管理用户名是root。
自建的mysql模式租户下管理员用户是root;
oracle模式租户下管理员用户是sys,和原生oracle一样。
比如ob下面除了sys租户,还有mysql01(mysql模式)、oracle01(模式)两个租户,连接这三个租户分别这样:
mysql -h127.0.0.1 -uroot@sys -P2881 -p
mysql -h127.0.0.1 -uroot@mysql01 -P2881 -p
obclient -h127.0.0.1 -usys@oracle01 -P2881 -p
一个ob集群默认系统租户是sys租户,是mysql模式的租户。除了sys租户,可以创建一些普通租户,创建普通租户的时候可以选择租户模式,是mysql模式,或者oracle模式。

二、安装部署DBeaver

除了通过 OBClient 连接数据库,还可以通过Windows下载安装DBeaver连接工具

考虑到Navicat工具的兼容性问题,连接oceanbase数据库建议更换连接工具,使用dbeaver连接oceanbase数据库。

1、下载DBeaver

官网下载https://dbeaver.io/执行所有默认下一步完成安装

image-20211228143856113

2、JDBC驱动下载

JDBC驱动下载OceanBase-client-jdbc

https://oceanbase-aliyun-docs.oss-cn-hangzhou.aliyuncs.com/downloads/obclient/oceanbase-client-1.1.7.jar?spm=a2c4g.11186623.2.4.2f6b535fe9lVxX&file=oceanbase-client-1.1.7.jar

3、驱动管理

安装好DBeave后,在桌面找到安装好的图标,打开DBeaver,点击菜单【数据库(D)】-【驱动管理器】

image-20211228144053215

3.1新建驱动

在【驱动管理器】里点击【新建(N)】

image-20211228144119807

驱动名称:OceanBase

image-20211228144229215

image-20211228144243757

3.2添加JDBC驱动

在库的位置选择【添加文件】,选择刚下载的JDBC驱动JAR包,点击【找到类】,选择com.alipay.oceanbase.jdbc.Driver

image-20211228144317631

此时在设置的类名中自动填入

com.alipay.oceanbase.jdbc.Driver

image-20211228144523453

URL模板填写

jdbc:oceanbase://<server>:<port>/<database>

image-20211228144614670

默认端口填写PROXY默认端口2883即可

image-20211228144923151

3.3OceanBase完整驱动相关信息

类名:com.alipay.oceanbase.obproxy.mysql.jdbc.Driver URL模板:jdbc:oceanbase://<server>:<port>/<database> 默认端口:2883

三、配置租户(方法一)

方法一:通过(用户名@租户名)使用DBeaver连接OceanBase数据库

前提:创建租户设置密码,访问2881端口

集群部署请参考之前文章:https://www.modb.pro/db/324460 使用OBD自动部署三节点OceanBase文档

1、登录新创建的test_tenant租户(默认租户密码为空):

[admin@CAIP131 ~]$ obclient -h 172.20.2.120 -uroot@test_tenant -P2881 -A -c

2、设置租户test_tenant的root密码

MySQL [(none)]> alter user root identified by 'Pwd123#';

image-20220308180848366

3、设置租户的授权

MySQL [(none)]> grant all on *.* to 'test_tenant' WITH GRANT OPTION;

image-20220308181052160

查看用户授权

MySQL [(none)]> show grants for test_tenant;

image-20220308181147871

4、登录测试:

[admin@CAIP131 ~]$ obclient -h 172.20.2.120 -uroot@test_tenant -P2881 -p -A -c

三、使用DBeaver连接OceanBase数据库(方法一)

通过(用户名@租户名)使用DBeaver连接OceanBase数据库

1、添加的OceanBase驱动

在DBeaver点击【数据库】-【新建连接】或点击图标,找到刚刚添加的OceanBase驱动

image-20211228145131635

用户名处输入格式为

用户名@租户名
root@test_tenant

2、设置驱动属性

在【驱动属性】里填写数据库IP和端口、以及默认数据库

image-20211228145855887

DBNAME,数据库名称
HOST变量,填写服务器地址
PORT端口,2881
示例:
DBNAME:oceanbase
HOST变量:172.20.2.120
PORT端口:2881

3、测试链接

点击【测试链接】,如连接正常会有“已连接”的提示!

image-20220308214328312


四、配置租户(方法二)

通过(用户名@租户名#集群名)使用DBeaver连接OceanBase数据库

前提:创建租户设置密码,访问2883端口

集群部署请参考之前文章:https://www.modb.pro/db/324460 使用OBD自动部署三节点OceanBase文档

登录新创建的test_tenant租户(默认租户密码为空):

1、登录sys租户和带集群#obce-3zones:

[admin@CAIP131 ~]$ obclient -h172.20.2.120 -uroot@sys#obce-3zones -P2883 -p -c -A oceanbase


新建查看租户

MySQL [oceanbase]> show processlist;
MySQL [oceanbase]> show full processlist;


2、登录test_tenant租户和带集群#obce-3zones:

[admin@CAIP131 ~]$ obclient -h172.20.2.120 -uroot@test_tenant#obce-3zones -P2883 -p -c -A oceanbase


3、设置租户密码

MySQL [oceanbase]> alter user root identified by 'sixlens2881';


五、使用DBeaver连接OceanBase数据库(方法二)

通过(用户名@租户名#集群名)使用DBeaver连接OceanBase数据库

1、添加的OceanBase驱动

在DBeaver点击【数据库】-【新建连接】或点击图标,找到刚刚添加的OceanBase驱动

用户名处输入格式为

用户名@租户名#集群名
root@test_tenant#obce-3zones

image-20220308221236538

填写密码


2、设置驱动属性

在【驱动属性】里填写数据库IP和端口、以及默认数据库

DBNAME:填写数据库名称
HOST变量:填写服务器地址
PORT端口:填写端口2883示例:DBNAME:oceanbaseHOST变量:172.20.2.120
PORT端口:2883

默认驱动

image-20211228145855887

填写要连接集群的驱动属性


3、测试链接

点击【测试链接】,如连接正常会有“已连接”的提示!


4、个性化属性设置

在连接设置配置,常规位置,修改连接名称,连接颜色和文件夹等个性化属性。


最后修改时间:2022-04-06 10:16:29
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论