【跟我学oracle18c】第二十一天:Unplugging、Plugging PDB专项实践

版权声明:所有文章禁止转载但是均可在生产中使用提高效率 https://blog.csdn.net/viviliving/article/details/84522235

现在回头在理解了pdbs的概念后,亲手实践一下可插拔的乐趣。

一、Unplugging

分别以xml形式和pdb形式,然后对比一下区别

SQL> ALTER PLUGGABLE DATABASE HRPDB UNPLUG INTO 'F:\oracle\product\18c\oradata\HRPDB.xml';
Done
SQL> ALTER PLUGGABLE DATABASE HRPDB1 UNPLUG INTO 'F:\oracle\product\18c\oradata\HRPDB1.pdb';
Done

查询一下拔掉后的区别
SQL> select PDB_NAME,status from dba_pdbs;
PDB_NAME                                                                         STATUS
-------------------------------------------------------------------------------- ----------
ORCLPDB                                                                          NORMAL
PDB$SEED                                                                         NORMAL
HRPDB                                                                            UNPLUGGED
HRPDB1                                                                           UNPLUGGED
SAAS_SALES_AC                                                                    NORMAL
APP01                                                                            NORMAL
APP02                                                                            NORMAL
AMER_PDB                                                                         NORMAL
EURO_PDB                                                                         NORMAL
ASIA_PDB                                                                         NORMAL
F3539781966_3_1                                                                  NORMAL
F3539781966_3_2                                                                  NORMAL
F3539781966_3_3                                                                  NORMAL
13 rows selected

看一下生成的文件大小:很明显xml是没内容的,仅仅是一些文件的位置信息,不含具体数据文件内容,而pdb文件应该是最全的

可以独立移植,估计大多数我们选这个省事很多,xml还有一堆Plugging时的选项,而且涉及源数据文件与目标数据文件之间的copy,move,no copy,reuse的问题,而且删除的时候肯定要保持原数据文件

SQL> DROP PLUGGABLE DATABASE HRPDB  KEEP DATAFILES;
Done

否则,你就别Plugging了

xml的文件内容大致如下:

