---
title: "RESTORE - OceanBase 数据库 V4.6.0 | OceanBase 文档中心"
description: RESTORE 描述 ALTER SYSTEM RESTORE 语句用于恢复租户备份的数据。 使用限制及注意事项 OceanBase 数据库的物理恢复支持在同集群内恢复，也支持在不同的集群内恢复。 使用 ALTER SYSTEM RESTORE 语句进行物理恢复前，请务必确认待恢复的备份数据的版本，恢复版本的限制请参…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.6.0

# RESTORE

更新时间：2026-06-24 08:23:19

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.6.0/zh-CN/700.reference/500.sql-reference/100.sql-syntax/100.system-tenants/200.alter-system/3300.restore.md)  

## 描述

`ALTER SYSTEM RESTORE` 语句用于恢复租户备份的数据。

## 使用限制及注意事项

- OceanBase 数据库的物理恢复支持在同集群内恢复，也支持在不同的集群内恢复。
 - 使用 `ALTER SYSTEM RESTORE` 语句进行物理恢复前，请务必确认待恢复的备份数据的版本，恢复版本的限制请参见[恢复前准备](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005682392)。
 - 使用 `ALTER SYSTEM RESTORE` 语句进行物理恢复前，请确认已创建待恢复的租户所需的资源，为待恢复的租户创建所需资源的具体操作请参见 [恢复前准备](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005682392)。
 - 使用 `ALTER SYSTEM RESTORE` 语句恢复出来的租户默认为备租户，如果需要转为主租户提供服务，需要再执行 `ALTER SYSTEM ACTIVATE STANDBY` 语句，有关 `ALTER SYSTEM ACTIVATE STANDBY` 语句的详细介绍，请参见 [ACTIVATE STANDBY](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005686270)。

## 权限要求

仅 `sys` 租户的 `root` 用户（`root@sys`） 可以执行 `ALTER SYSTEM RESTORE` 语句。

## 语法

```shell
ALTER SYSTEM
   RESTORE dest_tenant_name
   FROM uri
   [ UNTIL {TIME='timestamp' | SCN=scn} ]
   WITH 'restore_option'
   [WITH KEY FROM 'backup_key_path' ENCRYPTED BY 'password']
   [DESCRIPTION [=] 'description'];

restore_option:
  pool_list=pool_name[&locality=locality][&primary_zone=zone_name][&concurrency=int_num][&kms_encrypt={true | false}][&method={full | quick}]

```

## 参数解释

| **参数** | **描述** |
| --- | --- |
| dest_tenant_name | 指定要恢复的租户的名称。 |
| uri | 指定备份时设置的数据备份路径 `backup_data_dest` 与日志归档路径 `log_archive_dest`，该值至少包含一条数据备份路径和一条日志归档路径，路径之间使用英文逗号（,）分隔。目前 OceanBase 数据库支持的归档目的端介质为 NFS、阿里云 OSS、Azure Blob、AWS S3 以及兼容 S3 协议的对象存储，例如：华为 OBS、Google GCS、腾讯云 COS。`uri` 路径示例可参考 [SET LOG_ARCHIVE_DEST](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005686268) 或 [SET DATA_BACKUP_DEST](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005686222)。 |
| TIME='timestamp' \| SCN=scn | 指定恢复的终点，恢复到该位点位置，且包含该位点。当指定恢复到 `TIME` 或 `SCN` 时, 必须以 `=` 来连接指定的值。如果不指定 `UNTIL` 子句，则默认恢复到最新的位点。timestamp 仅支持 `YYYY-MM-DD HH24:MI:SS.FF` 格式，精确到纳秒。有关恢复时如何选取 `timestamp` 与 `scn` 的值的详细介绍，请参见 [物理恢复相关参数介绍](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005682393)。 |
| restore_option | 支持 `pool_list`、`locality`、`primary_zone`、`concurrency`、`kms_encrypt`、`method` 等参数，不同参数之间通过 `&` 分隔。在指定 locality 和 primary_zone 时，建议尽量与源租户保持同构。如果不同构，待租户恢复后激活为主租户可能会产生负载均衡操作，影响性能。   - `pool_list`：必选，填写为待恢复的新租户创建的资源池。多个资源池之间用英文逗号（,）分隔。 - `locality`：可选，指定新租户副本分布的 Locality 信息，需要与新租户所在集群的 pool_list 的 Zone 信息相匹配。与源租户保持同构时，建议新租户与源租户的 F 副本个数相同。不显式指定时，默认按照 `resource_pool` 的 `zone_list` 为每个 Zone 设一个 F 副本。     填写样例: `locality='F@z1,F@z2,F@z3'`。 - `primary_zone`：可选，指定新租户的 Leader 副本的偏好位置，需要与 `pool_list` 及 `locality` 相匹配，即需要满足 Zone 信息匹配以及 `primary_region` 内至少有两个 Paxos 成员等限制。与源租户保持同构时，建议新租户与源租户的第一优先级的 Primary Zone 个数相同。不显式指定时，系统按照 `locality` 的 `zone_list` 将 Leader 随机分布在这些 Zone 中。     填写样例: `primary_zone='z1'` - `concurrency`：可选，指定数据恢复的并发度。如果不显式指定，则默认等于该租户被分配的 MAX_CPU 数。例如，假设系统租户为待恢复的租户分配的 `MAX_CPU` 为 16，则 `concurrency` 的值为 16。     填写样例: `concurrency=50` - `kms_encrypt`：可选，为 `true` 时表示在恢复时需要使用在恢复前指定的 `kms_encrypt_info`。 - `method`：可选，指定数据恢复的方式，不区分大小写，取值如下：      - `full`：指全量恢复，不显式指定时，默认为 `full`。     - `quick`：快速恢复。     填写样例: `method=quick` |
| WITH KEY FROM 'backup_key_path' ENCRYPTED BY 'password' | 指定加密租户的秘钥备份信息。仅当源租户配置了透明加密，才需要在恢复时指定秘钥备份相关的信息。其中：   - `backup_key_path`：秘钥的备份路径。 - `password`：备份秘钥时设置的加密密码。 |
| description | 用户指定的描述信息，为可选项。 |

