oceanbase 连接DBeaver

【 使用环境 】麒麟V10
【 OB or 其他组件 】OB
【 使用版本 】4.2.1.9
【问题描述】OB连接DBeaver租户只能选sys,选择自己新建的租户连接不上
【复现路径】其他租户无法连接

【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):

【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)

【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!

根据您的描述,您在使用 DBeaver 连接 OceanBase 4.2.1.9 版本时遇到了一个问题,即只能选择 sys 租户而无法连接自建租户。这可能是由于 DBeaver 的配置问题、网络问题、权限问题或 OceanBase 配置问题导致的。为了进一步诊断问题,建议您使用 obdiag 工具进行日志采集,并将采集到的日志提供给我们以便确认问题所在。

日志采集场景: 集群基础信息
日志采集命令: obdiag gather scene run --scene=observer.base

请您执行上述命令,并将生成的日志压缩包发送给我们。此外,为了更准确地定位问题,请您提供以下信息:

  1. 您是否已经按照文档中的步骤正确配置了 DBeaver,包括安装了正确的驱动程序?
  2. 您能否从 DBeaver 所在的机器 ping 通 OBServer 节点的 IP 地址?
  3. 您是否已经创建了 MySQL 模式的租户,并且确认该租户的名称和连接信息是否正确?
  4. 您是否有足够的权限连接自建租户?例如,您是否使用了正确的用户名和密码?
  5. 您是否在 DBeaver 中正确配置了连接自建租户的参数,如主机地址、端口、用户名、密码和数据库名?

感谢您的配合,我们将尽快为您解决问题。

详情请参考:

  1. 恢复完成后升级租户
  2. 通过 DBeaver 连接数据库
  3. 使用命令行部署 OceanBase 数据库生产环境
  4. oceanbase.DBA_OB_BACKUP_SET_FILES
  5. 升级 OceanBase 集群
  6. oceanbase.DBA_OB_BACKUP_TASKS

附上敏捷诊断工具 obdiag 使用帮助链接

其它租户的报错截图发下看下

根据您提供的信息,您在使用 DBeaver 连接 OceanBase 时遇到了“Access denied for user root@… (using password: YES)”错误。这个问题通常是由于以下几个原因之一引起的:

  1. 用户名或密码错误:请确保您输入的用户名和密码是正确的。如果您不确定密码,可以尝试重置密码。
  2. 权限问题:确保您使用的用户具有连接到指定租户的权限。
  3. 网络问题:确保 DBeaver 所在的机器能够访问 OBServer 节点的 IP 地址和端口。
  4. 租户配置问题:确保您创建的租户配置正确,并且租户状态正常。

解决步骤

1. 检查用户名和密码

请确保您输入的用户名和密码是正确的。如果您不确定密码,可以使用 obclient 重置密码。例如:

obclient -uroot@sys -h127.0.0.1 -P2881 -p

登录后,您可以使用以下命令重置密码:

ALTER USER 'your_username'@'%' IDENTIFIED BY 'new_password';

2. 检查权限

确保您使用的用户具有连接到指定租户的权限。您可以使用 obclient 登录到 sys 租户,然后检查用户的权限:

SHOW GRANTS FOR 'your_username'@'%';

如果用户没有足够的权限,您可以授予所需的权限:

GRANT ALL PRIVILEGES ON *.* TO 'your_username'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

3. 检查网络连接

确保 DBeaver 所在的机器能够访问 OBServer 节点的 IP 地址和端口。您可以使用 pingtelnet 命令进行测试:

ping 192.168.10.150
telnet 192.168.10.150 2883

4. 检查租户配置

确保您创建的租户配置正确,并且租户状态正常。您可以使用 obclient 登录到 sys 租户,然后检查租户的状态:

SELECT * FROM oceanbase.DBA_OB_TENANTS WHERE TENANT_NAME = 'your_tenant_name';

配置 DBeaver

如果您已经确认上述问题都已解决,但仍然无法连接,请检查 DBeaver 的配置:

  1. 添加新的数据库连接

    • 打开 DBeaver,点击“Database” → “New Database Connection”。
    • 选择“OceanBase”。
    • 填写连接信息:
      • Host: 192.168.10.150
      • Port: 2883
      • Database: oceanbase
      • User: your_username
      • Password: your_password
      • Tenant: your_tenant_name
  2. 测试连接

    • 点击“Test Connection”按钮,确保连接成功。

参考文档

希望这些步骤能帮助您解决问题。如果问题仍然存在,请提供更多的日志信息以便进一步诊断。

具体信息可参考以下文档:

  1. 快速体验 OceanBase 数据库
  2. 登录 OceanBase 租户
  3. 使用 OceanBase 导数工具从 OceanBase 集群 Oracle 租户迁移数据到 MySQL 租户

(小助手的答复已结束,如未能解决您的问题,请继续提问并等待其他同学的回复,谢谢!)

SHOW GRANTS FOR ‘your_username’@’%’;里面的your_username指的是什么

是指你创建的用户名,黑屏登陆正常吗?

新创建的租户没有密码,不输入密码就可以了