<?xml version="1.0" encoding="UTF-8"?>
<PDB>
  <xmlversion>1</xmlversion>
  <pdbname>HRPDB</pdbname>
  <cid>4</cid>
  <byteorder>1</byteorder>
  <vsn>301989888</vsn>
  <vsns>
    <vsnnum>18.0.0.0.0</vsnnum>
    <cdbcompt>18.0.0.0.0</cdbcompt>
    <pdbcompt>18.0.0.0.0</pdbcompt>
    <vsnlibnum>0.0.0.0.24</vsnlibnum>
    <vsnsql>24</vsnsql>
    <vsnbsv>8.0.0.0.0</vsnbsv>
  </vsns>
  <dbid>1805686643</dbid>
  <ncdb2pdb>0</ncdb2pdb>
  <cdbid>1662751509</cdbid>
  <guid>0CD21993C4BD4DA28CB9388E48FF3790</guid>
  <uscnbas>4434749</uscnbas>
  <uscnwrp>0</uscnwrp>
  <undoscn>272</undoscn>
  <rdba>4194824</rdba>
  <tablespace>
    <name>SYSTEM</name>
    <type>0</type>
    <tsn>0</tsn>
    <status>1</status>
    <issft>0</issft>
    <isnft>0</isnft>
    <encts>0</encts>
    <flags>0</flags>
    <bmunitsize>8</bmunitsize>
    <file>
      <path>F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\0CD21993C4BD4DA28CB9388E48FF3790\DATAFILE\O1_MF_SYSTEM_FYQLVPGY_.DBF</path>
      <afn>13</afn>
      <rfn>1</rfn>
      <createscnbas>2458284</createscnbas>
      <createscnwrp>0</createscnwrp>
      <status>1</status>
      <fileblocks>32000</fileblocks>
      <blocksize>8192</blocksize>
      <vsn>301989888</vsn>
      <fdbid>1805686643</fdbid>
      <fcpsb>4434743</fcpsb>
      <fcpsw>0</fcpsw>
      <frlsb>1423580</frlsb>
      <frlsw>0</frlsw>
      <frlt>991495644</frlt>
      <autoext>1</autoext>
      <maxsize>4194302</maxsize>
      <incsize>1280</incsize>
      <plugscn>0</plugscn>
      <plugafn>0</plugafn>
      <plugdbid>0</plugdbid>
    </file>
  </tablespace>
  <tablespace>
    <name>SYSAUX</name>
    <type>0</type>
    <tsn>1</tsn>
    <status>1</status>
    <issft>0</issft>
    <isnft>0</isnft>
    <encts>0</encts>
    <flags>0</flags>
    <bmunitsize>8</bmunitsize>
    <file>
      <path>F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\0CD21993C4BD4DA28CB9388E48FF3790\DATAFILE\O1_MF_SYSAUX_FYQLVPKZ_.DBF</path>
      <afn>14</afn>
      <rfn>4</rfn>
      <createscnbas>2458287</createscnbas>
      <createscnwrp>0</createscnwrp>
      <status>1</status>
      <fileblocks>48640</fileblocks>
      <blocksize>8192</blocksize>
      <vsn>301989888</vsn>
      <fdbid>1805686643</fdbid>
      <fcpsb>4434743</fcpsb>
      <fcpsw>0</fcpsw>
      <frlsb>1423580</frlsb>
      <frlsw>0</frlsw>
      <frlt>991495644</frlt>
      <autoext>1</autoext>
      <maxsize>4194302</maxsize>
      <incsize>1280</incsize>
      <plugscn>0</plugscn>
      <plugafn>0</plugafn>
      <plugdbid>0</plugdbid>
    </file>
  </tablespace>
  <tablespace>
    <name>UNDOTBS1</name>
    <type>2</type>
    <tsn>2</tsn>
    <status>1</status>
    <issft>0</issft>
    <isnft>0</isnft>
    <encts>0</encts>
    <flags>0</flags>
    <bmunitsize>8</bmunitsize>
    <file>
      <path>F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\0CD21993C4BD4DA28CB9388E48FF3790\DATAFILE\O1_MF_UNDOTBS1_FYQLVPL1_.DBF</path>
      <afn>15</afn>
      <rfn>9</rfn>
      <createscnbas>2458289</createscnbas>
      <createscnwrp>0</createscnwrp>
      <status>1</status>
      <fileblocks>12800</fileblocks>
      <blocksize>8192</blocksize>
      <vsn>301989888</vsn>
      <fdbid>1805686643</fdbid>
      <fcpsb>4434743</fcpsb>
      <fcpsw>0</fcpsw>
      <frlsb>1423580</frlsb>
      <frlsw>0</frlsw>
      <frlt>991495644</frlt>
      <autoext>1</autoext>
      <maxsize>4194302</maxsize>
      <incsize>640</incsize>
      <plugscn>0</plugscn>
      <plugafn>0</plugafn>
      <plugdbid>0</plugdbid>
    </file>
  </tablespace>
  <tablespace>
    <name>TEMP</name>
    <type>1</type>
    <tsn>3</tsn>
    <status>1</status>
    <issft>0</issft>
    <isnft>0</isnft>
    <encts>0</encts>
    <flags>0</flags>
    <bmunitsize>128</bmunitsize>
    <file>
      <path>F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\0CD21993C4BD4DA28CB9388E48FF3790\DATAFILE\O1_MF_TEMP_FYQLVPL4_.DBF</path>
      <afn>4</afn>
      <rfn>1</rfn>
      <createscnbas>2458285</createscnbas>
      <createscnwrp>0</createscnwrp>
      <status>1</status>
      <fileblocks>7936</fileblocks>
      <blocksize>8192</blocksize>
      <vsn>301989888</vsn>
      <autoext>1</autoext>
      <maxsize>4194302</maxsize>
      <incsize>80</incsize>
      <plugscn>0</plugscn>
      <plugafn>0</plugafn>
      <plugdbid>0</plugdbid>
    </file>
  </tablespace>
  <recover>0</recover>
  <optional>
    <ncdb2pdb>0</ncdb2pdb>
    <csid>873</csid>
    <ncsid>2000</ncsid>
    <options>
      <option>APS=18.0.0.0.0</option>
      <option>CATALOG=18.0.0.0.0</option>
      <option>CATJAVA=18.0.0.0.0</option>
      <option>CATPROC=18.0.0.0.0</option>
      <option>CONTEXT=18.0.0.0.0</option>
      <option>DV=18.0.0.0.0</option>
      <option>JAVAVM=18.0.0.0.0</option>
      <option>OLS=18.0.0.0.0</option>
      <option>ORDIM=18.0.0.0.0</option>
      <option>OWM=18.0.0.0.0</option>
      <option>SDO=18.0.0.0.0</option>
      <option>XDB=18.0.0.0.0</option>
      <option>XML=18.0.0.0.0</option>
      <option>XOQ=18.0.0.0.0</option>
    </options>
    <olsoid>0</olsoid>
    <dv>0</dv>
    <APEX>NULL</APEX>
    <parameters>
      <parameter>processes=320</parameter>
      <parameter>nls_language='SIMPLIFIED CHINESE'</parameter>
      <parameter>nls_territory='CHINA'</parameter>
      <parameter>db_block_size=8192</parameter>
      <parameter>compatible='18.0.0'</parameter>
      <parameter>open_cursors=300</parameter>
      <parameter>pga_aggregate_target=849346560</parameter>
      <parameter>enable_pluggable_database=TRUE</parameter>
    </parameters>
    <sqlpatches/>
    <tzvers>
      <tzver>primary version:31</tzver>
      <tzver>secondary version:0</tzver>
    </tzvers>
    <walletkey>0</walletkey>
    <services/>
    <opatches>
      <opatch>27908644</opatch>
      <opatch>27783303</opatch>
    </opatches>
    <hasclob>1</hasclob>
    <awr>
      <loadprofile>CPU used by this session=14.959821</loadprofile>
      <loadprofile>DB time=22.830357</loadprofile>
      <loadprofile>db block changes=170.405398</loadprofile>
      <loadprofile>execute count=81.049355</loadprofile>
      <loadprofile>logons cumulative=0.377976</loadprofile>
      <loadprofile>parse count (hard)=4.045387</loadprofile>
      <loadprofile>parse count (total)=41.252232</loadprofile>
      <loadprofile>physical reads=46.288636</loadprofile>
      <loadprofile>physical writes=13.455981</loadprofile>
      <loadprofile>redo size=30711.539286</loadprofile>
      <loadprofile>session logical reads=820.013641</loadprofile>
      <loadprofile>user calls=2.298859</loadprofile>
      <loadprofile>user commits=1.352841</loadprofile>
      <loadprofile>user rollbacks=0.013515</loadprofile>
    </awr>
    <hardvsnchk>0</hardvsnchk>
    <localundo>1</localundo>
    <apps/>
    <dbedition>8</dbedition>
  </optional>
