alter system change tenant之后可以改用户租户用户密码吗

比如用户租户sys密码忘了,能用这方式从sys租户登录到业务租户修改sys或root密码吗?

2 个赞

论租户的隔离性,你这纯属瞎搞~~ :joy:

4 个赞

路过

3 个赞

只是想到这么一个问题,所以确认下哈哈

2 个赞

@论坛小助手

2 个赞

根据文档库中的信息,ALTER SYSTEM CHANGE TENANT 语句用于切换当前会话的租户,但并不能直接用于修改其他租户用户的密码。以下是详细解答:

关于修改用户密码

  1. 权限要求
    根据文档片段8(ALTER USER → 描述),修改用户密码需要满足以下条件:

    • 如果是修改当前用户的密码,则无需额外权限。
    • 如果是修改其他用户的密码,则需要拥有 CREATE USER 权限。
  2. 修改密码的方式

    • sys 租户中,可以通过 ALTER USER 语句修改普通租户的用户密码。例如:
      ALTER USER root@tenant_name IDENTIFIED BY 'new_password';
      
      这里,tenant_name 是目标租户名称,root 是目标租户的用户。
  3. 忘记密码的情况
    如果忘记了业务租户(如 sysroot 用户)的密码,可以通过以下步骤重置:

    • 切换到 sys 租户,并以 root@sys 用户登录。
    • 使用 ALTER USER 语句修改目标租户的用户密码。

关于 ALTER SYSTEM CHANGE TENANT

  • ALTER SYSTEM CHANGE TENANT 的作用是切换当前会话的租户,而不是直接修改密码。
  • 切换到目标租户后,仍然需要通过 ALTER USER 语句来修改密码。

综合回答

如果您忘记了业务租户(如 sysroot 用户)的密码,可以按照以下步骤操作:

  1. 登录到 sys 租户,使用 root@sys 用户。
  2. 执行以下语句切换到目标租户:
    ALTER SYSTEM CHANGE TENANT TO tenant_name;
    
  3. 修改目标租户的用户密码:
    ALTER USER root@tenant_name IDENTIFIED BY 'new_password';
    

因此,ALTER SYSTEM CHANGE TENANT 可以帮助您切换到目标租户,但修改密码仍需通过 ALTER USER 语句完成。希望以上解答对您有所帮助!

更多信息请查看:

  1. 修改租户系统变量
  2. 修改租户属性
  3. 使用 systemd 部署 OceanBase 数据库
  4. 重命名租户
  5. ALTER TENANT
  6. 修改租户密码
  7. ALTER USER
  8. obshell 租户命令组
  9. CREATE TENANT
2 个赞

小助手回答有误,不支持修改

3 个赞

:clap: :clap: :clap:

1 个赞