使用 Oracle Data Pump 导入信息

您可以将数据从数据泵文件导入云数据库。

注意:

开始之前,必须具有导出作业。要使用 cURL 创建导出作业,请参阅创建导出数据泵作业

使用 Oracle Data Pump Import,可以将导出转储文件集加载到目标数据库中,或者直接从没有干预文件的源数据库加载目标数据库。

有关数据泵导入的更多信息,请参阅 Oracle Database Utilities 中的 Data Pump Import

主题:

要求

您需要设置资源参与或云服务身份证明才能访问 Oracle Cloud Infrastructure 存储对象。

设置资源主用户

  1. 在 Database Actions 中以 ADMIN 用户身份登录,并为 Autonomous Database 启用资源主用户。

    在 SQL 工作表页面中,输入:

    EXEC DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL();

    可选:仅当您要向数据库用户(而非 ADMIN 用户)授予对资源主用户身份证明的访问权限时,才需要执行以下步骤。以 ADMIN 用户身份,使用以下语句为指定的数据库用户启用资源主用户:

    EXEC DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL(username => 'adb_user');

    这将授予用户 adb_user 对身份证明 OCI$RESOURCE_PRINCIPAL 的访问权限。如果希望指定用户具有为其他用户启用资源主体的特权,请将 grant_option 参数设置为 TRUE

    BEGIN
    DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL(
    username => 'adb_user',
    grant_option => TRUE);
    END;

    有关详细信息,请参阅 Oracle Cloud Using Oracle Autonomous Database Serverless 中的 Using Resource Principal

  2. 获取 resource.id。

    在 Oracle Cloud Infrastructure 控制台中,选择 Oracle Database ,然后选择 Autonomous Databases 。在“数据库”选项卡中,单击操作图标(三个点),然后选择复制 OCID 。这适用于所有区间中的所有数据库实例。

    在控制台中复制 OCID 选项
  3. 创建动态组。

    1. 在 Oracle Cloud Infrastructure 控制台中,单击身份和安全,然后单击动态组

    2. 单击创建动态组并输入所有必需字段。使用以下格式为所有数据库创建匹配规则:

      any { resource.id = 'here goes the OCID of your database 1', 
      resource.id ='here goes the OCID of your database 2' }

      注意:

      要管理动态组,您必须具有以下权限之一:
      • 您是管理员组的成员。
      • 您被授予了身份域管理员角色或安全管理员角色。
      • 您是被授予 manage identity-domainsmanage dynamic-groups 的组的成员。
  4. 创建新策略。

    ObjectStorageReadersPolicy 允许 ObjectStorageReaders 组中的用户从租户中的任何对象存储存储桶下载对象。您还可以将范围缩小到特定区间。该策略包括列出存储桶、列出存储桶中的对象以及读取存储桶中的现有对象的权限。

    1. 在 Oracle Cloud Infrastructure 控制台中,单击 Identity(身份),然后单击 Policies(策略)

    2. 单击创建策略

    3. 对于策略名称,输入 ObjectStorageReadersPolicy

    4. 有关说明,请输入 Allow ObjectStorageReaders group to read objects and buckets

    5. 区间列表中,选择根区间。

    6. 添加以下策略语句,以允许 ObjectStorageReaders 读取存储桶:

      Allow dynamic-group ObjectStorageReaders to read buckets in tenancy
    7. 添加第二个允许 ObjectStorageReaders 读取存储桶中对象的策略语句:

      Allow dynamic-group ObjectStorageReaders to read objects in tenancy
    8. 单击创建

    在 OCI 控制台中创建策略