</PDB>

二、Plugging

其实这部分列子全是关于xml形式的那些copy,move,no copy,reuse的

1、Example 9-3 Plugging In an Unplugged PDB Using the NOCOPY Clause

这个是一个同一台电脑上的再次插上pdb的恢复,数据文件,tempfile等全是原文件,不复制,也不移动,原封不动再挂接到新的cdb上(我挂的是老的cdb,没试新cdb的情况,大家有尝试的可以发个评论,留下你的url)
 

SQL> DROP PLUGGABLE DATABASE HRPDB  KEEP DATAFILES;
Done

SQL> 
SQL> CREATE PLUGGABLE DATABASE HRPDB USING 'F:\oracle\product\18c\oradata\HRPDB.xml'
  2    NOCOPY
  3    TEMPFILE REUSE
  4  ;
Done

SQL> select PDB_NAME,status from dba_pdbs;
PDB_NAME                                                                         STATUS
-------------------------------------------------------------------------------- ----------
ORCLPDB                                                                          NORMAL
PDB$SEED                                                                         NORMAL
HRPDB1                                                                           UNPLUGGED
SAAS_SALES_AC                                                                    NORMAL
APP01                                                                            NORMAL
APP02                                                                            NORMAL
AMER_PDB                                                                         NORMAL
EURO_PDB                                                                         NORMAL
ASIA_PDB                                                                         NORMAL
HRPDB                                                                            NEW
F3539781966_3_1                                                                  NORMAL
F3539781966_3_2                                                                  NORMAL
F3539781966_3_3                                                                  NORMAL
13 rows selected

然后测试一下可用性

SQL> alter session set container=HRPDB;
Session altered
SQL> alter pluggable database HRPDB open read write;
Done
SQL> select * from test;
         A          B
---------- ----------

SQL> select * from containers(test);
         A          B     CON_ID
---------- ---------- ----------

SQL>

2、Example 9-4 Plugging In an Unplugged PDB Using the AS CLONE and NOCOPY Clauses

没看出来与9-3的区别,文档中提了AS CLONE子句确保新的PDB具有惟一标识符。

