暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

OceanBase数据库之恢复租户

Tonyhacks 2023-11-27
294

恢复租户

为防止恶意或误操作导致的数据不可恢复性丢失,OceanBase 数据库提供了回收站功能,从而支持租户级的数据的快速恢复功能。本文介绍如何恢复回收站中的租户。

OceanBase 数据库可以通过 FLASHBACK TENANT 语句恢复回收站中的租户。

使用限制

由于当前仅 sys 租户可以删除租户,故 MySQL 模式和 Oracle 模式的租户被删除后,只能进入 sys 租户的回收站中。也只有 sys 租户可以执行恢复租户的操作。

操作步骤

  1. 使用 root 用户登录到集群的 sys 租户。

    obclient -h172.30.xx.xx -P2883 -uroot@sys#cluster -p**** -A

  2. 进入 oceanbase 数据库。

    obclient [(none)]> USE oceanbase;

  3. 通过 SHOW RECYCLEBIN 语句,查看当前系统租户回收站中的对象。

    obclient [oceanbase]> SHOW RECYCLEBIN;
    +-------------------------------------+---------------+--------+----------------------------+
    | OBJECT_NAME                         | ORIGINAL_NAME | TYPE   | CREATETIME                 |
    +-------------------------------------+---------------+--------+----------------------------+
    | __recycle_$_100017_1673367572701376 | mq_t1         | TENANT | 2023-01-11 00:23:36.317242 |
    +-------------------------------------+---------------+--------+----------------------------+
    1 row in set
    

    回收站相关参数的详细说明,参见 recyclebin

  4. 通过 FLASHBACK TENANT 语句,恢复回收站中的租户。

    以恢复租户 mq_t1 为例:

    obclient [oceanbase]> FLASHBACK TENANT mq_t1 TO BEFORE DROP;
    Query OK, 0 rows affected
    

    FLASHBACK TENANT 语句的详细说明,参见 FLASHBACK

  5. 查看 DBA_OB_TENANTS 视图和回收站确认执行结果。

obclient [oceanbase]> SHOW RECYCLEBIN;
Empty set

obclient [oceanbase]> SELECT * FROM DBA_OB_TENANTS WHERE TENANT_NAME = 'mq_t1';
+-----------+-------------+-------------+----------------------------+----------------------------+--------------+------------------------------+-------------------+--------------------+--------+---------------+--------+-------------+-------------------+------------------+---------------------+---------------------+---------------------+---------------------+--------------+----------------------------+
| TENANT_ID | TENANT_NAME | TENANT_TYPE | CREATE_TIME                | MODIFY_TIME                | PRIMARY_ZONE | LOCALITY                     | PREVIOUS_LOCALITY | COMPATIBILITY_MODE | STATUS | IN_RECYCLEBIN | LOCKED | TENANT_ROLE | SWITCHOVER_STATUS | SWITCHOVER_EPOCH | SYNC_SCN            | REPLAYABLE_SCN      | READABLE_SCN        | RECOVERY_UNTIL_SCN  | LOG_MODE     | ARBITRATION_SERVICE_STATUS |
+-----------+-------------+-------------+----------------------------+----------------------------+--------------+------------------------------+-------------------+--------------------+--------+---------------+--------+-------------+-------------------+------------------+---------------------+---------------------+---------------------+---------------------+--------------+----------------------------+
|      1036 | mq_t1       | USER        | 2023-01-11 00:23:36.317242 | 2023-05-18 15:49:12.857944 | zone1;zone2  | FULL{1}@zone1, FULL{1}@zone2 | NULL              | MYSQL              | NORMAL | NO            | NO     | PRIMARY     | NORMAL            |                0 | 1684396167132057328 | 1684396167132057328 | 1684396167051160964 | 4611686018427387903 | NOARCHIVELOG | DISABLED                   |
+-----------+-------------+-------------+----------------------------+----------------------------+--------------+------------------------------+-------------------+--------------------+--------+---------------+--------+-------------+-------------------+------------------+---------------------+---------------------+---------------------+---------------------+--------------+----------------------------+
1 row in set

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论