新建租户后,无法用root空密码连接

ob-ce-4.0.0

创建租户的过程:

ob [oceanbase]>alter system __min_full_resource_pool_memory = 1073741824;

ob [oceanbase]>CREATE RESOURCE UNIT unit2 MAX_CPU 1, MEMORY_SIZE '1G';

ob [oceanbase]>create resource pool rsp1 unit = 'unit2', unit_num = 1;

ob [oceanbase]>CREATE TENANT IF NOT EXISTS tenant1    charset='utf8mb4',    comment 'mysql tenant/instance',    primary_zone='RANDOM', resource_pool_list = ('rsp1');

尝试用root连接:

$ mysql -hmgr1 -uroot@tenant1 
ERROR 1227 (42501): Access denied

参考文档: 新建租户-OceanBase 数据库-OceanBase文档中心-分布式数据库使用文档

里面有相应的说明:

租户创建成功后,默认其管理员用户为 root 的密码为空,您需要及时修改管理员用户的密码, 修改用户密码。

可能是没开通租户白名单,先执行一下再登陆试试
ALTER TENANT tenant1 SET VARIABLES ob_tcp_invited_nodes=’%’;

可以了,感谢。

还有个疑问,我看文档中写的是

变量 ob_tcp_invited_nodes 用于指定租户连接的白名单,即允许哪些客户端 IP 连接该租户。如果不调整 ob_tcp_invited_nodes 的值,则默认租户的连接方式为只允许本机的 IP 连接数据库。
您也可以待租户创建成功后再修改其白名单设置,

我没开通白名单前,指定 -h127.0.0.1 或者本机IP也是报错,这是为什么呢。

此外,之前全局变量已经设置如下 ```
ob_tcp_invited_nodes=’%’;

这样也无效吗。
谢谢。

我之前新建租户也遇到过无法登陆但是显示的参数是%的问题,新建的租户可能需要先开一下白名单权限