OceanBase 开源版的租户只兼容 MySQL,连接协议兼容 MySQL 5.6 。因此 MySQL 命令行客户端或者图形化工具理论上也能连接 OceanBase 数据库的租户。此外,OceanBase 数据库也提供专属的命令行客户端工具 OBClient 和图形化客户端工具 ODC。
OceanBase MySQL 租户支持传统 MySQL 客户端连接,连接方式基本不变,跟传统 MySQL 不一样的地方是用户名的格式。
示例:
mysql -h172.20.249.50 -uroot@sys#obdemo -P2883 -p4S****Sr -c -A oceanbase
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MySQL connection id is 13
Server version: 5.6.25 OceanBase 3.1.0 (r3-b20901e8c84d3ea774beeaca963c67d7802e4b4e) (Built Aug 10 2021 08:10:38)
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MySQL [oceanbase]> show databases;
+--------------------+
| Database |
+--------------------+
| oceanbase |
| information_schema |
| mysql |
| SYS |
| LBACSYS |
| ORAAUDITOR |
| test |
+--------------------+
7 rows in set (0.008 sec)
说明:
-h
:提供 OceanBase 数据库连接 IP,通常是一个 ODP 地址。
-u
:提供租户的连接账户,格式有两种:用户名@租户名#集群名
或者 集群名:租户名:用户名
。MySQL 租户的管理员用户名默认是 root。
-P
:提供 OceanBase 数据库连接端口,也就是 ODP 的监听端口,默认是 2883
,可以自定义。
-p
:提供账户密码,为了安全可以不提供,改为在后面提示符下输入,密码文本不可见。
-c
:表示在 MySQL 运行环境中不要忽略注释。
-A
:表示在 MySQL 连接数据库时不自动获取统计信息。
oceanbase
:访问的数据库名,可以改为业务数据库。
新创建的业务租户的管理员(root
)密码默认为空,需要修改密码。
$ strings /dev/urandom |tr -dc A-Za-z0-9 | head -c8; echo
b******t
mysql -h172.20.249.50 -uroot@obmysql#obdemo -P2883 -p -c -A oceanbase
MySQL [oceanbase]> alter user root identified by 'b******t' ;
Query OK, 0 rows affected (0.118 sec)
如果没有安装 MySQL 客户端,可以安装 mariadb-server
。MySQL 官方 8.0 的客户端连接协议在密码处调整了逻辑,导致无法通过早期的 ODP 连接到 OceanBase 的 MySQL 租户,会报密码错误。可以通过选项 --default-auth=mysql_native_password
解决这个问题。
# 安装 mariadb
sudo yum -y install mariadb-server.x86_64
# 或者
# 安装官方 MySQL 客户端
sudo yum -y install mysql.x86_64
mysql -h172.20.249.50 -uroot@obmysql#obdemo -P2883 -pbJVqqEVt -c -A --default-auth=mysql_native_password oceanbase
ODP 2.0 版本已经修复了这个问题。
OceanBase 数据库提供了专用的命令行客户端工具 OBClient。使用方法和使用 MySQL 客户端一样。
示例:
obclient -h172.20.249.50 -uroot@obmysql#obdemo -P2883 -pbJ****Vt -c -A oceanbase
Welcome to the OceanBase. Commands end with ; or \g.
Your OceanBase connection id is 17
Server version: 5.6.25 OceanBase 3.1.0 (r3-b20901e8c84d3ea774beeaca963c67d7802e4b4e) (Built Aug 10 2021 08:10:38)
Copyright (c) 2000, 2022, OceanBase and/or its affiliates. All rights reserved.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
obclient [oceanbase]> show databases;
+--------------------+
| Database |
+--------------------+
| oceanbase |
| information_schema |
| mysql |
| test |
+--------------------+
4 rows in set (0.004 sec)
JDBC
)OceanBase 数据库目前支持的应用主要是 Java
和 C/C++
。
Java 语言
MySQL 官方 JDBC 驱动下载地址:MySQL Connector/J 5.1.46
OceanBase 官方 JDBC 驱动下载地址:OceanBase-Client
C 语言
具体驱动说明请参考官网文档:OceanBase Connector/C 简介
DBeaver 是一款通用的数据库客户端工具,其原理是使用各个数据库提供的 JDBC 驱动连接数据库,支持常见的关系型数据库、非关系型数据库、分布式数据库等等。使用 OceanBase 提供的 JDBC 驱动或者 MySQL 官方驱动,DBeaver 也可以连接 OceanBase 数据库的 MySQL 租户。
官方下载地址:https://dbeaver.io/download/
DBeaver 连接 OceanBase 数据库的时候选择 MySQL 数据库类型。第一次使用会自动下载官方 MySQL 驱动。与 MySQL 不同, DBeaver 连接端口默认是 2883
,用户名格式是:用户名@租户名#集群名
或 集群名:租户名:用户名
。
OceanBase 提供官方图形化客户端工具 OceanBase Developer Center
,简称 ODC
。该工具的详细信息请参考官网文档 OceanBase 开发者中心 。
ODC 下载地址:下载客户端版 ODC 。
适用 ODC 连接 OceanBase 数据库的方法如下:
保存连接后,打开连接,即进入工作界面。
目前 ODC 是对 OceanBase 数据库适配性最好的客户端工具。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。