xml中原库

  <dbid>1805686643</dbid>
  <ncdb2pdb>0</ncdb2pdb>
  <cdbid>1662751509</cdbid>
  <guid>0CD21993C4BD4DA28CB9388E48FF3790</guid>

新插入的pdb看了下,确实变了

SQL> select * from dba_pdbs where PDB_NAME='HRPDB';
    PDB_ID PDB_NAME         DBID    CON_UID GUID                             STATUS   
---------- ---------- ---------- ---------- -------------------------------- ---------
         4 HRPDB      1232129194 1232129194 65F69522978B4ADBAAA2549012C881B5 NEW      

 

SQL> ALTER PLUGGABLE DATABASE HRPDB UNPLUG INTO 'F:\oracle\product\18c\oradata\HRPDB.xml';
Done

SQL> DROP PLUGGABLE DATABASE HRPDB  KEEP DATAFILES;
Done

SQL> 
SQL> CREATE PLUGGABLE DATABASE HRPDB AS CLONE USING 'F:\oracle\product\18c\oradata\HRPDB.xml'
  2    NOCOPY
  3    TEMPFILE REUSE;
Done

SQL> select PDB_NAME,status from dba_pdbs;
PDB_NAME                                                                         STATUS
-------------------------------------------------------------------------------- ----------
ORCLPDB                                                                          NORMAL
PDB$SEED                                                                         NORMAL
HRPDB                                                                            NEW
HRPDB1                                                                           UNPLUGGED
SAAS_SALES_AC                                                                    NORMAL
APP01                                                                            NORMAL
APP02                                                                            NORMAL
AMER_PDB                                                                         NORMAL
EURO_PDB                                                                         NORMAL
ASIA_PDB                                                                         NORMAL
F3539781966_3_1                                                                  NORMAL
F3539781966_3_2                                                                  NORMAL
F3539781966_3_3                                                                  NORMAL
13 rows selected

我发现这个恢复有个不影响使用的问题,那就是文件采用oracle管理生成的目录名采用的guid方式,这样这个例子里guid换了新的,但是目录名还是老的guid值,注意

3、Example 9-5 Plugging In an Unplugged PDB Using the SOURCE_FILE_NAME_CONVERT, NOCOPY, and STORAGE Clauses

换了个文件位置而已,模拟如下,发现文件的变化,老的F:\oracle\product\18c\oradata\TEST18C\0CD21993C4BD4DA28CB9388E48FF3790目录下没了个temp的文件

mkdir F:\oracle\product\18c\oradata\TEST18C\hrpdb

xcopy F:\oracle\product\18c\oradata\TEST18C\0CD21993C4BD4DA28CB9388E48FF3790 F:\oracle\product\18c\oradata\TEST18C\hrpdb

SQL> ALTER PLUGGABLE DATABASE HRPDB UNPLUG INTO 'F:\oracle\product\18c\oradata\HRPDB1.xml';
Done

SQL> DROP PLUGGABLE DATABASE HRPDB  KEEP DATAFILES;
Done