## 示例

- 从 NFS 数据备份路径与 NFS 日志归档路径恢复租户 `mysql` 到指定时间戳 `2022-06-01 00:00:00`, 指定资源池为 `restore_pool`, 副本 Locality 为 `F@z1,F@z2,F@z3`, 并指定 `primary_zone` 为 `z1`，以全量恢复方式进行恢复。

  ```shell
  obclient [oceanbase]> ALTER SYSTEM RESTORE mysql FROM 'file:///data/nfs/backup/data,file:///data/nfs/backup/archive' UNTIL TIME='2022-06-01 00:00:00' WITH 'pool_list=restore_pool&locality=F@z1,F@z2,F@z3&primary_zone=z1';

  ```
 - 从 NFS 数据备份路径与 NFS 日志归档路径恢复租户 `mysql` 到当前最新的归档位点, 指定资源池为 `restore_pool`，同时指定数据恢复的并发度 `concurrency` 为 50，以全量恢复方式进行恢复。

  ```shell
  obclient [oceanbase]> ALTER SYSTEM RESTORE mysql FROM 'file:///data/nfs/backup/data,file:///data/nfs/backup/archive' WITH 'pool_list=restore_pool&concurrency=50';

  ```
 - 从 NFS 数据备份路径与 NFS 日志归档路径恢复租户 `mysql` 到指定 SCN, 指定资源池为 `restore_pool`，以快速恢复方式进行恢复。

  ```shell
  obclient [oceanbase]> ALTER SYSTEM RESTORE mysql FROM 'file:///data/nfs/backup/data,file:///data/nfs/backup/archive' UNTIL SCN=1658285759724047000 WITH 'pool_list=restore_pool&method=quick';

  ```
 - 从 OSS 备份路径与 OSS 日志归档路径恢复租户 `mysql` 到指定时间戳 `2022-06-01 00:00:00`, 指定资源池为 `restore_pool`，以全量恢复方式进行恢复。

  ```shell
  obclient [oceanbase]> ALTER SYSTEM RESTORE mysql FROM 'oss://oceanbase-test-bucket/backup/data/?host=***.aliyun-inc.com&access_id=***&access_key=***,oss://oceanbase-test-bucket/backup/archive/?host=***.aliyun-inc.com&access_id=***&access_key=***' UNTIL TIME='2022-06-01 00:00:00' WITH 'pool_list=restore_pool';

  ```
 - 从 S3 备份路径与 S3 日志归档路径恢复租户 `mysql` 到指定时间戳 `2024-01-15 00:00:00`, 指定资源池为 `restore_pool`。

  ```shell
  obclient [oceanbase]> ALTER SYSTEM RESTORE mysql FROM 's3://oceanbase-test-bucket/backup/data?host=s3.<region>.amazonaws.com&access_id=***&access_key=***&s3_region=***, s3://oceanbase-test-bucket/backup/archive?host=s3.<region>.amazonaws.com&access_id=***&access_key=***&s3_region=***' UNTIL TIME='2024-01-15 00:00:00' WITH 'pool_list=restore_pool';

  ```

     - `s3_region` 表示 S3 的存储桶所在的地域。
 - 从 OBS 备份路径与日志归档路径恢复租户 `mysql` 到指定时间戳 `2023-06-01 00:00:00`，指定资源池为 `restore_pool`，以全量恢复方式进行恢复。

  ```shell
   obclient> ALTER SYSTEM RESTORE mysql FROM 's3://oceanbase-test-bucket/backup/data/?host=obs.***.myhuaweicloud.com&access_id=***&access_key=***,s3://oceanbase-test-bucket/backup/archive/?host=obs.***.myhuaweicloud.com&access_id=***&access_key=***' UNTIL TIME='2023-06-01 00:00:00' WITH 'pool_list=restore_pool';

  ```
 - 从 GCS 备份路径与日志归档路径恢复租户 `mysql` 到指定时间戳 `2023-06-01 00:00:00`，指定资源池为 `restore_pool`，以全量恢复方式进行恢复。

  ```shell
  obclient> ALTER SYSTEM RESTORE mysql FROM 's3://oceanbase-test-bucket/backup/data/?host=https://storage.googleapis.com&access_id=***&access_key=***,s3://oceanbase-test-bucket/backup/archive/?host=https://storage.googleapis.com&access_id=***&access_key=***' UNTIL TIME='2023-06-01 00:00:00' WITH 'pool_list=restore_pool';

  ```
 - 从 COS 备份路径与日志归档路径恢复租户 `mysql` 到指定时间戳 `2023-06-01 00:00:00`，指定资源池为 `restore_pool`，以全量恢复方式进行恢复。

  ```shell
  obclient> ALTER SYSTEM RESTORE mysql FROM 's3://oceanbase-test/backup/data?host=cos.ap-***x.myqcloud.com&access_id=***&access_key=***,s3://oceanbase-test/backup/archive?host=cos.ap-***x.myqcloud.com&access_id=***&access_key=***' UNTIL TIME='2023-06-01 00:00:00' WITH 'pool_list=restore_pool';

  ```

## 相关文档

- [CANCEL RESTORE](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005686250)
 - [RECOVER TABLE](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005686246)
 - [执行物理恢复](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005682394)
 - [使用备份恢复功能创建备租户](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005682872)

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
