OceanBase有点酷:重命名租户与删除租户

创建租户后,sys 租户可以更改普通租户的名称。

当前,OceanBase 数据库仅支持修改普通租户的名称。

重命名租户

sys 租户修改普通租户名称的 SQL 语句如下:

obclient> ALTER TENANT old_tenant_name RENAME GLOBAL_NAME TO new_tenant_name;

示例如下:

  1. 使用 root 用户登录数据库的 sys 租户。

  1. 将租户 tenant1 的租户名修改为 tenant2

obclient> ALTER TENANT tenant1 RENAME GLOBAL_NAME TO tenant2;

更多信息

更多 ALTER TENANT 语句的信息,请参见 ALTER TENANT。

您可以通过 SQL 语句删除租户。

通过 SQL 语句删除租户

删除租户后,租户下的数据库和表也同时被删除。但是租户使用的资源配置不会被删除。资源配置可以继续给其他租户使用。

注意
只有系统管理员(sys 租户的 root 用户)才能执行 DROP TENANT 命令。

删除租户的语法 SQL 语句如下:

obclient> DROP TENANT tenant_name [FORCE];

或者

obclient> DROP TENANT tenant_name PURGE; 

其中:

  • 对于 DROP TENANT 操作:

  • 当系统租户开启回收站功能时,DROP TENANT 操作表示删除的租户会进入回收站。对于回收站中的租户,后续系统租户可以通过租户级回收站功能进一步删除或恢复该租户,租户级回收站相关操作请参见 租户回收站。

  • 当系统租户关闭回收站功能时,DROP TENANT 操作表示延迟删除租户,后台线程会进行 GC(Garbage Collection)动作,租户的信息仍然可以通过内部表查询。租户具体延迟删除的时间由配置项 schema_history_expire_time 控制,默认为 7 天,表示执行 DROP TENANT 7 天后,租户会被删除,租户下的数据库和表也同时被删除。

schema_history_expire_time 配置项更多信息请参见 schema_history_expire_time。

  • DROP TENANT PURGE 操作表示仅延迟删除租户,且无论系统租户是否开启回收站功能,删除的租户均不进入回收站。

  • FORCE 参数表示无论系统租户是否开启回收站功能,均可以立刻删除租户。

示例:

  • 系统租户开启回收站功能后,删除租户 t1,删除的租户可进入回收站。系统租户关闭回收站功能时,删除租户 t1,租户被延迟删除。

obclient> DROP TENANT t1;
  • 延迟删除租户 t1,删除的租户不进入回收站。

obclient> DROP TENANT t1 PURGE;
  • 立刻删除租户 t1

obclient> DROP TENANT t1 FORCE;

你可能感兴趣的:(oceanbase)