adpreclone on PDB

classic Classic list List threaded Threaded
4 messages Options
big
Reply | Threaded
Open this post in threaded view
|

adpreclone on PDB

big
Hi,
on R12.2.9 DB 19c on AIX

I wanted to run adpreclone on PDB.
I did :

cd $ORACLE_HOME

. <PDB_NAME>_hostname.env

cd $ORACLE_HOME/appsutil/scripts/$CONTEXT_NAME

perl adpreclone.pl dbTier

But at the end I had:

This is a CDB instance. Hence not checking duplicate data files.

In autoconfig log:

 Trying to get connection using SID based connect descriptor
getConnection() -->
    sDbHost    : server
    sDbDomain  : domaine.com
    sDbPort    : 1531
    sDbSid     : PDB
    sDbUser    : apps

#############################################################

StageDBTier Finished at Wed Jan 11 18:25:27 CET 2023

Status: Completed Successfully

#############################################################

Any explanation?

Is my preclone on PDB ok?

Thanks.
Reply | Threaded
Open this post in threaded view
|

Re: adpreclone on PDB

ErmanArslansOracleBlog
Administrator
Your method is correct ->

Ref: Cloning Oracle E-Business Suite Release 12.2 with Multitenant Database Using Rapid Clone (Doc ID 2552208.1)

Required Operation:

cd <ORACLE_HOME>
$ source <CONTEXT_NAME>.env
Run the following commands:
$ cd <ORACLE_HOME>/appsutil/scripts/<CONTEXT_NAME>
$ perl adpreclone.pl dbTier

*The message that you see there, is already in the code. It is expected, because that variable we check is already set to TRUE in the script and we don't modify it.. So it is expected..

The control is following (but as I said, it is already set to TRUE)

Ref:

if(uc($pluggable_database) eq "TRUE") {
       print "\nThis is a CDB instance. Hence not checking duplicate data files.\n";
Reply | Threaded
Open this post in threaded view
|

Re: adpreclone on PDB

ErmanArslansOracleBlog
Administrator
If you need the casual reason for that; check the v$datafile from both CDB and PDB instances.. There you will see..

That is the validation is meaningless ; see the following example:

SQL> set head on
SQL> select a.FileName, b.Name
  2  from (
  3    select FileName
  4    from (
  5      select substr(NAME,instr(NAME,'/',-1)+1,length(NAME)) FileName
  6      from v$datafile
  7      order by 1
  8      )
  9    group by FileName
10    having count(FileName) > 1
11    ) a,
12    v$datafile b
13  where b.Name like '%'||a.FileName;

 
FILENAME             NAME
-------------------- --------------------------------------------------
undotbs01.dbf        /u01/dbebs/EBSDEV/data/EBSDEV/undotbs01.dbf
undotbs01.dbf        /u01/dbebs/EBSDEV/data/EBSDEV/pdbseed/undotbs01.dbf
system01.dbf         /u01/dbebs/EBSDEV/data/EBSDEV/system01.dbf
system01.dbf         /u01/dbebs/EBSDEV/data/EBSDEV/pdbseed/system01.dbf
system01.dbf         /u01/dbebs/PROD/data/system01.dbf
sysaux01.dbf         /u01/dbebs/EBSDEV/data/EBSDEV/sysaux01.dbf
sysaux01.dbf         /u01/dbebs/EBSDEV/data/EBSDEV/pdbseed/sysaux01.dbf
sysaux01.dbf         /u01/dbebs/PROD/data/sysaux01.dbf
big
Reply | Threaded
Open this post in threaded view
|

Re: adpreclone on PDB

big
Thank you.