Oracle 如何在18c中克隆快照转盘的PDB

Oracle 如何在18c中克隆快照转盘的PDB,oracle,multi-tenant,snapshot,dataguard,oracle18c,Oracle,Multi Tenant,Snapshot,Dataguard,Oracle18c,朋友们 我有一个带有数据保护配置的Oracle Database 18c: DGMGRL> show configuration; Configuration - CDB_DG Protection Mode: MaxPerformance Members: cdb1p - Primary database cdb2p - Physical standby database Fast-Start Failover: DISABLED Configuration St

朋友们

我有一个带有数据保护配置的Oracle Database 18c:

DGMGRL> show configuration;

Configuration - CDB_DG

  Protection Mode: MaxPerformance
  Members:
  cdb1p - Primary database
  cdb2p - Physical standby database

Fast-Start Failover: DISABLED

Configuration Status:
SUCCESS   (status updated 55 seconds ago)

SQL> select banner from v$version;

BANNER
---------------------------------------------------------------------------
Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production

SQL> SELECT PROPERTY_NAME, PROPERTY_VALUE FROM DATABASE_PROPERTIES WHERE  PROPERTY_NAME = 'LOCAL_UNDO_ENABLED';

PROPERTY_NAME             PROPERTY_V
------------------------- ----------
LOCAL_UNDO_ENABLED        TRUE
这是一个有一个PDB的CDB。 我的操作系统是Redhat7

当我尝试从PDB创建快照数据库时,出现以下错误:

SQL> alter pluggable database snapshot PDBSNAP;
alter pluggable database snapshot PDBSNAP
*
ERROR at line 1:
ORA-00604: error occurred at recursive SQL level 1
ORA-65169: error encountered while attempting to copy file +ASM_CDB_DATA/CDB1P/7533D1D42D885BD1E053465A130A97EE/DATAFILE/undotbs1.271.986139369
ORA-17517: Database cloning using storage snapshot failed on file 8:+ASM_CDB_DATA/CDB1P/7533D1D42D885BD1E053465A130A97EE/DATAFILE/undotbs1.271.986139369
我阅读了有关参数CLONEDB(=TRUE)的信息以及有关
asmadmin:x:1308:grid、oracle的权限的信息
在/etc/group文件中

不幸的是,这对我没有帮助。。 朋友们,也许有人解决了这个问题

也许,这都是关于快照克隆限制的,但我不确定:

Supported platforms
– Sun ZFS Storage Appliance (ZFSSA)
– Oracle ASM Cluster File System (ACFS)
– NetApp ™
第1行错误: ORA-00604:递归SQL级别1发生错误 ORA-65169:尝试复制文件时遇到错误 +数据/ORCL_IAD1T9/87BD77B686294076E0530200000A3FB4/DATAFILE/undotbs1.282.1006941 741 ORA-17517:在文件上使用存储快照克隆数据库失败 8:+DATA/ORCL_IAD1T9/87bd77b686294076e05300000a3fb4/DATAFILE/undotbs1.282.10069 41741


对于上述问题,我得到了解决方案

我的解决方案有助于我的is pdb快照克隆,只有在ACFS或DNFS和其他存储上的pdb可用时才能创建。但我不应该在ASM存储上。只有当ACFS位于ASM存储之上时,它才会工作

创建ACFS后,将db_create_file_dest更改为新的ACFS装载点,然后使用file alter pluggable database snapshot命令获取快照

有关更多信息,请遵循以下公共URL


谢谢。

用户11051512给出的答案也对我有用。我将试图澄清,因为这是一个有点难以理解的书面:

快照仅在某些文件系统(如ACFS)上工作,而不直接在ASM中工作。因此,要在基于ASM的设置中使用快照功能,需要创建数据库文件所在的ACFS文件系统。ACFS文件系统使用ASM作为其备份存储

  • 在asm中创建卷(使用asmcmd):
    volcreate-G data-s 50G volume1
  • 创建装入点:
    mkdir/acfs
  • 在asm设备上创建一个acfs文件系统:
    mkfs.acfs/dev/asm/volume whatver
  • 装载设备:
    Mount.acfs/dev/asm/volume whatver/acfs
  • 制作一个控制器并将其交给oracle/数据库用户:
    mkdir/acfs/data&&chown..
    etc
  • 在您的CDB中(您需要使用“-useOMF false”创建它):
    alter system set db\u create\u file\u dest='/acfs/data';
  • 创建可插拔数据库:
    创建由master标识的可插拔数据库master admin用户master;
  • 查看数据文件:
    从v$datafile中选择名称;
  • 将新的pdb更改为读写,以便注册。然后再次关闭它,并以只读方式打开
  • 现在,我们终于可以进行快照复制了:
  • SQL> create pluggable database test1 from master snapshot copy;
    
    Pluggable database created.
    
    SQL> show pdbs
    
        CON_ID CON_NAME                       OPEN MODE  RESTRICTED
    ---------- ------------------------------ ---------- ----------
             2 PDB$SEED                       READ ONLY  NO
             3 MASTER                         READ ONLY  NO
             4 TEST1                          MOUNTED
    SQL>