设置 Cloud Service 身份证明

  1. 在 Oracle Cloud Infrastructure 控制台中,单击身份和安全,然后单击
  2. 在“列表范围”下的区间字段中,从下拉列表中选择根区间,后跟默认域。
  3. 在 "Default" 域中,单击 Users ,然后单击 Create user 。在 "Create user"(创建用户)屏幕中,选择 Administrators(管理员)组可访问存储 DMP 文件的存储桶。
    创建用户屏幕
  4. 创建用户后,在新屏幕左侧的 Resources(资源)下,选择 API 密钥
    选择 API 键
  5. 单击 Add API key(添加 API 键)
    添加 API 密钥
  6. 在 "Add API Key" 屏幕中,单击 Download private key 。下载后,单击添加。此时将显示配置文件预览屏幕。

    配置文件预览

    稍后将使用 userfingerprinttenancy 信息创建用户数据库。

  7. 输入要在其中创建数据库用户的数据库。

    选择数据库
  8. 以下代码块 DBMS_CLOUD.CREATE_CREDENTIAL 用于创建凭证。

    配置文件预览窗口信息用于生成新身份证明。对于 private_key 属性,需要打开 。在步骤 6 中下载的 PEM 文件,使用任何文本编辑器。生成代码块,如下图中所示:

    代码块

导入数据

本节提供了在 Database Actions 中使用 Oracle Data Pump 导入数据的步骤。

  1. 在“数据泵”页面的右上角,单击导入

    此时将显示导入向导。

  2. 在源步骤中:

    存储桶名称源:

    • 存储桶列表:允许您在选择身份证明和所需区间后,基于存储桶列表选择存储桶。

    • 手动搜索:选择有效的身份证明后,必须输入存储桶的确切名称才能列出其文件。

    选择模式后,输入以下字段:

    1. 身份证明名称:选择有效身份证明以访问对象存储存储桶中的信息。

    2. 区间名称:选择租户中任何级别的区间(仅适用于存储桶列表)。
    3. 存储桶名称:从下拉列表中选择包含转储文件的存储桶。选择存储桶会自动预填充“存储桶对象”字段中的关联转储文件。
    4. 存储桶对象:从列表中选择转储文件。
    5. 导入模式:选择转储文件时,系统会自动在“导入模式”字段中输入该文件。如果需要,可以修改模式。匹配的转储文件显示在 "Dump Files"(转储文件)字段中。
    6. 转储文件:选择要导入的转储文件。

    单击下一步

  3. 在“导入”步骤中,输入以下字段:
    • 导入名称:为导入作业输入名称。
    • 导入类型:选择导入类型。选项包括 "Full"、"Tables"、"Schemas" 和 "Tablespaces"。

      注意:

      如果选择全部,则跳过向导中的“筛选器”步骤并直接转到“映射”步骤。
    • 内容:选择仅数据仅 DDL数据和 DDL
    • 云目录名称:选择要导入到的目录。
    • 加密:选择是否加密并输入加密密码。

    单击下一步

  4. 在“筛选”步骤中,根据导入类型,将列出导入作业的所有方案、表或表空间。选择适用的选项。单击下一步
  5. 在“映射”步骤中,选择源方案并为目标方案输入新名称。如果需要,对表空间执行相同的操作。单击下一步
  6. 在“选项”步骤中,输入以下字段:
    • 线程:指定代表导入作业运行的活动执行的最大线程数。默认值为 1。
    • 表上存在的操作:指定导入尝试创建的表已存在时所需的操作。
    • 跳过不可用索引:选择此项指定导入是否跳过加载索引设置为 "Index Unusable" 状态的表。
    • 重新生成对象 ID :选择此项可为导入的数据库对象创建新对象标识。
    • 删除主表:选择此项可指示是否应在成功完成的 Oracle Data Pump 作业结束时删除或保留数据泵控制作业表。
    • 覆盖现有数据文件:选择此项可指示如果目标方案中已存在表,则覆盖该表。
    • 版本:选择要导入的数据库对象的版本。
    • 日志记录:选择此项可创建日志文件。输入日志目录和日志文件名。

    单击下一步

  7. “汇总”步骤显示前面步骤中所做所有选择的汇总。

    选择底部的显示代码可查看与表单等效的 PL/SQL 代码。

    单击导入

    作业执行的开始时间将显示在“数据泵”页上。