SQL> 
SQL> CREATE PLUGGABLE DATABASE salespdb USING 'F:\oracle\product\18c\oradata\HRPDB1.xml'
  2    SOURCE_FILE_NAME_CONVERT = ('F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\0CD21993C4BD4DA28CB9388E48FF3790\', 'F:\oracle\product\18c\oradata\TEST18C\hrpdb\')
  3    NOCOPY
  4    STORAGE (MAXSIZE 2G)
  5    TEMPFILE REUSE;
Done

4、Example 9-6 Plugging In an Unplugged PDB With the COPY, PATH_PREFIX, and FILE_NAME_CONVERT Clauses

创建目录即可,文件通过插入命令自动copy,看似方便了,但是采用omf管理的话,所有的文件名都得重命名,否则提示ORA-01276: 无法添加文件 错误

mkdir F:\oracle\product\18c\oradata\TEST18C\hrpdbcopy

SQL> ALTER PLUGGABLE DATABASE hrpdb UNPLUG INTO 'F:\oracle\product\18c\oradata\hrpdb4.xml';
Done
SQL> DROP PLUGGABLE DATABASE hrpdb  keep DATAFILES;
Done

SQL> CREATE PLUGGABLE DATABASE HRPDB USING 'F:\oracle\product\18c\oradata\HRPDB2.xml'
  2    COPY
  3    PATH_PREFIX = 'F:\oracle\product\18c\oradata\TEST18C\hrpdbcopy\'
  4    FILE_NAME_CONVERT = ('F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\HRPDB\', 'F:\oracle\product\18c\oradata\TEST18C\hrpdbcopy\');
CREATE PLUGGABLE DATABASE HRPDB USING 'F:\oracle\product\18c\oradata\HRPDB2.xml'
  COPY
  PATH_PREFIX = 'F:\oracle\product\18c\oradata\TEST18C\hrpdbcopy\'
  FILE_NAME_CONVERT = ('F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\HRPDB\', 'F:\oracle\product\18c\oradata\TEST18C\hrpdbcopy\')
ORA-01276: 无法添加文件 F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\HRPDBCOPY\DATAFILE\O1_MF_SYSTEM_FYQLVPGY_.DBF。相应文件具有一个 Oracle Managed Files 文件名。


SQL> 
SQL> CREATE PLUGGABLE DATABASE HRPDB   USING 'F:\oracle\product\18c\oradata\hrpdb4.xml'
  2    COPY
  3    PATH_PREFIX = 'F:\oracle\product\18c\oradata\TEST18C\hrpdbcopy\'
  4    FILE_NAME_CONVERT = ('F:\oracle\product\18c\oradata\TEST18C\AA6A59AFABF046228ACC5EBD0FB966E4\DATAFILE\O1_MF_SYSAUX_FZPWCPTZ_.DBF',
  5  'F:\oracle\product\18c\oradata\TEST18C\hrpdbcopy\DATAFILE\HRPDB_SYSAUX.DBF',
  6  'F:\oracle\product\18c\oradata\TEST18C\AA6A59AFABF046228ACC5EBD0FB966E4\DATAFILE\O1_MF_SYSTEM_FZPWCPSX_.DBF',
  7  'F:\oracle\product\18c\oradata\TEST18C\hrpdbcopy\DATAFILE\HRPDB_SYSTEM.DBF',
  8  'F:\oracle\product\18c\oradata\TEST18C\AA6A59AFABF046228ACC5EBD0FB966E4\DATAFILE\O1_MF_UNDOTBS1_FZPWCPV3_.DBF',
  9  'F:\oracle\product\18c\oradata\TEST18C\hrpdbcopy\DATAFILE\HRPDB_UNDOTBS1.DBF',
 10  'F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\AA6A59AFABF046228ACC5EBD0FB966E4\DATAFILE\O1_MF_USERS_FZPWCPV9_.DBF',
 11  'F:\oracle\product\18c\oradata\TEST18C\hrpdbcopy\DATAFILE\HRPDB_users.DBF',
 12  'F:\oracle\product\18c\oradata\TEST18C\AA6A59AFABF046228ACC5EBD0FB966E4\DATAFILE\O1_MF_TEMP_FZPWCPV6_.DBF',
 13  'F:\oracle\product\18c\oradata\TEST18C\hrpdbcopy\DATAFILE\HRPDB_TEMP.DBF'
 14  )
 15  ;
Done

为了折腾这个遇到了好几个ora-xxxxxx

ORA-65011: 插接式数据库 HRPDB 不存在。(这个好理解)

ORA-65026: XML 元数据文件错误: LPX-00202: could not open "/disk1/usr/salespdb.xml" (error 200)(这个好理解)

ORA-01276: 无法添加文件 F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\HRPDBCOPY\DATAFILE\O1_MF_SYSTEM_FYQLVPGY_.DBF。相应文件具有一个 Oracle Managed Files 文件名。(全部列举出来改文件名)


ORA-19505: 无法识别文件"F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\HRPDBCOPY\DATAFILE\O1_MF_SYSTEM_FYQLVPGY_.DBF"

(找找文件位置信息)

ORA-65012: 插接式数据库 HRPDB1 已存在。

ORA-65036: 插接式数据库 HRPDB1 未在所需模式下打开

ALTER PLUGGABLE DATABASE hrpdb UNPLUG INTO 'F:\oracle\product\18c\oradata\hrpdb.xml'
ORA-65170: XML 文件 F:\oracle\product\18c\oradata\hrpdb.xml 已存在(改名)

ORA-65122: 插接式数据库 GUID 与现有容器的 GUID 冲突。(加as clone或者删旧的

ORA-65005: 文件缺少文件名模式或其文件名模式无效 - F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\AA6A59AFABF046228ACC5EBD0FB966E4\DATAFILE\O1_MF_TEMP_FZPWCPV6_.DBF
 DROP PLUGGABLE DATABASE hrpdb keep DATAFILES;而temp就已经不存在了,因此感觉没有插入目标库成功之前,不要drop keep原库的操作,否则遇到这个错误,没法恢复了,我尝试使用seed中的temp也不能替代

ORA-65169: 尝试复制文件 F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\AA6A59AFABF046228ACC5EBD0FB966E4\DATAFILE\O1_MF_USERS_FZPWCPV9_.DBF 时出错
ORA-19504: 无法创建文件"F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\HRPDBCOPY\DATAFILE\HRPDB_USERS.DBF"
ORA-27038: 所创建的文件已存在

删除

ORA-65169: 尝试复制文件 F:\oracle\product\18c\oradata\O1_MF_UNDOTBS1_FYQLXQYS_.DBF 时出错
ORA-19504: 无法创建文件"F:\oracle\product\18c\oradata\O1_MF_UNDOTBS1_FYQLXQYS_.DBF005DC332AC6C\DATAFILE\O1_MF_UNDOTBS1_FZQDTWP9_.DBF"
ORA-27044: 无法写入文件的标头块
OSD-04008: WriteFile() ??? ???д????
O/S-Error: (OS 112) ????????

硬盘空间满了,做个实验容易么

5、Example 9-8 Plugging In an Unplugged PDB Using the SOURCE_FILE_DIRECTORY, MOVE, FILE_NAME_CONVERT, and STORAGE Clauses

mkdir F:\oracle\product\18c\oradata\TEST18C\hrpdbmove

SQL> ALTER PLUGGABLE DATABASE hrpdb UNPLUG INTO 'F:\oracle\product\18c\oradata\hrpdb5.xml';
Done

--把老的pdb的文件copy到一个新位置
xcopy F:\oracle\product\18c\oradata\TEST18C\HRPDBMOVE F:\oracle\product\18c\oradata\TEST18C\OLD


--删除老的pdb,包括数据文件
SQL> DROP PLUGGABLE DATABASE hrpdb including DATAFILES;
Done


--move使用新位置的数据文件即可
SQL> 
SQL> CREATE PLUGGABLE DATABASE hrpdb  USING 'F:\oracle\product\18c\oradata\hrpdb2.xml'
  2    SOURCE_FILE_DIRECTORY = 'F:\oracle\product\18c\oradata\TEST18C\OLD'
  3    MOVE
  4    FILE_NAME_CONVERT = ('F:\oracle\product\18c\oradata\TEST18C\OLD', 'F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\HRPDBMOVE1\')
  5    STORAGE (MAXSIZE 2G);
Done


Done

必须使用新位置啊,否则下面这个错就堵住了,反正老位置是我怎么尝试都不行

SQL> CREATE PLUGGABLE DATABASE hrpdb2  USING 'F:\oracle\product\18c\oradata\hrpdb.xml'
  2    SOURCE_FILE_DIRECTORY = 'F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\HRPDBMOVE\'
  3    MOVE
  4    FILE_NAME_CONVERT = ('F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\HRPDBMOVE\', 'F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\HRPDBMOVE1\')
  5    STORAGE (MAXSIZE 2G);
CREATE PLUGGABLE DATABASE hrpdb2  USING 'F:\oracle\product\18c\oradata\hrpdb.xml'
  SOURCE_FILE_DIRECTORY = 'F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\HRPDBMOVE\'
  MOVE
  FILE_NAME_CONVERT = ('F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\HRPDBMOVE\', 'F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\HRPDBMOVE1\')
  STORAGE (MAXSIZE 2G)
ORA-65158: 找不到 F:\ORACLE\PRODUCT\18C\ORADATA\TEST18C\HRPDBMOVE\DATAFILE\HRPDB_SYSTEM.DBF 的匹配文件

6、Example 9-9 Plugging In an Unplugged PDB Using an Archive File

这个简单,简洁,大家就用这个吧

SQL> DROP PLUGGABLE DATABASE HRPDB1  INCLUDING DATAFILES;
Done

SQL> 
SQL> CREATE PLUGGABLE DATABASE HRPDB1 USING 'F:\oracle\product\18c\oradata\HRPDB1.pdb'
  2    STORAGE (MAXSIZE 2G);
Done

猜你喜欢

转载自blog.csdn.net/viviliving/article/details/84522235