Quantcast
Channel: ******* Rafi ORACLE DBA & APPS DBA Blog*******
Viewing all 59 articles
Browse latest View live

Compressing the Oracle EBS TOPs and Uncompressing using tar and gzip

$
0
0
 Hi Apps DBA,

We usually do cloning by copying the Application tops from Source(TEST1) to Target(TEST2).
First we compress the files in source and than we copy those file from source to target and finally we uncompress followed by renaming and further process .Below are the useful commands and safe one to do this task.

Step 1:Tarring and zipping:

nohup tar -cvpf - ./test1appl 2> /u01/app/test1/test1appl.log | gzip -c -> /u01/app/test1/test1appl.gz &

nohup tar -cvpf - ./test1comn 2> /u01/app/test1/test1comn.log | gzip -c -> /u01/app/test1/test1comn.gz &

nohup tar -cvpf - ./test1ora 2> /u01/app/test1/test1ora.log | gzip -c -> /u01/app/test1/test1ora.gz &

Step 2:scp from source  to target:
Assuming we are on target server,we copy files from source to target as below:

scp -rp apptest1@uslaxorcap19:/u01/app/test1/*.tar.gz .

passwd:apptest1

Step 3:Untarring and Unzipping:

nohup cat /u02/app/test2/test1appl.tar.gz|gunzip| tar xvf - >/u02/app/test2/test1appl.log &
nohup cat /u02/app/test2/test1comn.tar.gz|gunzip| tar xvf - >/u02/app/test2/test1comn.log &
nohup cat /u02/app/test2/test1ora.tar.gz|gunzip| tar xvf - >/u02/app/test2/test1ora_27Jun.log &

Note 1:Below command comes in single line in Unix shell prompt
Note 2:Advantage of above command is we can check logs and make sure the compressing and Uncompressing  is done successfully.



Enjoy doing Apps DBA tasks...


Best regards,

Rafi









Difference between Oracle EBS R12.1.3 and Oracle EBS R12.2.4

$
0
0
Hi,

It's been a long time since I wrote a blog post, I was busy working with Oracle EBS upgrades,content server setup, and Oracle SOA 11g upgrade projects. We have recently upgraded Oracle EBS 12.1.3 to Oracle EBS R12.2.4.

There are lot of difference.Below are the key ones, I will try to extend this post based on difference noticed by me as I work more rigorously.

1)In R12.2 we have to kind of filesystems fs1(run filesystem) and fs2(patch filesystem) where as In R12.1.3 we only deal with one application filesystem.

2)In R12.2 we have the Application servers replaced by Weblogic server to manage the technology statck.
The 10.1.3 Home is replaced by FMW  (Fusion Middleware Home) i.e $FMW_HOME

The major change in R12.2 is involvement of Weblogic server to manager all the forms,oacore servers
where as in R12.1.3 we had the Application server 10.1.3 to manage the web home or Java Home

3)The  adpatch(patching) in R 12.1.3 is replaced by adop(online patching) in R 12.2.4

adop(online patching) utility involves 5 phases to apply a standard patch in Oracle EBS R12.2.
adop involves 5 phases
1)prepare => prepare phase involves synchronization of the filesystems fs1 (run ,filesystem) and fs2(patch filesystem), filesystems are inter changeable.
2)apply=>In this phase we apply all the patches
Note: These patches need to be copied in fs_ne (non editioned filesystems)
3)finalize =>In this phase we are getting ready for cutover phase
4)cutover =>In cutover phase the filesystem switchover takes place. Previously the filesystem which was patch filesystem will now become run filesystem.)
5) cleanup =>In cleanup phase all the obsolute objects gets compiled .

adop online patching utility doesn't require downtime. It involves minimal downtime during cutover phase where switching of filesystems happens. We can apply lot of patches and do cutover any time to minimize downtime

where as in  adpatch we just apply patch most of the times by bringing down applications or in hot patch mode.

4)'Apps' user Password change:
The 'apps' user password change involve 3 steps in R12.2.4
1)Change the password with FNDCPASS
2)Change the password in EBS Datasource from Weblogic admin console
3)Run AutoconfigCheck below link from Bala for detail steps:

http://balaoracledba.com/2014/05/15/r12-2-changing-apps-or-applsys-password-on-r12-2-instance/

Where as in R 12.1.3 It only involves 2 steps:
1)Change the password with FNDCPASS
2)Run Autoconfig
5)Log files locations:
All the oacore,forms log files are placed in $EBS_DOMAIN_HOME in R12.2. I will explain this in details in my upcoming posts.
Where as in R12.1.3 all the logs for oacore,forms are under $LOG_HOME/ora/10.1.3

I will come up with lot of difference in this thread so that we all gets comfortable with Oracle EBS Release 12.2.4
 Happy Oracle Apps DBA reading and learning EBS R12.2.4...

Note:Check www.orasols.com for the services we offer.

Difference in location of Log files in Oracle EBS Release 12.1.3 and Oracle EBS Release 12.2.4

$
0
0
Hi All,

Lot of companies planning to Upgrade from Oracle EBS Release 12.1.3(Rel 12.1.x)  to Oracle EBS Release 12.2.4(Rel 12.2.x). Few of the companies already upgraded.

The Log files locations in Oracle EBS Release 12.1.3 and  Oracle EBS R 12.2.4  are given below:

1.Instance startup and configuration Log files are located for INST_TOP in Oracle Release 12.1.3 are below:

$INST_TOP/logs/appl/admin/log
Startup/Shutdown error message related to tech stack (10.1.2, 10.1.3 forms/reports/web)
$INST_TOP/logs/ora/ (10.1.2 & 10.1.3)
$INST_TOP/logs/ora/10.1.3/Apache/error_log[timestamp](Apache log files)
$INST_TOP/logs/ora/10.1.3/opmn/ (OC4J, oa*, opmn.log)
$INST_TOP/logs/ora/10.1.2/network/ (listener log)
$INST_TOP/apps/$CONTEXT_NAME/logs/appl/conc/log (CM log files)

2. Log files related to cloning in R12.1.3 are as below:

 Preclone log files in source instance
Database Tier – $ORACLE_HOME/appsutil/log/$CONTEXT_NAME/(StageDBTier_MMDDHHMM.log)
Application Tier –
$INST_TOP/apps/$CONTEXT_NAME/admin/log/(StageAppsTier_MMDDHHMM.log)

Clone log files in target instance
Database Tier – $ORACLE_HOME/appsutil/log/$CONTEXT_NAME/ApplyDBTier_.log
Apps Tier – $INST_TOP/admin/log/ApplyAppsTier_.log

3. Patching related log files in R12.1.3 are as below:

i) Application Tier adpatch log – $APPL_TOP/admin/$SID/log/
ii) Developer (Developer/Forms & Reports 10.1.2) Patch – $ORACLE_HOME/.patch_storage
iii) Web Server (Apache) patch – $IAS_ORACLE_HOME/.patch_storage
iv) Database Tier opatch log – $ORACLE_HOME/.patch_storage


4. Autoconfig related log files in R12.1.3 are as below:

a) Database Tier Autoconfig log :
$ORACLE_HOME/appsutil/log/$CONTEXT_NAME/MMDDHHMM/adconfig.log
$ORACLE_HOME/appsutil/log/$CONTEXT_NAME/MMDDHHMM/NetServiceHandler.log


b) Application Tier Autoconfig log : 
$INST_TOP/apps/$CONTEXT_NAME/admin/log/$MMDDHHMM/adconfig.log

5.Autoconfig context file location in R12.1.3 :
$INST_TOP/apps/$CONTEXT_NAME/appl/admin/$CONTEXT_NAME.xml


6)R12.1.3 Installation Logs in R12.1.3 are as below:

 Database Tier Installation
RDBMS_ORACLE_HOME/appsutil/log/$CONTEXT_NAME/.log
RDBMS_ORACLE_HOME/appsutil/log/$CONTEXT_NAME/ApplyDBTechStack_.log
RDBMS_ORACLE_HOME/appsutil/log/$CONTEXT_NAME/ohclone.log
RDBMS_ORACLE_HOME/appsutil/log/$CONTEXT_NAME/make_.log
RDBMS_ORACLE_HOME/appsutil/log/$CONTEXT_NAME/installdbf.log
RDBMS_ORACLE_HOME/appsutil/log/$CONTEXT_NAME/adcrdb_.log RDBMS_ORACLE_HOME/appsutil/log/$CONTEXT_NAME/ApplyDatabase_.log
RDBMS_ORACLE_HOME/appsutil/log/$CONTEXT_NAME//adconfig.log
RDBMS_ORACLE_HOME/appsutil/log/$CONTEXT_NAME//NetServiceHandler.log
Application Tier Installation
$INST_TOP/logs/.log
$APPL_TOP/admin/$CONTEXT_NAME/log/ApplyAppsTechStack.log
$INST_TOP/logs/ora/10.1.2/install/make_.log
$INST_TOP/logs/ora/10.1.3/install/make_.log
$INST_TOP/admin/log/ApplyAppsTechStack.log
$INST_TOP/admin/log/ohclone.log
$APPL_TOP/admin/$CONTEXT_NAME/log/installAppl.log
$APPL_TOP/admin/$CONTEXT_NAME/log/ApplyAppltop_.log
$APPL_TOP/admin/$CONTEXT_NAME/log//adconfig.log
$APPL_TOP/admin/$CONTEXT_NAME/log//NetServiceHandler.log
Inventory Registration:
$Global Inventory/logs/cloneActions.log
$Global Inventory/logs/oraInstall.log
$Global Inventory/logs/silentInstall.log

7) Log files related with relink,Network,OUT inventory logs for R12.1.3 are as below:
 1) Database Tier
1.1) Relink Log files :
$ORACLE_HOME/appsutil/log/$CONTEXT_NAME /MMDDHHMM/ make_$MMDDHHMM.log
1.2) Alert Log Files :
$ORACLE_HOME/admin/$CONTEXT_NAME/bdump/alert_$SID.log
1.3) Network Logs :
$ORACLE_HOME/network/admin/$SID.log
1.4) OUI Logs :
OUI Inventory Logs :
$ORACLE_HOME/admin/oui/$CONTEXT_NAME/oraInventory/logs
2) Application Tier
$ORACLE_HOME/j2ee/DevSuite/log
$ORACLE_HOME/opmn/logs
$ORACLE_HOME/network/logs
Tech Stack Patch 10.1.3 (Web/HTTP Server)
$IAS_ORACLE_HOME/j2ee/forms/logs
$IAS_ORACLE_HOME/j2ee/oafm/logs
$IAS_ORACLE_HOME/j2ee/oacore/logs
$IAS_ORACLE_HOME/opmn/logs
$IAS_ORACLE_HOME/network/log
$INST_TOP/logs/ora/10.1.2
$INST_TOP/logs/ora/10.1.3
$INST_TOP/logs/appl/conc/log
$INST_TOP/logs/appl/admin/log


In EBS R12.2.4 the log files locations are as below:

1)Log files file Online patching (adop) in EBS R12.2.4 are in below location:

The adop log files are located on the non-editioned file system (fs_ne), under:

$NE_BASE/EBSapps/log/adop/<adop_session_id>/<phase>_<date>_<time>/<context_name>/log

This log directory will contain patch logs,patch worker logs.

adop(phase=fs_clone) Online pathcing filesystem cloning process related log files are found under:

$INST_TOP/admin/log


2)Log files for Autoconfig process in Oracle EBS R12.2.4 are below:

On Applicaion Tier: $INST_TOP/admin/log/<MMDDhhmm>
On Database Tier: $ORACLE_HOME/appsutil/log/<CONTEXT_NAME>/<MMDDhhmm>

3)Log files for start/stop of services from $ADMIN_SCRIPTS_HOME

In below directory we will find log files related to start/stop process of oacore, forms, apache, opmn,
weblogic admin server/node manager:

$LOG_HOME/appl/admin/log


4)Log/Out files for Concurrent programs/managers in Oracle R12.2.4 are in below location:

Log/Out files for Oracle Release 12.2 are stored in Non-Editioned filesystem(NE).

Log files: $APPLCSF/$APPLLOG (or $NE_BASE/inst/<CONTEXT_NAME>/logs/appl/conc/log)
Out files: $APPLCSF/$APPLOUT (or $NE_BASE/inst/<CONTEXT_NAME>/logs/appl/conc/out)


5)Log files for OPMN and OHS processes in Oracle R12.2.4 are in below location:

Below directory contains log files related OPMN process(opmn.log),
OPMN Debug logs(debug.log), HTTP Transaction logs (access.log),security settings related logs.

$IAS_ORACLE_HOME/instances/<ohs_instance>/diagnostics/logs


6)Log file for Weblogic Node Manager in Oracle R12.2.4 are in below location:

Log file is generated by Node Manager and contains data for all domains that
are controlled by Node Manager on a given physical machine.

$FMW_HOME/wlserver_10.3/common/nodemanager/nmHome1/nodemanager.log


7)Log file for Weblogic  in Oracle R12.2.4 for Oracle Management Service are below

Initial settings for AdminServer and Domain level information is written in this log file

$EBS_DOMAIN_HOME/sysman/log


8)Log files for server processes initiated through Weblogic in Oracle R12.2.4 are in below location:
Stdout and stderr messages generated by the forms, oafm and oacore services are located
at NOTICE severity level or higher are written by Weblogic Node Manager to below directory.

$EBS_DOMAIN_HOME/servers/<server_name>/logs/<server_name>.out


Enjoy Oracle EBS R12.2 learning and Performing tasks.


Thanks,

Rafi.

Exciting opportunity for oracle dba + siebel admin for UAE based company

$
0
0
Hi All,

Please email your resume @  rafidba.alvi@gmail.com for  exciting opportunity for oracle dba + sieble admin in UAE for reputed company. Looking for 5 yrs + experience.

Note: Siebel administration is mandatory.



Thanks,

Rafi

Changing Weblogic user password in Oracle EBS Applications 12.2.5

$
0
0
Hi All,

We can change the 'weblogic' user password in EBS Release 12.2.5 using txkUpdateEBSDomain.pl perl script. Before changing the 'weblogic' user password we need to shutdown all the Middle Tier applications using 'adstpall.sh' script.

Below are the steps involved.

Step 1:Source the run filesystem  in the Oracle EBS Applications 12.2 or higher.

/erpapp/testebs/upgrade
. EBSapps.env run

Step 2:Change the password using txkUpdateEBSDomain.pl  perl script.

applmgr@host1:/erpapp/testebs/upgrade$ perl /erpapp/testebs/upgrade/fs1/EBSapps/appl/fnd/12.0.0/patch/115/bin/txkUpdateEBSDomain.pl -action=updateAdminPassword

Program: txkUpdateEBSDomain.pl started at Wed Mar 23 13:51:40 2016

AdminServer will be re started after changing WebLogic Admin Password
All Mid Tier services should be SHUTDOWN before changing WebLogic Admin Password
Confirm if all Mid Tier services are in SHUTDOWN state. Enter "Yes" to proceed or anything else to exit: yes

Enter the full path of Applications Context File [DEFAULT - /erpapp/testebs/upgrade/fs1/inst/apps/testebs_host1/appl/admin/testebs_host1.xml]:
Enter the WLS Admin Password:
Enter the new WLS Admin Password:
Enter the APPS user password:

Executing: /erpapp/testebs/upgrade/fs1/FMW_Home/webtier/perl/bin/perl /erpapp/testebs/upgrade/fs1/EBSapps/appl/ad/12.0.0/patch/115/bin/adProvisionEBS.pl  ebs-get-serverstatus -contextfile=/erpapp/testebs/upgrade/fs1/inst/apps/testebs_host1/appl/admin/testebs_host1.xml -servername=AdminServer -promptmsg=hide -logfile=/erpapp/testebs/upgrade/fs1/inst/apps/testebs_host1/logs/appl/rgf/TXK/txkUpdateEBSDomain_Wed_Mar_23_13_51_40_2016/EBSProvisioner.log
ERROR : Admin Server is not RUNNING, cannot proceed further.
Exiting..applmgr@host1:/erpapp/testebs/upgrade$ cd $ADMIN_SCRIPTS_HOME
applmgr@host1:/erpapp/testebs/upgrade/fs1/inst/apps/testebs_host1/admin/scripts$ ./adadminsrvctl.sh start

You are running adadminsrvctl.sh version 120.10.12020000.10

Enter the WebLogic Admin password:
Enter the APPS Schema password:
Starting WLS Admin Server...


Domain updated successfully
Restarting AdminServer with new Admin Password.

You are running adadminsrvctl.sh version 120.10.12020000.10

Stopping WLS Admin Server...
Refer /erpapp/testebs/upgrade/fs1/inst/apps/testebs_host1/logs/appl/admin/log/adadminsrvctl.txt for details

AdminServer logs are located at /erpapp/testebs/upgrade/fs1/FMW_Home/user_projects/domains/EBS_domain_testebs/servers/AdminServer/logs

adadminsrvctl.sh: exiting with status 0

adadminsrvctl.sh: check the logfile /erpapp/testebs/upgrade/fs1/inst/apps/testebs_host1/logs/appl/admin/log/adadminsrvctl.txt for more information ...


You are running adnodemgrctl.sh version 120.11.12020000.12


NodeManager log is located at /erpapp/testebs/upgrade/fs1/FMW_Home/wlserver_10.3/common/nodemanager/nmHome1

adnodemgrctl.sh: exiting with status 0

adnodemgrctl.sh: check the logfile /erpapp/testebs/upgrade/fs1/inst/apps/testebs_host1/logs/appl/admin/log/adnodemgrctl.txt for more information ...


You are running adadminsrvctl.sh version 120.10.12020000.10

Starting WLS Admin Server...
Refer /erpapp/testebs/upgrade/fs1/inst/apps/testebs_host1/logs/appl/admin/log/adadminsrvctl.txt for details

AdminServer logs are located at /erpapp/testebs/upgrade/fs1/FMW_Home/user_projects/domains/EBS_domain_testebs/servers/AdminServer/logs

adadminsrvctl.sh: exiting with status 0

adadminsrvctl.sh: check the logfile /erpapp/testebs/upgrade/fs1/inst/apps/testebs_host1/logs/appl/admin/log/adadminsrvctl.txt for more information ...


*************** IMPORTANT ****************
WebLogic Admin Password is changed.
Restart all application tier services using control scripts.
********************************************

Step 3: Start the EBS applications using 'adstral.sh' 
$ADMIN_SCRIPTS_HOME
$./adstral.sh

Step 4:Login to admin console for Oracle EBS environment and verify the 'weblogic' user password.

Verify by login to admin console using the 'weblogic' user and make sure all the managed servers are up & running.


Happy Apps DBA Tasks,....


Thanks,

Rafi

Clonning Oracle EBS Applications and Database

$
0
0
Hi DBAs,

Clonning is one of the regular tasks done by Apps DBA & DBAs. I have done lot of clonning
in various ways,below is one such task.Hope you will like it. Theses steps are applicable for
Oracle EBS Release 12.1.3 and Database version is 11.2.0.4.0

Step 1: Source Environment Preparation Steps:
Run adpreclone.pl on DB and Application Tier
DB Tier:
cd $ORACLE_HOME/appsutil/scripts/$CONTEXT_NAME
perl adpreclone.pl dbtier
Application Tier:
cd $ADMIN_SCRIPTS_HOME
perl adpreclone.pl appsTier

Step 2: Take Backup of Database and Applications:
Database:
Use the below script to take full rman backup taken can be used for cloning on source Environment.
run
{
configure device type disk parallelism 6;
allocate channel c1 device type disk;
allocate channel c2 device type disk;
allocate channel c3 device type disk;
allocate channel c4 device type disk;
allocate channel c5 device type disk;
allocate channel c6 device type disk;
backup full database format '/backup/rman/EBSTEST/juneDD/EBSTEST_Full%d_%s_%T_%U' database;
backup format '/backup/rman/EBSTEST/juneNN/EBSTEST_ARCH%d_%s_%T_%U' archivelog all;
backup current controlfile format '/backup/rman/EBSTEST/juneNN/control%d%t_control.ctl';
release channel c1;
release channel c2;
release channel c3;
release channel c4;
release channel c5;
release channel c6;
}

Note: Replace DD with the date or any other directory name as required.

Application Tier:
Compress the top directories using the below commands:
tar –cf /backup/PROD/appl/appsst<date>.tar /erpapp/apps/apps_st
tar –cf /backup/PROD/appl/techst<date>.tar /erpapp/apps/tech_st


Step 3:Copy and Extract Files to DEV Node:

Copy the appsst.tar and techst.tar to respective locations in DEV and extract using:
tar –xf appsst.tar
tar –xf techst.tar

Step 4:Preparing DEV for Refresh:

a)Shutdown Applications and Database Services
b)Take DEV backup if required
c)Take a backup of pfile
d)sqlplus ‘/as sysdba’
startup mount
alter system enable restricted session;
drop database;
e)cp initTESTEBS.ora initEBSTEST.ora
vi initEBSTEST.ora
db_name=EBSTEST
control_files='+DATA/TESTEBS/CONTROLFILE/ctr<new1>.dbf','+DATA/TESTEBS/CONTROLFILE/ctr<new2>.dbf ','+DATA/TESTEBS/CONTROLFILE/ctr<new3>.dbf '
export ORACLE_SID=EBSTEST
startup nomount


Step 5: Restore and Recover Database
Restore controlfile from backup of source Database which should be copied using scp to the
target DB server.

rman target /
restore controlfile from ‘<PATH OF CONTROLFILE BACKUP>’
alter database mount;
crosscheck backup;
delete expired backup;
crosscheck backup;
list backup;
Note:Find the latest sequence and thread number and use them in place of “SEQUENCE” and “N” in below script.

run
{
set until sequence <SEQUENCE> thread <N>;
configure device type disk parallelism 6;
allocate channel c1 device type disk;
allocate channel c2 device type disk;
allocate channel c3 device type disk;
allocate channel c4 device type disk;
allocate channel c5 device type disk;
allocate channel c6 device type disk;
set newname for database to '+DATA';
restore database;
switch datafile all;
recover database;
release channel c1;
release channel c2;
release channel c3;
release channel c4;
release channel c5;
release channel c6;
}
exit;

This completes the database restore and recovery.

Step 6: Configuring DEV Database

Now the Database is in Mount State with EBSTEST name.
Change the redolog file names of Thread 1 to +RECO
a.alter database rename file ‘+RECO/EBSTEST…’ to ‘NEW PATH’
alter database backup controlfile to trace
shut immediate
b.Rename trace file to ctrl.sql
vi ctrl.sql
Change “REUSE” to “SET”
Change “EBSTEST” to “EBSDEV”
Change “noresetlogs” to “resetlogs”
Change “archivelog” to “noarchivelog”
c.cp initEBSTEST.ora initEBSDEV.ora
Change db_name=AMDEV in initEBSDEV.ora
d.export ORACLE_SID=EBSDEV
e.sqlplus ‘/as sysdba’
@ctrl.sql
alter database open resetlogs;
f.Run Autoconfig

This completes the Database Cloning

Before starting cloning, modify FND Template as below:
cd $FND_TOP/admin/driver/fndtmpl.drv
txkWfClone.sh INSTE8_SETUP to txkWfClone.sh INSTALL_SETUP

Step 7:Clone Application Tier:
cd /erpapp/apps/apps_st/comn/clone/bin
perl adcfgclone.pl appsTier
Answer the prompts and do not start services once apply is complete

Step 8:Take a backup of context file 
vi $CONTEXT_FILE
Change the load balancing related parameters

Step 9:Start the EBS applications
5.11adstrtal.sh apps/<password>

Post Cloning Steps:

a)Change logo
Upload the below logo to $OA_MEDIA/COMPLOGO_SC.jpg

b)Run the Data masking script:

 c)Cancel the Running/Pending Concurrent Requests
UPDATE fnd_concurrent_requests
SET phase_code = 'C', status_code = 'X'
WHERE status_code IN ('Q','I')
AND requested_start_date > SYSDATE
AND hold_flag = 'N';

UPDATE fnd_concurrent_requests
SET phase_code = 'C', status_code = 'X'
WHERE phase_code IN ('R','P');
Commit;

d)Disable Workflow Notification Mailer. Set the override address from OAM. Purge pending notifications.

UPDATE WF_NOTIFICATIONS
SET MAIL_STATUS = 'SENT', STATUS = 'CLOSED'
where status in ('OPEN', 'CANCELED')
and mail_status in ('MAIL', 'INVALID');

sqlplus apps/appspwd@db @$FND_TOP/patch/115/sql/wfntfqup.sql apps appspwd applsys

update wf_roles set NOTIFICATION_PREFERENCE=’DISABLED’,email_address=null;

e)Update per_all_people_f set email_address=null where email_address is not null;

f)Change the profile options:
Site Name to “DEV Instance”
Java Color Scheme to a color which is not same as PROD

e)Change the system, apps, sysadmin, xxcomp passwords
f)Add tempfile to Temp Tablespace
g)Change the URLs previously in Context File configured for Load Balancing in PROD and run autoconfig.

s_external_url http://testebs.COMPLOGO.ae:8000
s_login_page http://testebs.COMPLOGO.ae:8000/OA_HTML/AppsLogin
s_webentryhost testebs
s_webentrydomain COMPLOGO.ae

h)Update the Node information for all Concurrent Managers from Concurrent Manager Define to current node name and restart concurrent managers using adcmctl.sh
i)DEACTIVATE “Periodic Alert Scheduler”
j)Update Discoverer URL in Context File ( Application Tier - s_disco_url):
http://customsoadev.COMPLOGO.ae:7777
k)erpuat@COMPLOGO.ae shall be used as the Email ID for notifications in case if WF Notification Mailer is being enabled

Hope you followed clonning steps. Enjoy Apps DBA tasks.

Thanks,

Rafi

www.orasols.com


Useful Database Health Check scripts

$
0
0
Hi Friends,

Below are some useful Database Health Check scripts we can use for monitoring purpose.

These SQL scripts assists us to monitor Database and diagnose in case of any issues.

1) fra_space_check.sql( Flash recovery area and DR sync)

set lines 200;
select (SPACE_LIMIT/1024/1024/1024)SPACE_LIMIT_gb,
           (SPACE_USED/1024/1024/1024)SPACE_USED_gb,
           (SPACE_RECLAIMABLE/1024/1024/1024)SPACE_RECLAIMABLE_gb,
           ((SPACE_LIMIT/1024/1024/1024)-(SPACE_USED/1024/1024/1024)+(SPACE_RECLAIMABLE/1024/1024/1024)) AVAILABLE_SPACE,
       ROUND((SPACE_USED-SPACE_RECLAIMABLE)/SPACE_LIMIT*100,1)"PERCENT_FULL_OF_100%"
       FROM V$RECOVERY_FILE_DEST;

select thread#,max(sequence#) from v$archived_log group by thread#;


select thread#,max(sequence#) from v$archived_log where applied='YES' group by thread#;

2)max_tablespace_size.sql(Tablespace space check)

set lines 200 pages 300;
select TABLESPACE_NAME,sum(BYTES)/1024/1024/1024,sum(MAXBYTES)/1024/1024/1024,sum(BYTES)/1024/1024/1024*100/(sum

(MAXBYTES)/1024/1024/1024) "Used%" from dba_data_files where AUTOEXTENSIBLE='YES' group by TABLESPACE_NAME order by 4;

3)longops_session.sql( long running operations in Database)

set linesize 180
col opname for a30
col username for a15
SELECT SID, SERIAL#, username,to_char(start_time, 'dd Mon, yyyy hh24:mi:ss') as start_time, opname, SOFAR, TOTALWORK,

ROUND(SOFAR/TOTALWORK*100,2) COMPLETE FROM  V$SESSION_LONGOPS
 WHERE
TOTALWORK != 0
AND    SOFAR != TOTALWORK
order by 1;

4)temp_space_check.sql(For Temporary tablespace space check)

col name for a20
SELECT d.status "Status", d.tablespace_name "Name", d.contents "Type", d.extent_management
"ExtManag",
TO_CHAR(NVL(a.bytes / 1024 / 1024, 0),'99,999,990.900') "Size (M)", TO_CHAR(NVL(t.bytes,
0)/1024/1024,'99999,999.999') ||'/'||TO_CHAR(NVL(a.bytes/1024/1024, 0),'99999,999.999') "Used (M)",
TO_CHAR(NVL(t.bytes / a.bytes * 100, 0), '990.00') "Used %"
FROM sys.dba_tablespaces d, (select tablespace_name, sum(bytes) bytes from dba_temp_files group by
tablespace_name) a,
(select tablespace_name, sum(bytes_cached) bytes from
v$temp_extent_pool group by tablespace_name) t
WHERE d.tablespace_name = a.tablespace_name(+) AND d.tablespace_name = t.tablespace_name(+)
AND d.extent_management like 'LOCAL' AND d.contents like 'TEMPORARY';


5)events_details.sql(Wait Events monitoring)

set pages 300;
set lines 200;
col event for a50;
col username for a10;
 select s.sid ,username,status ,s.module,s.sql_id,w.event,w.SECONDS_IN_WAIT,w.STATE from v$session_wait w,v$session s

where w.sid=s.sid and w.EVENT <> 'SQL*Net message from client' and username is not null and w.event <> 'Streams AQ:

waiting for messages in the queue';

6)log_switches_info.sql(Log switches in a day)

set lines 250;
set pages 200;
select to_char(first_time,'DD-MON-YYYY') day,
to_char(sum(decode(to_char(first_time,'HH24'),'00',1,0)),'99') "00",
to_char(sum(decode(to_char(first_time,'HH24'),'01',1,0)),'99') "01",
to_char(sum(decode(to_char(first_time,'HH24'),'02',1,0)),'99') "02",
to_char(sum(decode(to_char(first_time,'HH24'),'03',1,0)),'99') "03",
to_char(sum(decode(to_char(first_time,'HH24'),'04',1,0)),'99') "04",
to_char(sum(decode(to_char(first_time,'HH24'),'05',1,0)),'99') "05",
to_char(sum(decode(to_char(first_time,'HH24'),'06',1,0)),'99') "06",
to_char(sum(decode(to_char(first_time,'HH24'),'07',1,0)),'99') "07",
to_char(sum(decode(to_char(first_time,'HH24'),'08',1,0)),'99') "08",
to_char(sum(decode(to_char(first_time,'HH24'),'09',1,0)),'99') "09",
to_char(sum(decode(to_char(first_time,'HH24'),'10',1,0)),'99') "10",
to_char(sum(decode(to_char(first_time,'HH24'),'11',1,0)),'99') "11",
to_char(sum(decode(to_char(first_time,'HH24'),'12',1,0)),'99') "12",
to_char(sum(decode(to_char(first_time,'HH24'),'13',1,0)),'99') "13",
to_char(sum(decode(to_char(first_time,'HH24'),'14',1,0)),'99') "14",
to_char(sum(decode(to_char(first_time,'HH24'),'15',1,0)),'99') "15",
to_char(sum(decode(to_char(first_time,'HH24'),'16',1,0)),'99') "16",
to_char(sum(decode(to_char(first_time,'HH24'),'17',1,0)),'99') "17",
to_char(sum(decode(to_char(first_time,'HH24'),'18',1,0)),'99') "18",
to_char(sum(decode(to_char(first_time,'HH24'),'19',1,0)),'99') "19",
to_char(sum(decode(to_char(first_time,'HH24'),'20',1,0)),'99') "20",
to_char(sum(decode(to_char(first_time,'HH24'),'21',1,0)),'99') "21",
to_char(sum(decode(to_char(first_time,'HH24'),'23',1,0)),'99') "22",
to_char(sum(decode(to_char(first_time,'HH24'),'23',1,0)),'99') "23" from v$log_history group by to_char(first_time,'DD-

MON-YYYY') order by 1;

7)logon_sesion.sql( Logon time for a session in Database)

select sid,serial#,to_char(logon_time,'DD-MON-YYYY:HH24:MI:SS'),program,module from v$session where sid=&1;

8)sessinfo_db.sql( Session information in Database)

select sid,serial#,program from v$session where sid=&1;

9)plan_query.sql( To get execution plan display of a query by providing sql_id from v$sql)

set lines 200;
set pages 1000;
select * from table(dbms_xplan.display_cursor('&1'));

10)sync_prod_db.sql(To check max sequence number in the primary database)

select thread#,max(sequence#) from v$archived_log group by thread#;

11)tablespace_space.sql( To get tablespace details type and space usage in Database)

set linesize 180
set pagesize 100
col "Name" for a30

SELECT d.tablespace_name "Name", d.contents "Type", d.status "Status",TO_CHAR(NVL(a.bytes / 1024 / 1024,

0),'99G999G990D90')
"Total Size (M)", TO_CHAR(NVL(NVL(f.bytes, 0),0)/1024/1024, '99G999G990D90')
"Free (MB)", TO_CHAR(NVL((NVL(f.bytes, 0)) / a.bytes * 100, 0), '990D00')
"Free %" FROM sys.dba_tablespaces d,
(select tablespace_name, sum(bytes) bytes from dba_data_files group by tablespace_name) a,
(select tablespace_name, sum(bytes) bytes from dba_free_space group by tablespace_name) f
WHERE d.tablespace_name = a.tablespace_name(+) AND d.tablespace_name = f.tablespace_name(+) order by "Free %";

12)drsync_check.sql( Check the applied and unapplied archives on the Standby Database side)

select sequence# from v$archived_log where applied='NO';
select max(sequence#) from v$archived_log where applied='YES';
exit;
/


13)invalids.sql( To count the invalids objects in the Database)

select count(*) from dba_objects where status='INVALID';

14) lock_session.sql( To find the locking session details in the Database)

set linesize 180
set pagesize 10000
col sql_fulltext for a100
select s1.username || '@'|| s1.machine
|| ' ( SID=' || s1.sid || ' ) is blocking '
 || s2.username || '@' || s2.machine || ' ( SID=' || s2.sid || ' ) '
AS blocking_status
from v$lock l1, v$session s1, v$lock l2, v$session s2
where s1.sid=l1.sid and s2.sid=l2.sid
 and l1.BLOCK=1 and l2.request > 0
and l1.id1 = l2.id1
and l2.id2 = l2.id2 ;

15) Temp_usage.sql( To find the temporary tablespace usage details)

SELECT A.tablespace_name tablespace,
             D.mb_total,
             SUM(A.used_blocks * D.block_size) / 1024/1024 mb_used,
             D.mb_total - SUM(A.used_blocks * D.block_size) / 1024/1024 mb_free
         FROM v$sort_segment A,
             (SELECT B.name, C.block_size, SUM(C.bytes) / 1024/1024 mb_total
                FROM v$tablespace B, v$tempfile C
               WHERE B.ts# = C.ts#
               GROUP BY B.name, C.block_size) D
         WHERE A.tablespace_name = D.name
        GROUP by A.tablespace_name, D.mb_total;

16) master_db_hc.sql( Master Health check script for Database,creates DBHEALTH.html report)

set feedback off;
set markup html on spool on;
spool DBHEALTH.html;

set termout off;

prompt ************  DAILY HEALTH CHECK SCRIPT DB************
prompt ************  SCRIPT FOR DB: RAFI ALVI   ************

prompt

prompt**---------------Time-----------------------------**
select sysdate from dual;

prompt**---------------Database Details-----------------------------**
prompt
SELECT DBID "DATABASE_ID", NAME "DB_NAME", LOG_MODE, OPEN_MODE, RESETLOGS_TIME  FROM V$DATABASE;
SELECT instance_name, status, to_char(startup_time,'DD-MON-YYYY HH24:MI:SS') "DB Startup Time"
FROM   sys.v_$instance;
column "Host Name" format a15;
column "Host Address" format a15;
SELECT UTL_INADDR.GET_HOST_ADDRESS "Host Address", UTL_INADDR.GET_HOST_NAME "Host Name" FROM DUAL;
SELECT BANNER "VERSION" FROM V$VERSION;
col "Database Size" format a15;
col "Free space" format a15;
select round(sum(used.bytes) / 1024 / 1024/1024 ) || ' GB'"Database Size",
round(free.p / 1024 / 1024/1024) || ' GB'"Free space"
from (select bytes from v$datafile
union all select bytes from v$tempfile
union all select bytes from v$log) used,
(select sum(bytes) as p from dba_free_space) free
group by free.p;

prompt**---------------SGA Component Size------------------------------**
set line 200;
select    pool, m_bytes from ( select     pool, to_char( trunc(sum(bytes)/1024/1024,2), '99999.99' ) as M_bytes
    from     v$sgastat
    where     pool is not null   group     by pool
    union
    select     name as pool, to_char( trunc(bytes/1024/1024,3), '99999.99' ) as M_bytes
    from     v$sgastat
    where    pool is null  order     by 2 desc
    ) UNION ALL
    select    'TOTAL' as pool, to_char( trunc(sum(bytes)/1024/1024,3), '99999.99' ) from v$sgastat;


prompt**---------------ASM SPACE DETAILS------------------------------**


select NAME,TOTAL_MB/1024 "Total",FREE_MB/1024 "Free",REQUIRED_MIRROR_FREE_MB/1024 "REQFORMIRROR",USABLE_FILE_MB/1024

"Usable" from v$asm_diskgroup;


prompt**---------------FRA USAGE and FREE SPACE------------------------------**

select (SPACE_LIMIT/1024/1024/1024)SPACE_LIMIT_gb,
       (SPACE_USED/1024/1024/1024)SPACE_USED_gb,
       (SPACE_RECLAIMABLE/1024/1024/1024)SPACE_RECLAIMABLE_gb,
       ((SPACE_LIMIT/1024/1024/1024)-(SPACE_USED/1024/1024/1024)+(SPACE_RECLAIMABLE/1024/1024/1024)) AVIALABLE_SPACE,
       ROUND((SPACE_USED-SPACE_RECLAIMABLE)/SPACE_LIMIT*100,1)"PERCENT_FULL_OF_100%"
       FROM V$RECOVERY_FILE_DEST;


prompt**--------------Monitoring Objects Created within 2 days---------------------**
select count(1) from user_objects where CREATED >= sysdate - 2;

prompt**--------------Counting Invalid object in Database---------------------------**
Select owner, object_type, count(*) from dba_objects where status='INVALID' group by  owner, object_type;

prompt**---------------Track Redolog Generation-------------------------------------**
select trunc(completion_time) logdate, count(*) logswitch, round((sum(blocks*block_size) / 1024 / 1024)) "REDO PER DAY

(MB)"
from v$archived_log
group by trunc(completion_time)
order by 1;

prompt**--------------Monitor DB Corruption--------------------**
set line 200;
SELECT r.FILE# AS df#, d.NAME AS df_name, t.NAME AS tbsp_name, d.STATUS,
    r.ERROR, r.CHANGE#, r.TIME FROM V$RECOVER_FILE r, V$DATAFILE d, V$TABLESPACE t
    WHERE t.TS# = d.TS# AND d.FILE# = r.FILE#;

prompt**---------------Tablespace Information--------------------------------------**
set pages 200;
select df.tablespace_name "Tablespace",
    totalusedspace "Used MB",
    (df.totalspace - tu.totalusedspace) "Free MB",
    df.totalspace "Total MB",
    round(100 * ( (df.totalspace - tu.totalusedspace)/ df.totalspace))"Pct.Free"
    from
    (select tablespace_name,
    round(sum(bytes) / 1048576) TotalSpace
    from dba_data_files
   group by tablespace_name) df,
   (select round(sum(bytes)/(1024*1024)) totalusedspace, tablespace_name
   from dba_segments
   group by tablespace_name) tu
   where df.tablespace_name = tu.tablespace_name
   order by "Pct.Free";

spool off;
set markup html off;

master_db_check.sh

#!/bin/sh
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export GRID_HOME=/u01/app/11.2.0/grid
export PATH=$PATH:$ORACLE_HOME/bin:.:$ORACLE_HOME/OPatch:$ORACLE_HOME/perl/bin:$GRID_HOME/bin
export TNS_ADMIN=$GRID_HOME/network/admin
export ORA_NLS10=$ORACLE_HOME/nls/data/9idata
export ORACLE_SID=TESTDB1
DBHEALTH="$(date +%d%m%y)"
mkdir /home/oracle/DBA/dailyreports/$DBHEALTH
cd /home/oracle/DBA/dailyreports/$DBHEALTH
sqlplus / as sysdba <<EOF
@/home/oracle/DBA/scripts/dailyhc.sql
exit;
EOF
rm -f $DBHEALTH.html
mv DBHEALTH.html $DBHEALTH.html

18)arch_del.sh( Archive log deletion script)

#!/bin/sh

export ORACLE_BASE=/u01/app/oracle

ORACLE_HOME="/u01/app/oracle/db"
export ORACLE_HOME

export GRID_HOME=/u01/app/11.2.0/grid

ORACLE_SID="TESTDB"
export ORACLE_SID

ORA_NLS10="/u01/app/oracle/db/nls/data/9idata"
export ORA_NLS10

PATH="/u01/app/oracle/db/bin:/usr/ccs/bin:/usr/sbin:/u01/app/oracle/db/jdk/jre/bin:$PATH:."
export PATH

LINK_CNTRL=""
export LINK_CNTRL

TNS_ADMIN="/u01/app/oracle/db/network/admin/TESTDB_host01"
export TNS_ADMIN


cd home/oracle/DBA/logs/archdel
rman target / log="delarch_$(date +%d%m%y_%H%M%S).log"<<HERE
delete noprompt archivelog all completed before 'sysdate - 4';
crosscheck archivelog all;
list expired archivelog all;
HERE


19) locks.sql (locks on objects)

SELECT o.owner, o.object_name, o.object_type, o.last_ddl_time, o.status, l.session_id, l.oracle_username, l.locked_mode
FROM dba_objects o, gv$locked_object l
WHERE o.object_id = l.object_id;


Enjoy Monitoring Databases..

Thanks,

Rafi




Completed Red Hat Certified System Administrator 7 (RHCSA) EXAM (EX200)

$
0
0
Hi Friends,

I always believe DBA should have strong knowledge and experience in working on Unix flavor operating system. In this regard Red Hat Linux is always my favourite  operating system and always enjoy working on this Unix flavor operating system.

By Almighty 's and some efforts of mine I completed Red Hat Certified System Administrator 7 (RHCSA) EXAM(EX200) certification.

Link below for the credential validation:

https://www.redhat.com/rhtapps/certification/verify/?certId=170-277-842



Preparation:

Red Hat Enterprise Linux(RHEL) version 7 Training from Reputed training institute or Partner network should help in passing this exam. You can always mail me to rafidba.alvi@gmail.com for any assistance.


Enjoy learning Red Hat Linux.


Thanks,

Rafi

clrg comand for Oracle Apps DBA in Oracle SuperCluster Environment

$
0
0
Hi All,

In Oracle SuperCluster Environment we use important command 'clrg' for stopping and Starting of Oracle Web tier and Concurrent Manager Services.

clrg stands for clresourcegroup, which assist us to manage resource groups for Oracle Solaris Cluster data services or  on Oracle SuperCluster Environment

Below are commands we use on Oracle Apps nodes as 'root' Operating system user on Solaris Environment where Oracle Supercluster is running:

In order to:
·         Stop application on only application server 1 to stop all opmn and concurrent manager services on apps server1 and server2 completely.

  # clrg offline opmn-rg
  # clrg offline cm-rg


 Start application on only application server 1:

   # clrg online cm-rg
  #  clrg online opmn-rg

·         Stop application on one application server (i.e Apps Server 1 or Apps Server 2):

 # clrg offline –n nodename opmn-rg
# clrg offline –n nodename cm-rg

·         Start application on one application servers (i.e Apps Server 1 or Apps Server 2):

 # clrg online –n nodename cm-rg
 # clrg online –n nodename opmn-rg

·         Monitor the cluster resources
 # clrg status
 # clrs status

·         Monitor the full cluster staus:

# cluster status

Example :

root@erpclusterapps1:~# cluster status

=== Cluster Resource Groups ===

Group Name     Node Name          Suspended     State
----------     ---------          ---------     -----
scalmnt-rg     erpclusterapps2     No            Online
               erpclusterapps1     No            Online

cm-rg          erpclusterapps2     No            Online
               erpclusterapps1     No            Online

opmn-rg        erpclusterapps2     No            Online
               erpclusterapps1     No            Online


=== Cluster Resources ===

Resource Name     Node Name          State      Status Message
-------------     ---------          -----      --------------
erp-fs-rs         erpclusterapps2     Online     Online
                  erpclusterapps1     Online     Online

cm-rs             erpclusterapps2     Online     Online - Service is online.
                  erpclusterapps1     Online     Online - Service is online.

cmlsr-rs          erpclusterapps2     Online     Online - Service is online.
                  erpclusterapps1     Online     Online - Service is online.

opmn-rs           erpclusterapps2     Online     Online
                  erpclusterapps1     Online     Online

Hope it is useful. Enjoy learning Apps DBA on Exadata / Supercluster Environment


Thanks,

Rafi

HP drivers compatibility with Red Hat Enterprise Linux 7 kernel

$
0
0
Hi DBAs,

Recently I installed   Red Hat Enterprise Linux  7.3  on HP Hardware and applied latest redhat patches which upgraded the kernel version to 7.4 . I came across issue where I was getting hpdsa HP driver error while booting with latest kernel after applying latest Red Hat patches because the kernel version got updated to latest 7.4 kernel due to this issue Red Hat Linux Operating system was not booting up and was giving error. After doing some research and with assistance of Red hat Support I was able to figure and resolve this issue. Sharing details of the Error and Steps followed to resolve this issue.

Kernel details:


Error:Unable to handle kernel NULL pointer dereference 
                                           Modules linked  hpdsa


Observation and Resolution:

 There is a problem with Raid driver for Gen9 Server . We had installed the driver during installation but the module was close driver from HPE and it needs to be upgraded accordingly. Our updated kernel was not kernel for Red Hat 7.3 but is was for Redhat 7.4


Red Hat Enterprise Linux 7.0 (Maipo), June 10,2014   ; 4 years ago, uses Linux Kernel 3.10.0-123
Red Hat Enterprise Linux 7.1, (Maipo), March 5,2015 ; 3 years ago, uses Linux Kernel 3.10.0-229
Red Hat Enterprise Linux 7.2 (Maipo), Nov 19,2015 ;   3 years ago, uses Linux Kernel 3.10.0-327
Red Hat Enterprise Linux 7.3 (Maipo), Nov   3,2016 ; 2 years ago, uses Linux Kernel 3.10.0-514
Red Hat Enterprise Linux 7.4 (Maipo), Aug  1,2017 ; 1 years ago, uses Linux Kernel 3.10.0-693

Latest driver for HP can be found in below location:

https://downloads.linux.hpe.com/SDR/repo/spp-gen9/2018.03.0/packages



As we can see for 7.4 kernel we have a different driver available

Each Red Hat release has one kernel version and only fixes so from 3.10.0-514 they will make only 3.10.0-514.XYX ,so same kernel module will work but if you upgrade to newer Red Hat Kernel (7.4) than new kernel module is required.

Download the driver module kmod-hpdsa-1.2.10-123,rhel7u4.x86_64.rpm and copy to the server.
Boot the RHEL server with older version of  kernel(Red Hat Enterprise Linux 7.3 (Maipo), Nov   3,2016 ; 2 years ago, uses Linux Kernel 3.10.0-514) which is working fine and install the rpm as below:

rpm –ivh packagename.rpm
rpm -ivh  kmod-hpdsa-1.2.10-123,rhel7u4.x86_64.rpm

After successfully installing RPM verify the kernel version, HP Driver module version and reboot the server. Use below commands for validations.

#rpm -q kernel
#rpm -a|grep -i kernel*
#modinfo hpdsa
# init 6

Choose below kernel to boot the server:

Red Hat Enterprise Linux 7.4 (Maipo), Aug  1,2017 ; 1 years ago, uses Linux Kernel 3.10.0-693

Now it will work and the issue is resolved.

Enjoy Learning and Working on Red Hat Linux ...

Thanks,





18 Steps for Oracle 18c Installation and Database Creation for On Premise Environment

$
0
0
18 Steps for Oracle 18c Installation and Database Creation for On Premise Environment

Hi DBAs,

Oracle 18c Rel3 On premise Database released as expected in Jul 2018. Since I work and Spend most of my time
working with On Premise Databases, Applications and Fusion Middleware components, so decided to write this post based on

My practical experience with Oracle 18c today to assist DBAs.

Below are my 18 steps for Oracle 18c Installation on Linux 64-bit Operating System:



Step 1: Copy and Unzip the Software on server.

Once you unzip the Oracle18c Rel3 Software you will notice while extracting lot of linking of binaries happen and it will
create ORACLE_HOME in same path, this is interesting and new feature of 18c Database.f

cd Oracle_18c_Rel3_Linux_64bit/
  ls -ltr
  unzip LINUX.X64_180000_db_home.zip
 

inflating: md/gdal/bin/gdalenhance
  inflating: md/gdal/bin/gdallocationinfo
  inflating: md/gdal/bin/ogrinfo
   creating: md/lib/
  inflating: md/lib/libsdogdal.so
    linking: bin/lbuilder            -> ../nls/lbuilder/lbuilder
    linking: lib/libocci.so          -> libocci.so.18.1
    linking: lib/libodm18.so         -> libodmd18.so
    linking: lib/libagtsh.so         -> libagtsh.so.1.0
    linking: lib/libclntsh.so        -> libclntsh.so.18.1
    linking: lib/libjavavm18.a       -> ../javavm/jdk/jdk8/lib/libjavavm18.a
    linking: javavm/lib/jce.jar      -> ../../javavm/jdk/jdk8/lib/jce.jar
    linking: javavm/admin/cbp.jar    -> ../../javavm/jdk/jdk8/admin/cbp.jar
    linking: lib/libclntshcore.so    -> libclntshcore.so.18.1
    linking: lib/libclntsh.so.11.1   -> libclntsh.so
    linking: lib/libclntsh.so.10.1   -> libclntsh.so
    linking: precomp/public/ORACA.H  -> oraca.h
    linking: precomp/public/SQLCA.H  -> sqlca.h
    linking: precomp/public/SQLDA.H  -> sqlda.h
    linking: precomp/public/ORACA.COB  -> oraca.cob
    linking: precomp/public/SQLCA.COB  -> sqlca.cob
    linking: javavm/admin/classes.bin  -> ../../javavm/jdk/jdk8/admin/classes.bin
    linking: javavm/admin/libjtcjt.so  -> ../../javavm/jdk/jdk8/admin/libjtcjt.so
    linking: javavm/admin/lfclasses.bin  -> ../../javavm/jdk/jdk8/admin/lfclasses.bin
    linking: javavm/lib/security/cacerts  -> ../../../javavm/jdk/jdk8/lib/security/cacerts
    linking: javavm/lib/sunjce_provider.jar  -> ../../javavm/jdk/jdk8/lib/sunjce_provider.jar
    linking: javavm/lib/security/java.security  -> ../../../javavm/jdk/jdk8/lib/security/java.security
    linking: javavm/lib/security/local_policy.jar  -> ../../../javavm/jdk/jdk8/lib/security/local_policy.jar
    linking: javavm/lib/security/US_export_policy.jar  -> ../../../javavm/jdk/jdk8/lib/security/US_export_policy.jar
 extracting: install/.img.bin
finishing deferred symbolic links:
  bin/lbuilder           -> ../nls/lbuilder/lbuilder
  lib/libocci.so         -> libocci.so.18.1
  lib/libodm18.so        -> libodmd18.so
  lib/libagtsh.so        -> libagtsh.so.1.0
  lib/libclntsh.so       -> libclntsh.so.18.1
  lib/libjavavm18.a      -> ../javavm/jdk/jdk8/lib/libjavavm18.a
  javavm/lib/jce.jar     -> ../../javavm/jdk/jdk8/lib/jce.jar
  javavm/admin/cbp.jar   -> ../../javavm/jdk/jdk8/admin/cbp.jar
  lib/libclntshcore.so   -> libclntshcore.so.18.1
  lib/libclntsh.so.11.1  -> libclntsh.so
  lib/libclntsh.so.10.1  -> libclntsh.so
  precomp/public/ORACA.H -> oraca.h
  precomp/public/SQLCA.H -> sqlca.h
  precomp/public/SQLDA.H -> sqlda.h
  precomp/public/ORACA.COB -> oraca.cob
  precomp/public/SQLCA.COB -> sqlca.cob
  javavm/admin/classes.bin -> ../../javavm/jdk/jdk8/admin/classes.bin
  javavm/admin/libjtcjt.so -> ../../javavm/jdk/jdk8/admin/libjtcjt.so
  javavm/admin/lfclasses.bin -> ../../javavm/jdk/jdk8/admin/lfclasses.bin
  javavm/lib/security/cacerts -> ../../../javavm/jdk/jdk8/lib/security/cacerts
  javavm/lib/sunjce_provider.jar -> ../../javavm/jdk/jdk8/lib/sunjce_provider.jar
  javavm/lib/security/java.security -> ../../../javavm/jdk/jdk8/lib/security/java.security
  javavm/lib/security/local_policy.jar -> ../../../javavm/jdk/jdk8/lib/security/local_policy.jar
  javavm/lib/security/US_export_policy.jar -> ../../../javavm/jdk/jdk8/lib/security/US_export_policy.jar
[oracle@orasolsTest Oracle_18c_Rel3_Linux_64bit]$


[oracle@orasolsTest Oracle_18c_Rel3_Linux_64bit]$ ls
addnode     css     deinstall    env.ora        javavm  LINUX.X64_180000_db_home.zip  odbc     ordim  plsql    relnotes 

   sdk           srvm      xdk
apex        ctx     demo         has            jdbc    log                           olap     ords   precomp  root.sh   

   slax          suptools
assistants  cv      diagnostics  hs             jdk     md                            OPatch   oss    QOpatch  root.sh.old

   sqldeveloper  ucp
bin         data    dmu          install        jlib    mgw                           opmn     oui    R     

root.sh.old.1  sqlj          usm
clone       dbjava  drdaas       instantclient  ldap    network                       oracore  owm    racg   

runInstaller   sqlpatch      utl
crs         dbs     dv           inventory      lib     nls                           ord      perl   rdbms 

schagent.conf  sqlplus       wwg
[oracle@orasolsTest Oracle_18c_Rel3_Linux_64bit]$ ls -ltr
total 4457740
-rw-r--r--.  1 oracle oinstall        852 Aug 18  2015 env.ora
-rw-r--r--.  1 oracle oinstall       2927 Oct 14  2016 schagent.conf
-rwxr-x---.  1 oracle oinstall       1783 Mar  8  2017 runInstaller
drwxr-x---.  7 oracle oinstall         69 Feb  8 01:11 xdk
drwxr-xr-x.  3 oracle oinstall         19 Feb  8 01:11 wwg
drwxr-xr-x.  4 oracle oinstall         31 Feb  8 01:11 usm
drwxr-xr-x.  5 oracle oinstall         45 Feb  8 01:11 suptools
drwxr-xr-x.  6 oracle oinstall         54 Feb  8 01:11 srvm
drwxr-xr-x.  3 oracle oinstall         17 Feb  8 01:11 sqlj
drwxr-xr-x.  3 oracle oinstall         18 Feb  8 01:11 slax
-rw-r-----.  1 oracle oinstall         10 Feb  8 01:11 root.sh.old.1
drwxr-xr-x.  3 oracle oinstall         21 Feb  8 01:11 relnotes
drwxr-xr-x.  4 oracle oinstall         29 Feb  8 01:11 racg
drwxr-xr-x.  5 oracle oinstall         52 Feb  8 01:11 R
drwxr-xr-x.  4 oracle oinstall         33 Feb  8 01:11 owm
drwxr-xr-x.  3 oracle oinstall         19 Feb  8 01:11 oss
drwxr-xr-x.  3 oracle oinstall         19 Feb  8 01:11 ordim
drwxr-xr-x.  4 oracle oinstall         34 Feb  8 01:11 oracore
drwxr-xr-x.  5 oracle oinstall         42 Feb  8 01:11 olap
drwxr-xr-x.  4 oracle oinstall         31 Feb  8 01:11 mgw
drwxr-xr-x.  2 oracle oinstall          6 Feb  8 01:11 log
drwxr-xr-x.  3 oracle oinstall         18 Feb  8 01:11 has
drwxr-xr-x.  3 oracle oinstall         19 Feb  8 01:11 dv
drwxr-xr-x.  3 oracle oinstall         20 Feb  8 01:11 diagnostics
drwxr-xr-x.  3 oracle oinstall         19 Feb  8 01:11 dbjava
drwxr-xr-x.  3 oracle oinstall         20 Feb  8 01:11 data
drwxr-xr-x.  3 oracle oinstall         18 Feb  8 01:11 css
drwxr-xr-x.  6 oracle oinstall         78 Feb  8 01:12 plsql
drwxr-xr-x.  2 oracle oinstall         22 Feb  8 01:12 dbs
drwxr-xr-x.  2 oracle oinstall         33 Feb  8 01:12 utl
drwxr-xr-x.  2 oracle oinstall         29 Feb  8 01:12 instantclient
drwxr-xr-x. 13 oracle oinstall        198 Feb  8 01:12 dmu
drwxr-xr-x.  3 oracle oinstall         35 Feb  8 01:12 ucp
drwxr-xr-x.  3 oracle oinstall         35 Feb  8 01:12 jdbc
drwxr-xr-x.  2 oracle oinstall         26 Feb  8 01:12 QOpatch
drwxr-xr-x.  4 oracle oinstall         67 Feb  8 01:12 ords
drwxr-xr-x.  5 oracle oinstall        119 Feb  8 01:13 sdk
drwxr-xr-x.  6 oracle oinstall       4096 Feb  8 01:13 apex
drwxr-xr-x. 22 oracle oinstall       4096 Feb  8 01:13 sqldeveloper
drwxr-xr-x.  8 oracle oinstall        101 Feb  8 01:13 odbc
drwxr-xr-x. 11 oracle oinstall        119 Feb  8 01:14 ctx
-rwx------.  1 oracle oinstall        786 Feb  8 01:14 root.sh.old
drwxr-x---. 14 oracle oinstall       4096 Jun  4 04:20 OPatch
drwxr-xr-x.  6 oracle oinstall         53 Jul 18 20:17 sqlplus
-rwx------.  1 oracle oinstall        638 Jul 18 20:18 root.sh
drwxr-xr-x.  2 oracle oinstall       4096 Jul 18 20:39 jlib
drwxr-xr-x.  5 oracle oinstall        153 Jul 18 20:41 sqlpatch
drwxr-xr-x.  7 oracle oinstall        246 Jul 18 20:44 jdk
drwxr-xr-x. 13 oracle oinstall        140 Jul 18 20:44 rdbms
drwxr-xr-x.  6 oracle oinstall         56 Jul 18 20:44 precomp
drwxr-xr-x.  5 oracle oinstall         39 Jul 18 20:44 perl
drwxr-xr-x.  7 oracle oinstall         64 Jul 18 20:44 ord
drwxr-xr-x.  7 oracle oinstall         65 Jul 18 20:44 opmn
drwxr-xr-x.  5 oracle oinstall         46 Jul 18 20:44 nls
drwxr-xr-x. 10 oracle oinstall        106 Jul 18 20:44 network
drwxr-xr-x.  9 oracle oinstall         98 Jul 18 20:44 md
drwxr-xr-x. 10 oracle oinstall        112 Jul 18 20:44 ldap
drwxr-xr-x.  8 oracle oinstall         82 Jul 18 20:44 javavm
drwxr-xr-x.  5 oracle oinstall         41 Jul 18 20:44 hs
drwxr-xr-x.  4 oracle oinstall         30 Jul 18 20:44 drdaas
drwxr-xr-x.  3 oracle oinstall         20 Jul 18 20:44 demo
drwxr-xr-x.  7 oracle oinstall         71 Jul 18 20:44 cv
drwxr-xr-x.  6 oracle oinstall         55 Jul 18 20:44 crs
drwxr-xr-x.  9 oracle oinstall         93 Jul 18 20:44 assistants
drwxr-xr-x.  8 oracle oinstall        226 Jul 18 20:44 oui
drwxr-xr-x.  3 oracle oinstall      12288 Jul 18 20:44 lib
drwxr-x---. 13 oracle oinstall        219 Jul 18 20:44 inventory
drwxr-xr-x.  5 oracle oinstall        191 Jul 18 20:44 deinstall
drwxr-xr-x.  4 oracle oinstall         87 Jul 18 20:44 clone
drwxr-xr-x.  2 oracle oinstall       8192 Jul 18 20:44 bin
drwxr-xr-x.  2 oracle oinstall        102 Jul 18 20:44 addnode
drwxr-xr-x. 10 oracle oinstall       4096 Jul 18 20:53 install
-rw-r--r--.  1 oracle oinstall 4564649047 Jul 24 08:46 LINUX.X64_180000_db_home.zip
[oracle@orasolsTest Oracle_18c_Rel3_Linux_64bit]$

Step 2:Verify and check the Shared Memory Operating System level

It is very important to resize kernel.shmmax and kernel.shmall parameter in /etc/sysctl.conf as below


[oracle@orasolsTest Oracle_18c_Rel3_Linux_64bit]$ free -m
              total        used        free      shared  buff/cache   available
Mem:          64172        2071       32258        3009       29842       58432
Swap:         20479           0       20479
[oracle@orasolsTest Oracle_18c_Rel3_Linux_64bit]$ ipcs -lm

------ Shared Memory Limits --------
max number of segments = 4096
max seg size (kbytes) = 524288
max total shared memory (kbytes) = 8388608
min seg size (bytes) = 1

[oracle@orasolsTest Oracle_18c_Rel3_Linux_64bit]$ exit
logout
[root@orasolsTest u02]# vi /etc/sysctl.conf
[root@orasolsTest u02]# cat /etc/sysctl.conf
# sysctl settings are defined through files in
# /usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/.
#
# Vendors settings live in /usr/lib/sysctl.d/.
# To override a whole file, create a new file with the same in
# /etc/sysctl.d/ and put new settings there. To override
# only specific settings, add a file with a lexically later
# name in /etc/sysctl.d/ and put new settings there.
#
# For more information, see sysctl.conf(5) and sysctl.d(5).

#Add kernel parameters

fs.aio-max-nr = 1048576
fs.file-max = 6815744
#kernel.shmall = 2097152
#kernel.shmmax = 536870912
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048586

[root@orasolsTest u02]# sysctl -p
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586

Step 3: Create and Configure a Single Instance Database



Step 4: Choose as Server Class if you are doing on Server or Desktop for your own System


Step 5: Choose Enterprise Edition

 Standard Edition 2 seems new from Oracle 18c on premise DB


Step 6: Specify ORACLE_BASE location. 

It should be under same path where you extracted the Oracle 18c Release 3 software. Details in my post in Step 1.




Step 7: Choose General Purpose and Specify the Database Identifiers in the next screen.



Step 8: Specify configuration options

Memory
Character Set
Sample schemas







Step 9: Specify Database Storage options



Step 9: Specify Management options if required(optional step)


Step 10: Specify RECOVERY options if required(optional step)




Step 10: Specify SAMPLE options if required(optional step)


Step 11:Specify Privilege OS groups



Step 12: Installer does series of prerequisite checks


Step 13:Verify Summary and Click Install for installation and Database creation of Oracle 18c 







Step 14:Execute root.sh script to perform series of actions :

After executing 'root.sh' you will get Oracle Trace File Analyzer (TFA) location if you want you can setup it as well. This is new feature from Oracle 18c Release 3 Database.

[root@orasolsTest Oracle_18c_Rel3_Linux_64bit]# pwd
/u02/ora18c/soft/Oracle_18c_Rel3_Linux_64bit
[root@orasolsTest Oracle_18c_Rel3_Linux_64bit]# sh root.sh

[root@orasolsTest soft]# ls
Oracle_18c_Rel3_Linux_64bit
[root@orasolsTest soft]# cd Oracle_18c_Rel3_Linux_64bit/
[root@orasolsTest Oracle_18c_Rel3_Linux_64bit]# pwd
/u02/ora18c/soft/Oracle_18c_Rel3_Linux_64bit
[root@orasolsTest Oracle_18c_Rel3_Linux_64bit]# sh root.sh
Performing root user operation.

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u02/ora18c/soft/Oracle_18c_Rel3_Linux_64bit

Enter the full pathname of the local bin directory: [/usr/local/bin]:
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...


Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Do you want to setup Oracle Trace File Analyzer (TFA) now ? yes|[no] :
no
Oracle Trace File Analyzer (TFA - Non Daemon Mode) is available at :
    /u02/ora18c/soft/Oracle_18c_Rel3_Linux_64bit/suptools/tfa/release/tfa_home/bin/tfactl

Note :
1. tfactl will use TFA Daemon Mode if TFA already running in Daemon Mode and user has access to TFA
2. tfactl will configure TFA Non Daemon Mode only if user has no access to TFA Daemon mode or TFA Daemon mode is not

installed

OR

Oracle Trace File Analyzer (TFA - Daemon Mode) can be installed by running this script :
    /u02/ora18c/soft/Oracle_18c_Rel3_Linux_64bit/suptools/tfa/release/tfa_home/install/roottfa.sh

[root@orasolsTest Oracle_18c_Rel3_Linux_64bit]#


Step 15: After executing 'root.sh' continue with the Installation of the product




Click Close. This completes Oracle 18c Software Installation and 


Step 16: Post installation Steps:

=> Create the Environment file for Oracle 18c
=> Source the Environment

[oracle@orasolsTest ~]$ cat ora18c.env
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

#PATH=$PATH:$HOME/.local/bin:$HOME/bin
PATH=$PATH:$HOME/bin:/u02/ora18c/soft/Oracle_18c_Rel3_Linux_64bit/bin
export PATH
export ORACLE_SID=ora18c
export ORACLE_HOME=/u02/ora18c/soft/Oracle_18c_Rel3_Linux_64bit
export TNS_ADMIN=/u02/ora18c/soft/Oracle_18c_Rel3_Linux_64bit/network/admin

export TEMP=/tmp
export TMPDIR=/tmp

#export ALERT_LOG=/u02/ora18c/soft/Oracle_18c_Rel3_Linux_64bit/diag/rdbms/crimsdb/crimsdb/trace/

[oracle@orasolsTest ~]$ . ora18c.env
[oracle@orasolsTest ~]$ echo $ORACLE_SID
ora18c
[oracle@orasolsTest ~]$ echo $ORACLE_HOME
/u02/ora18c/soft/Oracle_18c_Rel3_Linux_64bit
[oracle@orasolsTest ~]$

Step 17: Connect to the Oracle 18c Database and validate it.

[oracle@orasolsTest ~]$ . ora18c.env
[oracle@orasolsTest ~]$ echo $ORACLE_SID
ora18c
[oracle@orasolsTest ~]$ echo $ORACLE_HOME
/u02/ora18c/soft/Oracle_18c_Rel3_Linux_64bit


[oracle@orasolsTest ~]$ sqlplus "/as sysdba"

SQL*Plus: Release 11.2.0.4.0 Production on Tue Jul 24 13:15:04 2018

Copyright (c) 1982, 2013, Oracle.  All rights reserved.


Connected to:
Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production

SQL> exit
Disconnected from Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production
[oracle@orasolsTest ~]$ exit
logout
[root@orasolsTest Oracle_18c_Rel3_Linux_64bit]# clear
[root@orasolsTest Oracle_18c_Rel3_Linux_64bit]# su - oracle
Last login: Tue Jul 24 13:07:10 +03 2018 on pts/0
[oracle@orasolsTest ~]$ . ora18c.env
[oracle@orasolsTest ~]$ rman target /

Recovery Manager: Release 18.0.0.0.0 - Production on Tue Jul 24 13:38:06 2018
Version 18.3.0.0.0

Copyright (c) 1982, 2018, Oracle and/or its affiliates.  All rights reserved.

connected to target database: ORA18C (DBID=604293408)

RMAN> exit


Recovery Manager complete.
[oracle@orasolsTest ~]$ sqlplus "/as sysdba"

SQL*Plus: Release 18.0.0.0.0 - Production on Tue Jul 24 13:38:19 2018
Version 18.3.0.0.0

Copyright (c) 1982, 2018, Oracle.  All rights reserved.


Connected to:
Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production
Version 18.3.0.0.0

SQL> select name from v$database;

NAME
---------
ORA18C

SQL> select status from v$instance;

STATUS
------------
OPEN


SQL> select *from v$version;

BANNER
--------------------------------------------------------------------------------
BANNER_FULL
--------------------------------------------------------------------------------
BANNER_LEGACY
--------------------------------------------------------------------------------
    CON_ID
----------
Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production
Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production
Version 18.3.0.0.0
Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production
         0

BANNER
--------------------------------------------------------------------------------
BANNER_FULL
--------------------------------------------------------------------------------
BANNER_LEGACY
--------------------------------------------------------------------------------
    CON_ID
----------

Step 18: Validate the New Components added in Oracle 18c

We have Oracle Database Vault and Oracle Label security( Security components ) new from Oracle 18c Database.

SQL>
SQL> set linesize 12000
SQL> set pages 12000
SQL> col COMP_NAME for a35
SQL> select COMP_ID,COMP_NAME,VERSION,STATUS from dba_registry;

COMP_ID                        COMP_NAME                           VERSION                        STATUS
------------------------------ ----------------------------------- ------------------------------

--------------------------------------------
CATALOG                        Oracle Database Catalog Views       18.0.0.0.0                     VALID
CATPROC                        Oracle Database Packages and Types  18.0.0.0.0                     VALID
RAC                            Oracle Real Application Clusters    18.0.0.0.0                     OPTION OFF
JAVAVM                         JServer JAVA Virtual Machine        18.0.0.0.0                     VALID
XML                            Oracle XDK                          18.0.0.0.0                     VALID
CATJAVA                        Oracle Database Java Packages       18.0.0.0.0                     VALID
APS                            OLAP Analytic Workspace             18.0.0.0.0                     VALID
XDB                            Oracle XML Database                 18.0.0.0.0                     VALID
OWM                            Oracle Workspace Manager            18.0.0.0.0                     VALID
CONTEXT                        Oracle Text                         18.0.0.0.0                     VALID
ORDIM                          Oracle Multimedia                   18.0.0.0.0                     VALID
SDO                            Spatial                             18.0.0.0.0                     VALID
XOQ                            Oracle OLAP API                     18.0.0.0.0                     VALID
OLS                            Oracle Label Security               18.0.0.0.0                     VALID
DV                             Oracle Database Vault               18.0.0.0.0                     VALID

15 rows selected.


Enjoy have a nice time with Oracle 18c Database. Enjoy DBA Tasks.

In my upcoming posts I will focus on Administration Tasks for Oracle 18c... Stay Tune..


Thanks,

Rafi.









Step by Step Oracle Applications and Database Cloning for Oracle EBS 12.2 Environment

$
0
0
Hi All,

Cloning of Oracle ERP Database and Applications for Oracle EBS 12.2 ( 12.2.x) can be done in several ways. Below I have described one such scenario.  Based on the backup policy and customization you have for your Oracle EBS Environment steps might vary . Here I just documented based on my experiences.


Source :ERP122_Source

DB node:source_db_host
App node:source_apps_host

Target :erp1226

DB node:target_db_host
App node:target_apps_host


Step 1: Running Pre-clone on the Source Apps Tier(ERP122_Source)

To prepare the source environment for cloning we need to run adpreclone.pl script.

cd $ADMIN_SCRIPTS_HOME

perl adpreclone.pl appsTier

apps:welcome1
weblogic:welcome1


Log file located at /erpapp/ERP122_Source/upgrade/fs1/inst/apps/ERP122_Source_uat-

cm2/admin/log/clone/StageAppsTier_02041740.log

  \     20% completed

Completed Stage...

END: Calling StagefmwTechStack...


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

END: StageAppsTier Finished at Thu Feb 04 18:14:16 GST 2018
Status: Completed Successfully
#############################################################


Step 2: Running Pre-Clone on the Source DB Tier

To prepare the source environment for cloning we need to run adpreclone.pl script.

cd /u01/ERP122_Source/db/dbhome_1/appsutil/scripts/ERP122_Source_host

perl adpreclone.pl dbTier


Log file located at /u01/ERP122_Source/db/dbhome_1/appsutil/log/ERP122_Source_host/StageDBTier_02041853.log

  /     50% completed

Completed Stage...
Thu Feb  4 18:55:58 2018

Step 3: Copying Application Tier from Source to Target

WHAT NEEDS TO BE COPIED
----------------------------
Choose only RUN FILE SYSTEM for copying

Copy EBSapps directory from source(ERP122_Source) to target(erp1226) (no need to copy FMW_Home and inst Directories)


a) EBSapps =>COPY

On Source(ERP122_Source): Take tar backup of EBSapps

cd /erpapp/ERP122_Source/upgrade/fs1
tar -cvf /u04/ERP122_Source/apps/EBSapps.tar

b) FMW_HOME =>DON'T COPY
c) inst =>DON'T COPY

Prepare Target:(erp1226 : 12.2.5)
=========================================

cd /erpapp/
applmgr@orace_erp_host:~$ mkdir erp1226

mkdir -p /erpapp/erp1226/fs1/
mkdir -p /erpapp/erp1226/fs2/
mkdir -p /erpapp/erp1226/fs_ne/

Step 4:Copy the Oracle Home from source(ERP122_Source) to target(erp1226):

Step a:Create Required directory structures on target with 'oracle' ownership and permissions

root@host:~# mkdir -p /u01/erp1226/db
chown -R oracle:oinstall /u01/erp1226/db


Step b: Take tar backup on ERP122_Source(Source Environment)

cd /u01/ERP122_Source/db
 tar -cvf /u04/ERP122_Source/db/dbhome_1.tar dbhome_1 &

drwxr-xr-x  82 oracle   oinstall      87 Jan 18 10:32 dbhome_1
-rw-r--r--   1 oracle   oinstall 3711308097 Jan 18 17:36 dbhome_1.tar.gz

Step 5:On Target: Extract and give required permissions.


APPS:
======
cd /erpapp/erp1226/fs1
tar -xvf /u04/ERP122_Source/apps/EBSapps.tar

DB:
====
cd /u01/erp1226/db
tar -xvf /u04/ERP122_Source/db/dbhome_1.tar

After extracting DB home please give the required permisssion VVIMP

root@host:~# cd /u01/erp1226/db/dbhome_1/bin
root@host:/u01/erp1226/db/dbhome_1/bin# chmod 6751 oracle
root@host:/u01/erp1226/db/dbhome_1/bin# ls -l oracle
-rwsr-s--x   1 oracle   oinstall 258934216 Jan 31 12:51 oracle
root@host:/u01/erp1226/db/dbhome_1/bin#


$ perl adcfgclone.pl dbTechStack

first source perl
--------------------

export

PERL5LIB=/u01/erp1226/db/dbhome_1/perl/lib/5.10.0:/u01/erp1226/db/dbhome_1/perl/lib/site_perl/5.10.0:/u01/erp1226/db/dbhom

e_1/appsutil/perl
export

PATH=/u01/erp1226/db/dbhome_1/perl/bin:/u01/erp1226/db/dbhome_1/perl/bin:/u01/erp1226/db/dbhome_1/bin:/usr/ccs/bin:/usr/sb

in:/u01/erp1226/db/dbhome_1/jdk/jre/bin:/usr/bin:/bin:.:.
export ADPERLPRG=/u01/erp1226/db/dbhome_1/perl/bin/perl


support id: 458653.1 OUICLI.PL Fail while running adcfgclone
-------------------------------------------------------------

Note:Take oraInst.loc backup

I created oraInventory directory in $ORACLE_HOME and updated new location in oraInst.loc and the issue resolved.

-bash-4.1$ cd $ORACLE_HOME
-bash-4.1$ pwd
/u01/erp1226/db/dbhome_1
-bash-4.1$ mkdir oraInventory
-bash-4.1$ cd oraInventory
-bash-4.1$ pwd
/u01/erp1226/db/dbhome_1/oraInventory

-bash-4.1$ mv oraInst.loc oraInst.loc.org (backup oraInst.loc.org)

-bash-4.1$ vi oraInst.loc
-bash-4.1$ cat $ORACLE_HOME/oraInst.loc
inventory_loc=/u01/erp1226/db/dbhome_1/oraInventory
inst_group=oinstall


Step 6: Execute adcfgclone with tech_st for configuring Technology stack on Target DB Tier

/u01/erp1226/db/dbhome_1/appsutil/clone/bin

export

PERL5LIB=/u01/erp1226/db/dbhome_1/perl/lib/5.10.0:/u01/erp1226/db/dbhome_1/perl/lib/site_perl/5.10.0:/u01/erp1226/db/dbhom

e_1/appsutil/perl

perl adcfgclone.pl dbTechStack


practical
=============
(Eg:export

PERL5LIB=/u01/erp1223/db/dbhome_1/perl/lib/5.10.0:/u01/erp1223/db/dbhome_1/perl/lib/site_perl/5.10.0:/u01/erp1223/db/dbhom

e_1/appsutil/perl)

On Target set the perl path:

export

PERL5LIB=/u01/erp1226/db/dbhome_1/perl/lib/5.10.0:/u01/erp1226/db/dbhome_1/perl/lib/site_perl/5.10.0:/u01/erp1226/db/dbhom

e_1/appsutil/perl

-bash-4.1$ perl adcfgclone.pl dbTechStack

                     Copyright (c) 2002, 2015 Oracle Corporation
                        Redwood Shores, California, USA

                        Oracle E-Business Suite Rapid Clone

                                 Version 12.2

                      adcfgclone Version 120.63.12020000.56

Enter the APPS password :

Running: Context clone...

Log file located at /u01/erp1226/db/dbhome_1/appsutil/clone/bin/CloneContext_0204213607.log

Provide the values required for creation of the new Database Context file.

Target System Hostname (virtual or normal) [host] :

Target Instance is RAC (y/n) [n] : n

Target System Database SID : erp1226

Target System Base Directory : /u01/erp1226/

Target System utl_file_dir Directory List : /usr/tmp

Number of DATA_TOP's on the Target System [3] : 1

Target System DATA_TOP Directory 1 : /u04/erp1226

Target System RDBMS ORACLE_HOME Directory [/u01/erp1226/db/11.2.0] : /u01/erp1226/db/dbhome_1

Do you want to preserve the Display [host:0.0] (y/n)  : y

Target System Port Pool [0-99] : 20

Checking the port pool 6
done: Port Pool 6 is free
Report file located at /u01/erp1226/db/dbhome_1/appsutil/temp/portpool.lst
The new database context file has been created :
  /u01/erp1226/db/dbhome_1/appsutil/erp1226_host.xml
Check Clone Context logfile /u01/erp1226/db/dbhome_1/appsutil/clone/bin/CloneContext_0204213607.log for details.

Running Rapid Clone with command:

Running:
perl /u01/erp1226/db/dbhome_1/appsutil/clone/bin/adclone.pl java=/u01/erp1226/db/dbhome_1/appsutil/clone/bin/../jre

mode=apply stage=/u01/erp1226/db/dbhome_1/appsutil/clone component=dbTechStack method=CUSTOM

dbctxtg=/u01/erp1226/db/dbhome_1/appsutil/erp1226_host.xml showProgress contextValidated=true


Beginning rdbms home Apply - Thu Feb  4 21:40:11 2018

/u01/erp1226/db/dbhome_1/appsutil/clone/bin/../jre/bin/java -Xmx600M -DCONTEXT_VALIDATED=true -

Doracle.installer.oui_loc=/u01/erp1226/db/dbhome_1/oui -classpath

/u01/erp1226/db/dbhome_1/appsutil/clone/jlib/xmlparserv2.jar:/u01/erp1226/db/dbhome_1/appsutil/clone/jlib/ojdbc6.jar:/u01/

erp1226/db/dbhome_1/appsutil/clone/jlib/java:/u01/erp1226/db/dbhome_1/appsutil/clone/jlib/oui/OraInstaller.jar:/u01/erp122

6/db/dbhome_1/appsutil/clone/jlib/oui/ewt3.jar:/u01/erp1226/db/dbhome_1/appsutil/clone/jlib/oui/share.jar:/u01/erp1226/db/

dbhome_1/appsutil/clone/jlib/oui/srvm.jar:/u01/erp1226/db/dbhome_1/appsutil/clone/jlib/ojmisc.jar 

oracle.apps.ad.clone.ApplyDBTechStack -e /u01/erp1226/db/dbhome_1/appsutil/erp1226_host.xml -stage

/u01/erp1226/db/dbhome_1/appsutil/clone   -showProgress
APPS Password : Log file located at /u01/erp1226/db/dbhome_1/appsutil/log/erp1226_host/ApplyDBTechStack_02042140.log
  |      0% completed


Cloning of Database:
===========================
We can use various techniques for cloning depending on the backup policy and availability of Database.
Here I have discussed few approaches. Please follow your own approach depending on backup you have.

Step 7 a:Backup Database:(ERP122_Source)
===========================

run {
allocate channel ch1 device type disk;
allocate channel ch2 device type disk;
allocate channel ch3 device type disk;
allocate channel ch4 device type disk;
allocate channel ch5 device type disk;
allocate channel ch6 device type disk;
backup as copy database format '/u04/ERP122_Source/db/data/%b';
release channel ch1;
release channel ch2;
release channel ch3;
release channel ch4;
release channel ch5;
release channel ch6;
}



Note:For inventory issue:ETCC issue:
====
Download the patch 17537119 and Apply

Step 1:
-bash-4.1$ . erp1226_host.env
-bash-4.1$ cd /u01/erp1226/db/dbhome_1/appsutil/
-bash-4.1$ mkdir etcc
-bash-4.1$ cd etcc/
-bash-4.1$ pwd
/u01/erp1226/db/dbhome_1/appsutil/etcc


Step 2:
cd /export/home/oracle/DBA/1225_Patches/

mkdir 17537119

unzip p17537119.zip

-bash-4.1$ ls -ltr
total 1923
-rwxrwxrwx   1 oracle   oinstall   37060 Feb  1 15:53 checkDBpatch.sh
-rwxrwxrwx   1 oracle   oinstall   34675 Feb  1 15:56 txk_R1220_MT_base_bugs.xml
-rwxrwxrwx   1 oracle   oinstall  275560 Feb  1 16:21 txk_R1220_DB_mappings.xml
-rwxrwxrwx   1 oracle   oinstall  228911 Feb  1 16:31 txk_R1220_MT_mappings.xml
-rwxrwxrwx   1 oracle   oinstall   45408 Feb  1 17:04 checkMTpatch.cmd
-rwxrwxrwx   1 oracle   oinstall   41856 Feb  1 17:28 checkMTpatch.sh
-rwxrwxrwx   1 oracle   oinstall   25103 Feb  1 19:14 txk_R1220_DB_base_bugs.xml
-rw-r--r--   1 oracle   oinstall   23546 Feb  1 19:39 README.txt
-rwxrwxrwx   1 oracle   oinstall   40266 Feb  2 13:08 checkDBpatch.cmd
-rw-r--r--   1 oracle   oinstall   70609 Feb  5 13:28 p17537119_R12_GENERIC.zip
-bash-4.1$ pwd
/export/home/oracle/DBA/1225_Patches/17537119


Step 3:

-bash-4.1$ cp *.* /u01/erp1226/db/dbhome_1/appsutil/etcc
-bash-4.1$ cd /u01/erp1226/db/dbhome_1/appsutil/etcc
-bash-4.1$


step 4:Execute checkdbpatch.sh

-bash-4.1$ ./checkDBpatch.sh

 +===============================================================+
 |    Copyright (c) 2005, 2018 Oracle and/or its affiliates.     |
 |                     All rights reserved.                      |
 |             Oracle E-Business Suite Release 12.2              |
 |          Database EBS Technology Codelevel Checker            |
 +===============================================================+

Using context file from currently set database environment:
/u01/erp1226/db/dbhome_1/appsutil/erp1226_host.xml

Starting Database EBS Technology Codelevel Checker, Version 120.31
Fri Feb  5 15:40:05 GST 2018
Log file for this session : ./checkDBpatch_25691.log

Bugfix XML file version: 120.0.12020000.28
This file will be used for identifying missing bugfixes.

Mapping XML file version: 120.0.12020000.1
This file will be used for mapping bugfixes to patches.

Identifying database release.
Database release set to 11.2.0.4.

Connecting to database.



on 170 DB node:
==========

Verify the backup location :(/u04/ERP122_Source/db/data)

/u04/ERP122_Source/db/onlinelog

mkdir -p /u04/ERP122_Source/db/onlinelog

-bash-4.1$ cp initERP122_Source.ora initERP122_Source.ora
-bash-4.1$ ps -ef|grep smno
  oracle  5639 20586   0 15:57:39 pts/8       0:00 grep smno
-bash-4.1$ ps -ef|grep smon
  oracle 16818 16642   0   Jan 06 ?           2:27 ora_smon_obieedb
    grid 17823  5568   0   Jan 06 ?           1:22 asm_smon_+ASM
  oracle 16301 17091   0   Feb 03 ?           4:54 ora_smon_erp1223
  oracle  5759 20586   0 15:57:42 pts/8       0:00 grep smon
  oracle 13428 13320   0   Feb 03 ?           6:09 ora_smon_erp1224
-bash-4.1$ pwd
/u01/erp1226/db/dbhome_1/dbs
-bash-4.1$ export ORACLE_SID=ERP122_Source

-bash-4.1$ du -sh .
 2.1T   .


Note: IN SOURCE ENV:
===================

-bash-4.1$ . ERP122_Source_host.env

-bash-4.1$ pwd
/export/home/oracle
-bash-4.1$ sqlplus "/as sysdba"

SQL*Plus: Release 11.2.0.4.0 Production on Fri Feb 5 16:39:55 2018

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup
ORACLE instance started.

Total System Global Area 2.6732E+10 bytes
Fixed Size                  2194184 bytes
Variable Size            5570036984 bytes
Database Buffers         2.0804E+10 bytes
Redo Buffers              355704832 bytes
Database mounted.
Database opened.
SQL> select name from v$database;

NAME
---------
ERP122_Source

SQL> alter system switch logfile;

System altered.

SQL> /

System altered.

once copy archives and than shut down ERP122_Source(source)

SQL> shut immediate


create archivelog destination and copy archives

mkdir -p /u04/ERP122_Source/db/data/ERP122_Source/archivelog/2018_02_05

Login as 'grid' os user and do below:

chmod -R 777 /u04/ERP122_Source/db/data/ERP122_Source/archivelog/2018_02_05

Eg:
===

cp thread_1_seq_1425.13277.902885815 /u04/ERP122_Source/db/data/ERP122_Source/archivelog/2018_02_05
cp thread_1_seq_1426.13275.902889561 /u04/ERP122_Source/db/data/ERP122_Source/archivelog/2018_02_05
cp thread_1_seq_1427.13273.902892401 /u04/ERP122_Source/db/data/ERP122_Source/archivelog/2018_02_05
cp thread_1_seq_1428.13267.902894711 /u04/ERP122_Source/db/data/ERP122_Source/archivelog/2018_02_05
cp thread_1_seq_1429.13265.902894727 /u04/ERP122_Source/db/data/ERP122_Source/archivelog/2018_02_05
cp thread_1_seq_1430.13263.902894743 /u04/ERP122_Source/db/data/ERP122_Source/archivelog/2018_02_05
cp thread_1_seq_1431.13261.902894755 /u04/ERP122_Source/db/data/ERP122_Source/archivelog/2018_02_05



SQL> startup nomount pfile='/u01/erp1226/db/dbhome_1/dbs/initERP122_Source.ora'
ORACLE instance started.

Total System Global Area 2.6732E+10 bytes
Fixed Size                  2194184 bytes
Variable Size            3221226744 bytes
Database Buffers         2.3153E+10 bytes
Redo Buffers              355704832 bytes
SQL> show parameter db_recover%

NAME                                 TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
db_recovery_file_dest                string
/u04/ERP122_Source/db/data/erp122
5/archivelog
db_recovery_file_dest_size           big integer
2000G
SQL> alter database mount;

Database altered.

SQL> show parameter control_files

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
control_files                        string      /u04/ERP122_Source/db/data/contro
                                                 l1.dbf, /u04/ERP122_Source/db/dat
                                                 a/control2.dbf
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
-bash-4.1$ echo $ORACLE_SID
ERP122_Source
-bash-4.1$ rman target /


RMAN> recover database;

Starting recover at 05-FEB-16
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=5429 device type=DISK

starting media recovery

RMAN-08187: WARNING: media recovery until scN 9814470450787 complete
Finished recover at 05-FEB-16



SQL> recover database using backup controlfile;
ORA-00279: change 9814470450787 generated at 02/04/2018 21:30:22 needed for
thread 1
ORA-00289: suggestion :
/u04/ERP122_Source/db/data/ERP122_Source/archivelog/ERP122_Source/archivelog/2018_02_05/o1_mf_1
_1559_%u_.arc
ORA-00280: change 9814470450787 for thread 1 is in sequence #1559


Specify log: {<RET>=suggested | filename | AUTO | CANCEL}






NAME
---------
ERP122_Source

SQL> show parameter control_files

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
control_files                        string      /u04/ERP122_Source/db/data/contro
                                                 l1.dbf, /u04/ERP122_Source/db/dat
                                                 a/control2.dbf
SQL> select status from v$instance;

STATUS
------------
MOUNTED

SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
-bash-4.1$ rman target /

Recovery Manager: Release 11.2.0.4.0 - Production on Fri Feb 5 17:49:55 2018

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

connected to target database: ERP122_Source (DBID=3882746714, not open)

RMAN> recover database;

Starting recover at 05-FEB-16
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=5429 device type=DISK

starting media recovery

archived log for thread 1 with sequence 1559 is already on disk as file

/u04/ERP122_Source/db/data/ERP122_Source/archivelog/ERP122_Source/archivelog/2018_02_05/thread_1_seq_1559.12972.903026451
archived log for thread 1 with sequence 1560 is already on disk as file

/u04/ERP122_Source/db/data/ERP122_Source/archivelog/ERP122_Source/archivelog/2018_02_05/thread_1_seq_1560.12971.903026455
archived log file

name=/u04/ERP122_Source/db/data/ERP122_Source/archivelog/ERP122_Source/archivelog/2018_02_05/thread_1_seq_1559.12972.90302

6451 thread=1 sequence=1559
archived log file

name=/u04/ERP122_Source/db/data/ERP122_Source/archivelog/ERP122_Source/archivelog/2018_02_05/thread_1_seq_1560.12971.90302

6455 thread=1 sequence=1560
RMAN-08187: WARNING: media recovery until scN 9814470462883 complete
archived log file

name=/u04/ERP122_Source/db/data/ERP122_Source/archivelog/ERP122_Source/archivelog/2018_02_05/thread_1_seq_1560.12971.90302

6455 thread=1 sequence=1561
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 02/05/2018 17:50:35
ORA-00283: recovery session canceled due to errors
RMAN-11003: failure during parse/execution of SQL statement: alter database recover logfile

'/u04/ERP122_Source/db/data/ERP122_Source/archivelog/ERP122_Source/archivelog/2018_02_05/thread_1_seq_1560.12971.903026455

'
ORA-00283: recovery session canceled due to errors
ORA-01112: media recovery not started
RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 1561 and starting scN of

9814470462883

RMAN> exit


Recovery Manager complete.
-bash-4.1$ sqlplus "/as sysdba"

SQL*Plus: Release 11.2.0.4.0 Production on Fri Feb 5 17:50:56 2018

Copyright (c) 1982, 2013, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select name from v$database;

NAME
---------
ERP122_Source

SQL> select status from v$instance;

STATUS
------------
MOUNTED

SQL> alter database open resetlogs;

Database altered.



-bash-4.1$ cd /u04/ERP122_Source/db/data/ERP122_Source/archivelog/ERP122_Source/archivelog/2018_02_05
-bash-4.1$ ls -l *1559*
*1559*: No such file or directory
-bash-4.1$ pwd
/u04/ERP122_Source/db/data/ERP122_Source/archivelog/ERP122_Source/archivelog/2018_02_05
-bash-4.1$ ls -ltr
total 0
-bash-4.1$ pwd
/u04/ERP122_Source/db/data/ERP122_Source/archivelog/ERP122_Source/archivelog/2018_02_05
-bash-4.1$ cd /u04/ERP122_Source/db/data/ERP122_Source/archivelog
-bash-4.1$ ls



Original defined:
================

/u04/ERP122_Source/db/data/ERP122_Source/archivelog/2018_02_05

As per recommendation:

/u04/ERP122_Source/db/data/ERP122_Source/archivelog/ERP122_Source/archivelog/2018_02_05



NOW bring up the database as erp1226:
------------------------------------

alter database backup controlfile to trace as '/export/home/oracle/CLONE_erp1226/trace_cont_05Feb2018_u04_up_trc';

shut immediate the ERP122_Source database which is running already.

shut immediate

SQL> select name from v$database;

NAME
---------
ERP122_Source

SQL> select status from v$instance;

STATUS
------------
OPEN

SQL> show parameter %CONTROL%

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time        integer     7
control_files                        string      /u04/rman/01Jan2015/cnt1.db
                                                 f, /u04/rman/01Jan2015/cnt2
                                                 .dbf, /u04/rman/01Jan2015/c
                                                 nt3.dbf
control_management_pack_access       string      DIAGNOSTIC+TUNING
SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
/u04/rman/01Jan2015/system.272.845039815


export ORACLE_SID=erp1226

-bash-4.1$ mv initerp1226.ora initerp1226.ora_orig
-bash-4.1$ cp initERP122_Source.ora initerp1226.ora
-bash-4.1$ vi initerp1226.ora
-bash-4.1$ grep -i control_files initerp1226.ora
*.control_files='/u04/ERP122_Source/db/data/control1_erp1226.dbf','/u04/ERP122_Source/db/data/control2_erp1226.dbf'
-bash-4.1$ grep -i db_name initerp1226.ora
*.db_name='erp1226'
-bash-4.1$



b.Rename trace file to ctrl.sql
vi ctrl.sql
Change “REUSE” to “SET”
Change “ERP122_Source” to “erp1226”
Change “noresetlogs” to “resetlogs”
Change “archivelog” to “noarchivelog”

after rename cont_01Jan2015_u04_dev.sql

c.cp initERP122_Source.ora initerp1226.ora

VVIMP

Change db_name=erp1226 in initerp1226.ora
change the controlfile names in initerp1226.ora

racle@erp3client01:/u01/app/oracle/product/11.2.0/dbhome_1/dbs$ grep -i control_file initerp1226.ora
*.control_files='/u04/rman/01Jan2015/cnt_d1.dbf','/u04/rman/01Jan2015/cnt_d2.dbf','/u04/rman/01Jan2015/cnt_d3.dbf'

oracle@erp3client01:/u01/app/oracle/product/11.2.0/dbhome_1/dbs$ grep -i db_name initerp1226.ora
*.db_name='erp1226'


d.export ORACLE_SID=erp1226

(Eg controlfile erp1226
CREATE CONTROLFILE SET DATABASE "erp1226" RESETLOGS FORCE LOGGING NOARCHIVELOG
    MAXLOGFILES 32
    MAXLOGMEMBERS 5
    MAXDATAFILES 512
    MAXINSTANCES 8
    MAXLOGHISTORY 20157
LOGFILE
)


SQL> startup nomount pfile='/u01/erp1226/db/dbhome_1/dbs/initerp1226.ora'
ORACLE instance started.

Total System Global Area 2.6732E+10 bytes
Fixed Size                  2194184 bytes
Variable Size            3221226744 bytes
Database Buffers         2.3153E+10 bytes
Redo Buffers              355704832 bytes
SQL> show parameter control_files

NAME                                 TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
control_files                        string
/u04/ERP122_Source/db/data/contro
l1_erp1226.dbf, /u04/erp122
5/db/data/control2_erp1226.dbf



SQL> startup nomount pfile='/u01/erp1226/db/dbhome_1/dbs/initerp1226.ora'
ORACLE instance started.

Total System Global Area 2.6732E+10 bytes
Fixed Size                  2194184 bytes
Variable Size            3221226744 bytes
Database Buffers         2.3153E+10 bytes
Redo Buffers              355704832 bytes
SQL> show parameter control_files

NAME                                 TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
control_files                        string
/u04/ERP122_Source/db/data/contro
l1_erp1226.dbf, /u04/erp122
5/db/data/control2_erp1226.dbf
SQL> !pwd
/export/home/oracle/CLONE_erp1226

SQL> @cont_05Feb2018_u04_erp1226.sql

Control file created.

SQL> alter database open resetlogs;

Database altered.

SQL> select name from v$database;

NAME
---------
erp1226

SQL> select status from v$instance;

STATUS
------------
OPEN

SQL> show parameter control_files

NAME                                 TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
control_files                        string
/u04/ERP122_Source/db/data/contro
l1_erp1226.dbf, /u04/erp122
5/db/data/control2_erp1226.dbf



SQL> select member from v$logfile;

MEMBER
--------------------------------------------------------------------------------
/u04/ERP122_Source/db/onlinelog/group_17.9627.902761661
/u04/ERP122_Source/db/onlinelog/group_17.9626.902761663
/u04/ERP122_Source/db/onlinelog/group_16.9629.902761653
/u04/ERP122_Source/db/onlinelog/group_16.9628.902761655
/u04/ERP122_Source/db/onlinelog/group_15.9631.90276164

e.sqlplus "/as sysdba"

startup nomount

SQL> startup nomount
ORACLE instance started.

Total System Global Area 7484866560 bytes
Fixed Size                  2196112 bytes
Variable Size            1627397488 bytes
Database Buffers         5519704064 bytes
Redo Buffers              335568896 bytes
SQL> show parameter control_files

NAME                                 TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
control_files                        string
/u04/rman/01Jan2015/cnt_dev
1.dbf, /u04/rman/01Jan2015/
cnt_dev2.dbf, /u04/rman/08D
ec2015/cnt_dev3.dbf


SQL> @contr_01Jan2015_u04_DEV.sql

Control file created.




alter database open resetlogs;


SQL> show parameter control_files

NAME                                 TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
control_files                        string
/u04/rman/erp1226/data/contro
l_d1.dbf, /u04/rman/erp1226/d
ata/control_d2.dbf
SQL> select status from v$instance;

STATUS
------------------------------------
STARTED

SQL> @contr_dev_u04_03Jan2018.sql

Control file created.



SQL> alter database open resetlogs;

Database altered.

SQL> select name from v$database;

NAME
---------
erp1226

SQL> select status from v$instance;

STATUS
------------
OPEN

Once the Database is recovered verify the Datafiles,Redolog files.


SQL> select name from v$database;

NAME
---------
erp1226

SQL> select status from v$instance;

STATUS
------------
OPEN

SQL> select member from v$logfile;

MEMBER
--------------------------------------------------------------------------------
/u04/ERP122_Source/db/onlinelog/group_17.9627.902761661
/u04/ERP122_Source/db/onlinelog/group_17.9626.902761663
/u04/ERP122_Source/db/onlinelog/group_16.9629.902761653
/u04/ERP122_Source/db/onlinelog/group_16.9628.902761655
/u04/ERP122_Source/db/onlinelog/group_15.9631.902761641
/u04/ERP122_Source/db/onlinelog/group_15.9630.902761643
/u04/ERP122_Source/db/onlinelog/group_14.9633.902761631
/u04/ERP122_Source/db/onlinelog/group_14.9632.902761631
/u04/ERP122_Source/db/onlinelog/group_13.9635.902761623
/u04/ERP122_Source/db/onlinelog/group_13.9634.902761623
/u04/ERP122_Source/db/onlinelog/group_12.9637.902761701

MEMBER
--------------------------------------------------------------------------------
/u04/ERP122_Source/db/onlinelog/group_12.9636.902761701
/u04/ERP122_Source/db/onlinelog/group_11.9639.902761589
/u04/ERP122_Source/db/onlinelog/group_11.9638.902761591

14 rows selected.



SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
/u04/ERP122_Source/db/data/system.9939.902760745
/u04/ERP122_Source/db/data/system.10052.902761115
/u04/ERP122_Source/db/data/system.9931.902761091
/u04/ERP122_Source/db/data/system.10016.902761093
/u04/ERP122_Source/db/data/system.10050.902761123
/u04/ERP122_Source/db/data/system.10007.902761093
/u04/ERP122_Source/db/data/system.10048.902761123
/u04/ERP122_Source/db/data/system.10040.902761139
/u04/ERP122_Source/db/data/system.10049.902761107
/u04/ERP122_Source/db/data/system.9998.902761021
/u04/ERP122_Source/db/data/system.10042.902761123



Create temporary tablespace and make it default.


Once the Database is recovered verify the Datafiles,Redolog files.

select member from v$logfile;
select name from v$datafile;


SQL> select * from v$tempfile;

no rows selected

SQL> select tablespace_name from dba_tablespaces where contents='TEMPORARY';

TABLESPACE_NAME
------------------------------
TEMP11
TEMP8


create temporary tablespace and make it default.


select  name from v$datafile;
create temporary tablespace temp12 tempfile '/u04/ERP122_Source/db/data/temp12_01.dbf' size 20g;
alter database default temporary tablespace temp12;

drop tablespace temp11 including contents and datafiles;
drop tablespace temp8 including contents and datafiles;

SQL> select PROPERTY_NAME,PROPERTY_VALUE from database_properties where property_name like '%DEFAULT%';

PROPERTY_NAME
------------------------------
PROPERTY_VALUE
--------------------------------------------------------------------------------
DEFAULT_TEMP_TABLESPACE
TEMP12


CREATE SPFILE:
===============

create spfile from pfile;

SQL> create spfile from pfile;


File created.

shut immediate

Migrate Database from Filesystem to ASM location:
====================================================

Startup with SPFILE

shut immediate
startup

SQL> show parameter spfile

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
spfile                               string      /u01/erp1226/db/dbhome_1/dbs/s
                                                 pfileerp1226.ora


Migrate to ASM:
==================

ASMCMD> lsdg
State    Type    Rebal  Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks

Voting_files  Name
MOUNTED  NORMAL  N         512   4096  1048576  25165824  6296220            65536         3115342              0       

   N  DATA/

ASMCMD> cd DATA/
ASMCMD> ls
ASM/
DB_UNKNOWN/
DEVOATS/
erp1223/
erp1224/
ERP122_Source/
UPGUAT1/
spfileerp1224.ora

ASMCMD> pwd
+DATA


ASMCMD> mkdir erp1226
ASMCMD> ls
ASM/
DB_UNKNOWN/
DEVOATS/
erp1223/
erp1224/
ERP122_Source/
erp1226/
UPGUAT1/
spfileerp1224.ora

ASMCMD> cd erp1226/
ASMCMD> pwd
+DATA/erp1226

+DATA/erp1226
ASMCMD> mkdir CONTROLFILE
ASMCMD> ls
CONTROLFILE/


B. Migrate Database from Filesystem to ASM location

Startup with SPFILE
SQL> show parameter spfile

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
spfile                               string      /u01/erp1226/db/dbhome_1/dbs/s
                                                 pfileerp1226.ora
                             

SQL> show parameter control_files

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
control_files                        string      /u04/ERP122_Source/db/data/contro
                                                 l1_erp1226.dbf, /u04/erp122
                                                 5/db/data/control2_erp1226.dbf


alter system set db_recovery_file_dest='+DATA';
alter system set db_create_file_dest='+DATA';

alter system set control_files='+DATA/erp1226/CONTROLFILE/ctrlerp1226_05Feb2018.dbf' scope=spfile;
SQL> show parameter control_files

SQL> show parameter control_files

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
control_files                        string      /u04/ERP122_Source/db/data/contro
                                                 l1_erp1226.dbf, /u04/erp122
                                                 5/db/data/control2_erp1226.dbf

             
shut immediate
startup nomount

SQL> show parameter control_files

NAME                                 TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
control_files                        string
+DATA/erp1226/controlfile/ctrl
erp1226_05feb2018.dbf





(WE HAVE TO DO THIS STEP AFTER DB CLONE)

(optionally workaround step

SQL> alter system set local_listener='erp1226' scope=spfile;

System altered.

SQL> shut immediate
ORA-01507: database not mounted


ORACLE instance shut down.

SQL> startup nomount
ORACLE instance started.

Total System Global Area 2.6732E+10 bytes
Fixed Size                  2194184 bytes
Variable Size            3556771064 bytes
Database Buffers         2.2817E+10 bytes
Redo Buffers              355704832 bytes
SQL> show parameter %LOCAL%

NAME                                 TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
local_listener                       string
ERP122_Source
log_archive_local_first              boolean
TRUE
parallel_force_local                 boolean
FALSE


)

SQL> alter system register;

System altered.

-bash-4.1$ crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
               ONLINE  ONLINE       host           STABLE
ora.LISTENER.lsnr
               ONLINE  ONLINE       host           STABLE
ora.asm


)

Registering listener:
========================

-bash-4.1$ srvctl status listener -l listener
srvctl stop listener -l listener

srvctl modify listener -l listener -endpoints 1521,1596,1548,1561,1701
srvctl start listener -l listener

-bash-4.1$ srvctl status listener -l listener
Listener LISTENER is enabled
Listener LISTENER is running on node(s): host



Restore controlfile using RMAN from backup location taken earlier.


rman target /


RMAN> restore controlfile from '/u04/ERP122_Source/db/data/control1_erp1226.dbf';

-bash-4.1$ echo $ORACLE_SID
erp1226
-bash-4.1$ rman target /

Recovery Manager: Release 11.2.0.4.0 - Production on Fri Feb 5 19:17:54 2018

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

connected to target database: erp1226 (not mounted)

RMAN> restore controlfile from '/u04/ERP122_Source/db/data/control1_erp1226.dbf';

Starting restore at 05-FEB-16
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=6373 device type=DISK

channel ORA_DISK_1: copied control file copy
output file name=+DATA/erp1226/controlfile/ctrlerp1226_05feb2018.dbf
Finished restore at 05-FEB-16



RMAN> alter database mount;

ASMCMD> cd CONTROLFILE/
ASMCMD> ls -l
Type         Redund  Striped  Time             Sys  Name
CONTROLFILE  HIGH    FINE     FEB 05 19:00:00  N    ctrlerp1226_05feb2018.dbf =>

+DATA/erp1226/CONTROLFILE/current.3903.903035901
CONTROLFILE  HIGH    FINE     FEB 05 19:00:00  Y    current.3903.903035901
ASMCMD> pwd
+DATA/erp1226/CONTROLFILE



Note:Eg: Test with 1 datafile:
======

RMAN> backup as copy datafile 1 format '+DATA';

Starting backup at 05-FEB-16
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=6137 device type=DISK
channel ORA_DISK_1: starting datafile copy
input datafile file number=00001 name=/u04/ERP122_Source/db/data/system.9939.902760745
output file name=+DATA/erp1226/datafile/system.10315.903036027 tag=TAG20180205T192025 RECID=1 STAMP=903036055
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:35
channel ORA_DISK_1: starting datafile copy
copying current control file
output file name=+DATA/erp1226/controlfile/backup.10316.903036061 tag=TAG20180205T192025 RECID=2 STAMP=903036062
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
including current SPFILE in backup set
channel ORA_DISK_1: starting piece 1 at 05-FEB-16
channel ORA_DISK_1: finished piece 1 at 05-FEB-16
piece handle=+DATA/erp1226/backupset/2018_02_05/nnsnf0_tag20180205t192025_0.10317.903036063 tag=TAG20180205T192025

comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 05-FEB-16



verify:
=========

DATAFILE/
ASMCMD> cd DATAFILE/
ASMCMD> ls -l
Type      Redund  Striped  Time             Sys  Name
DATAFILE  MIRROR  COARSE   FEB 05 19:00:00  Y    SYSTEM.10315.903036027
ASMCMD> pwd
+DATA/erp1226/DATAFILE

Remove the file tested:
========================

ASMCMD> pwd
+DATA/erp1226/DATAFILE
ASMCMD> ls -ltr
WARNING:option 'r' is deprecated for 'ls'
please use 'reverse'

Type      Redund  Striped  Time             Sys  Name
DATAFILE  MIRROR  COARSE   FEB 05 19:00:00  Y    SYSTEM.10315.903036027
ASMCMD> rm SYSTEM.10315.903036027
ASMCMD> pwd
+DATA/erp1226/DATAFILE
ASMCMD> cd ..
ASMCMD> pwd
+DATA/erp1226
ASMCMD> ls
BACKUPSET/
CONTROLFILE/


Now start the Migration of erp1226 Db from filesystem to ASM:
================================================================

rman target / log rman_05Feb2018.log trace rman_05Feb2018.trc debug
set echo on;
debug on;

run {
allocate channel ch1 device type disk;
allocate channel ch2 device type disk;
allocate channel ch3 device type disk;
allocate channel ch4 device type disk;
allocate channel ch5 device type disk;
allocate channel ch6 device type disk;
allocate channel ch7 device type disk;
backup as copy database format  '+DATA';
release channel ch1;
release channel ch2;
release channel ch3;
release channel ch4;
release channel ch5;
release channel ch6;
release channel ch7;
}


RMAN> exit

rman target /


RMAN> switch database to copy;



RMAN> alter database open;

Create the temporary tablespace and make it default

create temporary tablespace temp14 tempfile '+DATA03' size 30g;
alter database default temporary tablespace temp14;

drop tablespace temp12 including contents and datafiles;

set lines 200
col member for a60
select member,group# from v$logfile;
select group#,status from v$log;

Drop the unused groups and Drop the Thread2 groups

select group#,thread#,status from v$log;
alter system switch logfile;
alter database drop logfile group 12;


select group#,thread#,status from v$log;
alter database disable thread 2;
alter database drop logfile group 13;
alter database drop logfile group 14;


Verify and add groups:
select group#,thread#,status from v$log;

    GROUP#    THREAD# STATUS
---------- ---------- ----------------
         1          1 ACTIVE
         2          1 CURRENT
         3          1 UNUSED

alter database add logfile group 1 size 500m;
alter database add logfile group 6 size 500m;
alter database add logfile group 13 size 500m;
alter system switch logfile;

Drop the inactive group

SQL> select group#,thread#,status from v$log;

    GROUP#    THREAD# STATUS
---------- ---------- ----------------
         1          1 INACTIVE
         2          1 ACTIVE
         3          1 CURRENT
         4          1 UNUSED
         5          1 UNUSED
         6          1 UNUSED

6 rows selected.

 alter database drop logfile group 1;
alter system switch logfile;


Verify 3 Redo logs Groups exists.

SQL> select group#,thread#,status from v$log;

    GROUP#    THREAD# STATUS
---------- ---------- ----------------
         2          1 ACTIVE
         3          1 ACTIVE
         4          1 CURRENT
         5          1 UNUSED
         6          1 UNUSED


alter database open

Check the status of Redolog files and make sure all are active

select group#,thread#,status from v$log;
SQL> select group#,thread#,status from v$log;

    GROUP#    THREAD# STATUS
---------- ---------- ----------------
         2          1 INACTIVE
         3          1 INACTIVE
         4          1 CURRENT
         5          1 UNUSED
         6          1 UNUSED

SQL> alter database drop logfile group 2;

Database altered.

SQL> alter database drop logfile group 3;

Database altered.

SQL> select group#,thread#,status from v$log;

    GROUP#    THREAD# STATUS
---------- ---------- ----------------
         4          1 CURRENT
         5          1 UNUSED
         6          1 UNUSED

SQL> alter system switch logfile;

System altered.

SQL> select group#,thread#,status from v$log;

    GROUP#    THREAD# STATUS
---------- ---------- ----------------
         4          1 ACTIVE
         5          1 CURRENT
         6          1 UNUSED

SQL> alter system switch logfile;

System altered.

SQL> alter system switch logfile;

System altered.

SQL> select member from v$logfile;

MEMBER
--------------------------------------------------------------------------------
+DATA/erp1226/onlinelog/group_6.12953.903043737
+DATA/erp1226/onlinelog/group_6.12952.903043739
+DATA/erp1226/onlinelog/group_7.12951.903043757
+DATA/erp1226/onlinelog/group_7.12950.903043757
+DATA/erp1226/onlinelog/group_8.12949.903043759
+DATA/erp1226/onlinelog/group_8.12948.903043761
+DATA/erp1226/onlinelog/group_9.12947.903043763
+DATA/erp1226/onlinelog/group_9.12946.903043765
+DATA/erp1226/onlinelog/group_10.12945.903043767
+DATA/erp1226/onlinelog/group_10.12944.903043769
+DATA/erp1226/onlinelog/group_1.12963.903043559

MEMBER
--------------------------------------------------------------------------------
+DATA/erp1226/onlinelog/group_1.12962.903043561
+DATA/erp1226/onlinelog/group_2.12961.903043579
+DATA/erp1226/onlinelog/group_2.12960.903043581
+DATA/erp1226/onlinelog/group_3.12959.903043583
+DATA/erp1226/onlinelog/group_3.12958.903043583
+DATA/erp1226/onlinelog/group_4.12957.903043587
+DATA/erp1226/onlinelog/group_4.12956.903043589
+DATA/erp1226/onlinelog/group_5.12955.903043591
+DATA/erp1226/onlinelog/group_5.12954.903043593

20 rows selected.

select group#,status from v$log;

This completes the database restore and recovery.

Step 7 b:Post Clone Steps on Database node

Now the Database is up. We need to Source the Environment and complete the post clone steps.


a.Execute FND_CONC_CLEAN to cleanup nodes entries of source Database.( as 'apps' user)
                           exec fnd_conc_clone.setup_clean;

b.Run Autoconfig
$ORACLE_HOME/appsutil/scripts/$CONTEXT_NAME
./adautocfg.sh


-bash-4.1$ ./adautocfg.sh
Enter the APPS user password:
The log file for this session is located at: /u01/erp1226/db/dbhome_1/appsutil/log/erp1226_host/02052136/adconfig.log

AutoConfig is configuring the Database environment...

AutoConfig will consider the custom templates if present.
        Using ORACLE_HOME location : /u01/erp1226/db/dbhome_1
        Classpath                   :

:/u01/erp1226/db/dbhome_1/jdbc/lib/ojdbc6.jar:/u01/erp1226/db/dbhome_1/appsutil/java/xmlparserv2.jar:/u01/erp1226/db/dbhom

e_1/appsutil/java:/u01/erp1226/db/dbhome_1/jlib/netcfg.jar:/u01/erp1226/db/dbhome_1/jlib/ldapjclnt11.jar

        Using Context file          : /u01/erp1226/db/dbhome_1/appsutil/erp1226_host.xml

Context Value Management will now update the Context file

        Updating Context file...COMPLETED

        Attempting upload of Context file and templates to database...COMPLETED

Updating rdbms version in Context file to db112
Updating rdbms type in Context file to 64 bits
Configuring templates from ORACLE_HOME ...

AutoConfig completed successfully.



c.Execute post clone script on Database for Data Masking


--VIMP check fnd_nodes uat-cm2
--Change the node name
update fnd_concurrent_queues set node_name='orace_erp_host' WHERE node_name in 'uat-CM2';
commit;

UPDATE XXerp_MISSN_CAPABILITY_DTLS set MISSION_CAP_STATUS_CODE = '1234';
commit;

--For Faster adcfgclone Execution
Execute package body APPS.WF_CLONE .


This completes the Database Cloning


(Note :Before starting application run cmclean.sql and than start applications )

Before starting Application cloning, modify FND Template as below for faster application tier cloning:
cd $FND_TOP/admin/driver/
vi fndtmpl.drv
txkWfClone.sh INSTE8_SETUP to txkWfClone.sh INSTALL_SETUP


Step 8: APPS CLONING:(erp1226 :12.2.5)
=======
Log on to the Run Edition File System in the Target System as the applmgr user and enter the following commands:
$ cd <COMMON_TOP>/clone/bin


cd /erpapp/erp1226/fs1/EBSapps/comn/clone/bin
total 561
-rwxr-xr-x   1 applmgr  dba         5101 Feb  2 15:22 adchkutl.sh
-rwxr-xr-x   1 applmgr  dba        95774 Feb  4 17:44 adclone.pl
-rwxr-xr-x   1 applmgr  dba        47194 Feb  4 17:44 adclonectx.pl
-rwxr-xr-x   1 applmgr  dba       125060 Feb  4 17:44 adcfgclone.pl
-rwxr-xr-x   1 applmgr  dba        10050 Feb  4 17:44 adaddnode.pl
applmgr@orace_erp_host:~/erp1226/fs1/EBSapps/comn/clone/bin$ pwd

*******NOTE BELOW STEP of adcfgclone should be done in VNC SESSION to avoid disconnection of session ***************

$ perl adcfgclone.pl appsTier dualfs

At the prompt:
"Do you want to add a node (yes/no)", enter the value as 'no'.
At the prompt:
"Target System Base Directory", enter the location of the base directory. =>/erpapp/erp1226
Provide:
the new port pools for the Run Edition File System and the Patch Edition File System need to be provided.



When asked the question:
"Do you want to startup the Application Services for <TWO_TASK>? (y/n)" you should answer 'y' if you do not need

to perform any further actions and 'n'  =>choose n

if there are other pending actions which need the Application services to be down.

Different logs are created for Run Edition and Patch Edition Cloning. The log files are created in the following

directories in the Run Edition File System:
<INST_TOP>/admin/log/clone/run
<INST_TOP>/admin/log/clone/patch



applmgr@orace_erp_host:~/erp1226/fs1/EBSapps/comn/clone/bin$ pwd
/erpapp/erp1226/fs1/EBSapps/comn/clone/bin
applmgr@orace_erp_host:~/erp1226/fs1/EBSapps/comn/clone/bin$ uname -a
SunOS orace_erp_host 5.11 11.1 sun4v sparc sun4v
applmgr@orace_erp_host:~/erp1226/fs1/EBSapps/comn/clone/bin$ echo $TWO_TASK

You have new mail in /var/mail/applmgr
applmgr@orace_erp_host:~/erp1226/fs1/EBSapps/comn/clone/bin$ ls -ltr
total 561
-rwxr-xr-x   1 applmgr  dba         5101 Feb  2 15:22 adchkutl.sh
-rwxr-xr-x   1 applmgr  dba        95774 Feb  4 17:44 adclone.pl
-rwxr-xr-x   1 applmgr  dba        47194 Feb  4 17:44 adclonectx.pl
-rwxr-xr-x   1 applmgr  dba       125060 Feb  4 17:44 adcfgclone.pl
-rwxr-xr-x   1 applmgr  dba        10050 Feb  4 17:44 adaddnode.pl
applmgr@orace_erp_host:~/erp1226/fs1/EBSapps/comn/clone/bin$ perl adcfgclone.pl appsTier dualfs

                     Copyright (c) 2002, 2015 Oracle Corporation
                        Redwood Shores, California, USA

                        Oracle E-Business Suite Rapid Clone

                                 Version 12.2

                      adcfgclone Version 120.63.12020000.56

Enter the APPS password :

Enter the Weblogic AdminServer password :

Do you want to add a node (yes/no) [no] : no


Running: Context clone...

Log file located at /erpapp/erp1226/fs1/EBSapps/comn/clone/bin/CloneContext_0205214743.log

Provide the values required for creation of the new APPL_TOP Context file.

Target System Hostname (virtual or normal) [orace_erp_host] :

Target System Database SID : erp1226

Target System Database Server Node [orace_erp_host] : host

Target System Database Domain Name [erpdom.local] :

Target System Base Directory : /erpapp/erp1226

Target System Base Directory set to /erpapp/erp1226

Target System Current File System Base set to /erpapp/erp1226/fs1

Target System Other File System Base set to /erpapp/erp1226/fs2

Target System Fusion Middleware Home set to /erpapp/erp1226/fs1/FMW_Home
Target System Other File System Fusion Middleware Home set to /erpapp/erp1226/fs2/FMW_Home

Target System Web Oracle Home set to /erpapp/erp1226/fs1/FMW_Home/webtier
Target System Other File System Web Oracle Home set to /erpapp/erp1226/fs2/FMW_Home/webtier

Target System Appl TOP set to /erpapp/erp1226/fs1/EBSapps/appl
Target System Other File System Appl TOP set to /erpapp/erp1226/fs2/EBSapps/appl

Target System COMMON TOP set to /erpapp/erp1226/fs1/EBSapps/comn
Target System Other File System COMMON TOP set to /erpapp/erp1226/fs2/EBSapps/comn

Target System Instance Home Directory [/erpapp/erp1226] :

Target System Base Directory set to /erpapp/erp1226

Target System Current File System Base set to /erpapp/erp1226/fs1

Target System Other File System Base set to /erpapp/erp1226/fs2

Target System Fusion Middleware Home set to /erpapp/erp1226/fs1/FMW_Home
Target System Other File System Fusion Middleware Home set to /erpapp/erp1226/fs2/FMW_Home

Target System Web Oracle Home set to /erpapp/erp1226/fs1/FMW_Home/webtier
Target System Other File System Web Oracle Home set to /erpapp/erp1226/fs2/FMW_Home/webtier

Target System Appl TOP set to /erpapp/erp1226/fs1/EBSapps/appl
Target System Other File System Appl TOP set to /erpapp/erp1226/fs2/EBSapps/appl

Target System COMMON TOP set to /erpapp/erp1226/fs1/EBSapps/comn
Target System Other File System COMMON TOP set to /erpapp/erp1226/fs2/EBSapps/comn

Target System Instance Home Directory [/erpapp/erp1226] :

Target System Current File System Instance Top set to /erpapp/erp1226/fs1/inst/apps/erp1226_orace_erp_host

Do you want to preserve the Display [uat-cm2:0.0] (y/n)  : n

Target System Display [orace_erp_host:0.0] :

Target System Root Service [enabled] :

Target System Web Entry Point Services [enabled] :

Target System Web Application Services [enabled] :

Target System Batch Processing Services [enabled] :

Target System Other Services [disabled] :

Do you want the target system to have the same port values as the source system (y/n) [y] ? : n

Target System Port Pool [0-99] : 20

Checking the port pool 20
done: Port Pool 20 is free
Report file located at /erpapp/erp1226/fs1/inst/apps/erp1226_orace_erp_host/admin/out/portpool.lst

UTL_FILE_DIR on database tier consists of the following directories.

1. /usr/tmp
2. /usr/tmp
3. /u01/app/oracle/product/11.2.0/dbhome_1/appsutil/outbound/
4. /u04/oradata/utl_dir
Choose a value which will be set as APPLPTMP value on the target node [1] :

Choose a value which will be set as APPLPTMP value on the target node [1] :
The new APPL_TOP context file has been created :
  /erpapp/erp1226/fs1/inst/apps/erp1226_orace_erp_host/appl/admin/erp1226_orace_erp_host.xml
Check Clone Context logfile /erpapp/erp1226/fs1/EBSapps/comn/clone/bin/CloneContext_0205214743.log for details.

Creating Patch file system context file.....

Log file located at /erpapp/erp1226/fs1/EBSapps/comn/clone/bin/CloneContextPatch_0205215144.log

Target System Other File System Instance Top set to /erpapp/erp1226/fs2/inst/apps/erp1226_orace_erp_host

Target System Port Pool [0-99] : 21

Checking the port pool 21
done: Port Pool 21 is free
Report file located at /erpapp/erp1226/fs2/inst/apps/erp1226_orace_erp_host/admin/out/portpool.lst
The new APPL_TOP context file has been created :
  /erpapp/erp1226/fs2/inst/apps/erp1226_orace_erp_host/appl/admin/erp1226_orace_erp_host.xml
Check Clone Context logfile /erpapp/erp1226/fs1/EBSapps/comn/clone/bin/CloneContextPatch_0205215144.log for details.

FMW Pre-requisite check log file location : /erpapp/erp1226/fs1/EBSapps/comn/clone/FMW/logs/prereqcheck.log
Running: FMW pre-req check...

Configuring: Run file system....
LogFile located at /erpapp/erp1226/fs1/inst/apps/erp1226_erp3-dev-zc1/admin/log/clone/run/RCloneApplyAppstier_02052152.log



Checking the port pool 21
done: Port Pool 21 is free
Report file located at /erpapp/erp1226/fs2/inst/apps/erp1226_orace_erp_host/admin/out/portpool.lst
The new APPL_TOP context file has been created :
  /erpapp/erp1226/fs2/inst/apps/erp1226_orace_erp_host/appl/admin/erp1226_orace_erp_host.xml
Check Clone Context logfile /erpapp/erp1226/fs1/EBSapps/comn/clone/bin/CloneContextPatch_0205215144.log for details.

FMW Pre-requisite check log file location : /erpapp/erp1226/fs1/EBSapps/comn/clone/FMW/logs/prereqcheck.log
Running: FMW pre-req check...

Configuring: Run file system....
LogFile located at /erpapp/erp1226/fs1/inst/apps/erp1226_erp3-dev-zc1/admin/log/clone/run/RCloneApplyAppstier_02052152.log

Configuring: Patch file system....
LogFile located at /erpapp/erp1226/fs1/inst/apps/erp1226_erp3-dev-

zc1/admin/log/clone/patch/RCloneApplyAppstier_02052237.log

AutoConfig has completed with errors for .patch

Do you want to startup the Application Services for erp1226? (y/n) [n] : n

Services not started


Step 9:Validation steps:
====================

applmgr@orace_erp_host:~/erp1226$ pwd
/erpapp/erp1226
applmgr@orace_erp_host:~/erp1226$ ls -ltr
total 23
drwxr-xr-x   5 applmgr  dba            5 Feb  5 21:55 fs1
drwxr-xr-x   4 applmgr  dba            4 Feb  5 22:19 fs_ne
drwxr-xr-x   5 applmgr  dba            5 Feb  5 23:17 fs2
-rw-r--r--   1 applmgr  dba         6465 Feb  5 23:36 EBSapps.env
applmgr@orace_erp_host:~/erp1226$ . EBSapps.env run

  E-Business Suite Environment Information
  ----------------------------------------
  RUN File System           : /erpapp/erp1226/fs1/EBSapps/appl
  PATCH File System         : /erpapp/erp1226/fs2/EBSapps/appl
  Non-Editioned File System : /erpapp/erp1226/fs_ne


  DB Host: host.erpdom.local  Service/SID: erp1226


  Sourcing the RUN File System ...




applmgr@orace_erp_host:~/erp1226/fs1/inst/apps/erp1226_orace_erp_host/ora/10.1.2/network/admin$ cp tnsnames.ora

tnsnames.ora_05Feb2018bkup
applmgr@orace_erp_host:~/erp1226/fs1/inst/apps/erp1226_orace_erp_host/ora/10.1.2/network/admin$ vi tnsnames.ora
applmgr@orace_erp_host:~/erp1226/fs1/inst/apps/erp1226_orace_erp_host/ora/10.1.2/network/admin$ tnsping erp1226

TNS Ping Utility for Solaris: Version 10.1.0.5.0 - Production on 05-FEB-2018 23:56:33

Copyright (c) 1997, 2003, Oracle.  All rights reserved.

Used parameter files:
/erpapp/erp1226/fs1/inst/apps/erp1226_orace_erp_host/ora/10.1.2/network/admin/sqlnet_ifile.ora


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DEscRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=host.erpdom.local)(PORT=1541)) (CONNECT_DATA=

(SERVICE_NAME=erp1226) (INSTANCE_NAME=erp1226)))
OK (0 msec)
applmgr@orace_erp_host:~/erp1226/fs1/inst/apps/erp1226_orace_erp_host/ora/10.1.2/network/admin$ sqlplus apps

SQL*Plus: Release 10.1.0.5.0 - Production on Fri Feb 5 23:56:44 2018

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

Enter password:

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Data Mining
and Real Application Testing options

SQL> select name from v$database;

NAME
---------
erp1226

SQL> select status from v$instance;

STATUS
------------
OPEN




applmgr@orace_erp_host:~$ cd /erpapp/erp1226
applmgr@orace_erp_host:~/erp1226$ pwd
/erpapp/erp1226
applmgr@orace_erp_host:~/erp1226$ ls -ltr
total 23
drwxr-xr-x   5 applmgr  dba            5 Feb  5 21:55 fs1
drwxr-xr-x   4 applmgr  dba            4 Feb  5 22:19 fs_ne
drwxr-xr-x   5 applmgr  dba            5 Feb  5 23:17 fs2
-rw-r--r--   1 applmgr  dba         6465 Feb  5 23:36 EBSapps.env
applmgr@orace_erp_host:~/erp1226$ . EBSapps.env run

  E-Business Suite Environment Information
  ----------------------------------------
  RUN File System           : /erpapp/erp1226/fs1/EBSapps/appl
  PATCH File System         : /erpapp/erp1226/fs2/EBSapps/appl
  Non-Editioned File System : /erpapp/erp1226/fs_ne


  DB Host: host.erpdom.local  Service/SID: erp1226


  Sourcing the RUN File System ...



Step 10: Start the Target Applications after cloning 
======================================

a.Take a backup of context file
b.vi $CONTEXT_FILE
c.Change the load balancing related parameters
d.adstrtal.sh apps/<password>

Step 11:Post Cloning Steps on Application node:
=====================================

a)Change Logo

Upload the below logo to $OA_MEDIA/erp_logo.jpg

/erpapp/apps/apps_st/comn/java/classes/oracle/apps/media
-bash-4.1$ ls -ltr erp_sc.jpg
-rw-r--r--   1 applmgr  dba         6008 Mar 14  2014 erp_logo.jpg
-bash-4.1$ mv erp_logo.jpg erp_logo.jpg_old
-bash-4.1$ cp /erpapp/erp_sc.jpg .
-bash-4.1$ ls -ltr erp_logo.jpg
-rw-r--r--   1 applmgr  dba        16907 Apr 16 12:33 erp_logo.jpg


b)Execute below wfntfqup.sql from apps node:
==============================================

Disable Workflow Notification Mailer. Set the override address from OAM. Purge pending notifications.

sqlplus apps/apps @$FND_TOP/patch/115/sql/wfntfqup.sql apps apps applsys

cd $FND_TOP/patch/115/sql

cd /erpapp/apps/apps_st/appl/fnd/12.0.0/patch/115/sql/
sqlplus apps/apps

@wfntfqup.sql



-bash-4.1$ cd $FND_TOP/patch/115/sql/
-bash-4.1$ ls -l wfntfqup.sql
-rwxr-xr-x   1 applmgr  dba        11862 Oct 28  2010 wfntfqup.sql
-bash-4.1$ sqlplus apps

SQL*Plus: Release 10.1.0.5.0 - Production on Fri Jan 16 12:34:19 2015

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

Enter password:

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options

SQL> @wfntfqup.sql



Take backup of context file before configuring load balancing in APPS NODE

c) Change the URLs previously in Context File configured for Load Balancing in PROD and run autoconfig.

s_external_url http://erpdev.erp.ae:8020
s_login_page http://erpdev.erp.ae:8020/OA_HTML/AppsLogin
s_webentryhost erpdev
s_webentrydomain erp.ae



If we are working in Oracle SuperCluster Environment we need to start the application with the below commands:
=====================================================================================================================

We need to start the erpuat applications with 'clrg' command as 'root' user from APPS NODE1:


# clrg online cm-rg
# clrg online opmn-rg
#cluster status

(OR)
Source the Apps Environment.

cd $ADMIN_SCRIPTS_HOME
./adstral.sh

Step 12: Post clonning steps after Application Tier cloning. 

Changing password:
======================

a)system and sys database users:
----------------------------------

alter user system identified by welcome1;

alter user sys identified by welcome1;


FNDCPASS apps/welcome1 0 Y system/welcome1 SYSTEM APPLSYS new_pass


b)sysadmin password:
=========================

FNDCPASS apps/welcome1 0 Y system/welcome1 USER SYSADMIN welcome6

FNDCPASS apps/welcome1 0 Y system/welcome1 USER rafi welcome6


FNDCPASS apps/welcome1 0 Y system/welcome1 USER sysadmin Welcome789


c)Postclone steps for to clean up FND_NODES entries for concurrent Manager:
==========================

Execute cmclean.sql by connecting with 'apps' user.

To make sure all the Database and Applications service comes up smoothly follow below approach

Shut down the Application tier services.

On App node:
------------

cd $ADMIN_scRIPTS_HOME
./adstpall.sh


d) Execute autoconfig on apps node than on db node and than again on apps node

On DB node:
----------
cd $ORACLE_HOME/appsutil/scripts/$CONTEXT_NAME

./adautocfg.sh

On App node:
------------

cd $ADMIN_scRIPTS_HOME
./adautocfg.sh

ONLY if require do below steps:

C )Update the Node information for all Concurrent Managers from Concurrent Manager Define to current node name and

Restart concurrent managers using adcmctl.sh


d) Postclone steps for discoverer:
====================================


1)Update Discoverer URL in Context File ( Application Tier - s_disco_url):


2)For Discoverer Copy the new DBC file and change the name in lower case on Discoverer Server


/erpapp/erp1226/fs1/inst/apps/erp1226_orace_erp_host/appl/fnd/12.0.0/secure

applmgr@orace_erp_host:~/erp1226/fs1/inst/apps/erp1226_orace_erp_host/appl/fnd/12.0.0/secure$ scp erp1226.dbc

oracle@198.17.18.142:/u01/app/oracle/Middleware/fmw11gr1/discodom_1/config/discovererr/discovererr_discodom_1
Password:
erp1226.dbc          100% |*********************************************************************************



e)Postclone steps for Colour change at site level:
===================================================

1)Change the profile options:
Site Name to “DEV Instance”
Java Color schme to a color which is not same as PROD


IN POST CLONE FOR UPGRADE ENV Please do cutom sync driver steps:

add Below to adop_sync.drv

applmgr@uat-cm2:/erpapp/ERP122_Source/upgrade/fs_ne/EBSapps/appl/ad/custom$ view adop_sync.drv
applmgr@uat-cm2:/erpapp/ERP122_Source/upgrade/fs_ne/EBSapps/appl/ad/custom$ pwd
/erpapp/ERP122_Source/upgrade/fs_ne/EBSapps/appl/ad/custom



f) Begin Customization

##Customization for erp
rsync -zr %s_current_base%/EBSapps/comn/java/classes/xxadat %s_other_base%/EBSapps/comn/java/classes
rsync -zr %s_current_base%/EBSapps/comn/java/classes/xxad %s_other_base%/EBSapps/comn/java/classes
rsync -zr %s_current_base%/EBSapps/comn/java/classes/xxerp %s_other_base%/EBSapps/comn/java/classes


#Copy Starts
mkdir -p %s_other_base%/EBSapps/comn/java/classes/com/excel4apps
rsync -zr %s_current_base%/EBSapps/comn/java/classes/com/excel4apps %s_other_base%/EBSapps/comn/java/classes/com
rsync -zr %s_current_base%/EBSapps/appl/xxe4a %s_other_base%/EBSapps/appl
rsync -zr %s_current_base%/EBSapps/appl/xxe4arw %s_other_base%/EBSapps/appl
rsync -zr %s_current_base%/EBSapps/appl/fnd/12.0.0/admin/template/custom %s_other_base

%/EBSapps/appl/fnd/12.0.0/admin/template
cp %s_current_base%/EBSapps/comn/java/classes/customall.jar %s_other_base%/EBSapps/comn/java/classes



*****Now Login in separate putty session,source the Envrionmement for APPS DEV and Start all the application services:


applmgr@orace_erp_host:~$ . APPSERPDEV_orace_erp_host.env
applmgr@orace_erp_host:~$ cd $ADMIN_scRIPTS_HOME
applmgr@orace_erp_host:~/inst/apps/ERPDEV_orace_erp_host/admin/scripts$ ./adstrtal.sh

You are running adstrtal.sh version 120.15.12010000.3




f)Postclone steps for Colour change at site level:
===================================================

Change the profile options:
Site Name to “DEV Instance”
Java Color scheme to a color which is not same as PROD



g) Validation steps  and Sanity checks after Doing ERP Cloning:
=============================================================

1)Check all the Concurrent managers are up and reduce the number of processes for Standard managers.

2)Submit the Active user or Active Responsibilities Concurrent request.

3)Check the discovererer URL for viewer and Desktop and share DBC file with team.

4)Make sure to verify logs after starting the ERP Applications


5)Submit Gather schema stats request for all schemas to improve performance of ERP applications


This completes clonning of Database and Applications for Oracle EBS 12.2 .

Enjoy Apps DBA Tasks...

Thanks,













Completed Oracle Access Manager Implementation Specialist Certification.

$
0
0
Dear All,

By the grace of Allah I have completed Oracle Access Manager Implementation Specialist Certification.




It feels great to do certification on one of the Product which you work more and practice lot . After doing lot of hard work and with lot of enthusiasm I'm happy to achieve it.

Efforts required to do this certification:

1) Read the concepts and implementation docs from Oracle Documentation, Blogs, Youtube , linkedin and from all places on the internet about Oracle Access Manager

2) The challenging part about this certification is we need to study about lot of products like ( Oracle Access Manager,Oracle Adaptive Access Manager, Oracle Entitlements Server, Oracle Identity Federation, Mobile and Social ) to name few if you are planning to prepare for this certification and pass it.

Thanks,

Rafi

Migrating Oracle ERP Applications from one server to another in Windows Environment

$
0
0
Hi DBAs,

Below are the steps required to be done in order to migrate Oracle ERP Applications from one server to another. These steps are successfully tested in my Test Oracle ERP Servers.

Note 1: My source and Target Environment is EBS 12.1.3
Note 2: This is applicable for Windows 2008 R2 server but somewhat similar steps can be applicable to Windows 2012 R2 or Windows 2016 server)
Note 3:All the steps are done on the Target Application Server
Note 4:Make sure you change the source server name and assign the same name to target Windows server in order to have backup of source Application server and not much changes is required in CONTEXT FILE if you have same Drives on Source and Target Application server.
Note 5: Please change server names,Directory structure and Environment files based on your servers.
as one need to spend some time in order to do this activity successfully.

Preparatory Steps:

1. Install MKS Toolkit on Target Server( we can also install CYGWIN ) . It is recommended to install MKS from Oracle Support.
2.Install VISUAL Studio of same Windows OS version(2008 R2).

Planning and Execution Steps:

1.Shutdown Oracle ERP Applications(adstpall.sh) Source(ERP APPLICATIONS)
Command prompt Run As Administrator: Source Env file APPSERP.env
cd $ADMIN_SCRIPTS_HOME
./adstpall.sh

2.Check firewall and connectivity from DB to Apps Tier and verify the port is open using telnet on Target(ERP APPLICATIONS)

telnet hostname port
telnet testhost 1521
connected means it is working fine, if it says trying add the firewall rules and allow port and try again.

3.Copy Apps Files from Source to target Target Server (Initiate copy From Target Server)

4.Modify PATH Environment variable to execute perl K:\oracle\apps\tech_st\10.1.3\perl\5.8.3\bin\MSWin32-x86-multi-thread; => In First line and remove rest of the variables if exists.
5.Change compatibility to Windows Server 2003 SP1 in K:\oracle\apps\tech_st\10.1.2\oui\bin for setup.exe 

6.Change compatibility to Windows Server 2003 SP1 in K:\oracle\apps\tech_st\10.1.3\oui\bin for setup.exe
7.Make sure INST_TOP is renamed on new Target(ERP APPLICATIONS)

(Run as Administrator on new command prompt).
cd K:\oracle\apps\apps_st\comn\clone\bin
 Execute  perl adcfgclone.pl appsTier
8.Verify logs of adcfgclone and confirm no errors exists.
adcfgclone logs Applications tier:

$COMMON_TOP/clone/bin/CloneContext_<timestamp>.log
This log shows the entries selected during execution of adcfgclone command
9.Execute autoconfig on Apps Tier and copy env file APPSERP_testhost.cmd from backup to APPL_TOP

cd $ADMIN_SCRIPTS_HOME
./adautocfg.sh

10.Replace ADMIN Directory(K:\oracle\inst\apps\ERP APPLICATIONS_testhost\ora\10.1.2\network) with admin_bkp and Reboot the Target(ERP APPLICATIONS)
11.Compare Services properties in old and new server and set accordingly. Restart the new Target (ERP APPLICATIONS) Application server

12.Compare Firewall rules in old and New  PROD Apps servers and copy accordingly and Validate with telnet

13.Execute cmclean(K:\oracle)
14.Start the Applications (adstral.sh) Target (ERP APPLICATIONS)

cd $ADMIN_SCRIPTS_HOME
./adstral.sh

Post Execution and Sanity Checks:
1.Configure Oracle Workflow inbound and outbound server settings and validate workflow mailer is up and running and test mailer
2.Complete Sanity checks for Database ,Applications, Concurrent Programs ,SSO and Workflow Mailer

Enjoy Apps DBA Tasks...


Thanks,


Rafi

Configure Database option is greyed out in DBCA

$
0
0
Hi DBAs,

Recently we faced a strange issue which became a show stopper for us.

Database Configuration Assistant was not showing the database and  Configure Database Options and it was greyed out(disabled).

 We tried setting up ORACLE_SID and ORACLE_HOME and ran dbca but it was not showing the database and the above option was  greyed out.

We checked and verified the oratab file for correct entry for the database we were trying to access from dbca but still it was greyed out.

To resolve this issue I utilized all my experience and knowledge at last was able to resolve it. The issue was simple and silly but sometimes small things matter.

Below are steps used to resolve this issue:

Step 1:

Make sure the ORACLE_HOME is some thing like below : /u01/app/oracle/12.1/dbhome in /etc/oratab file

(Note we should not have '/' after dbhome)

Step 2:

Check the value of the configuration of  RAC Database:

srvctl config database -d testdb1

Where: testdb1=> DB Name.

Now change the ORACLE_HOME value as below:

srvctl modify database -o /u01/app/oracle/12.1/dbhome

Where:  /u01/app/oracle/12.1/dbhome=> ORACLE HOME location.

Make sure you don't use '/' after dbhome.

Step 3:

Now launch 'dbca' bye setting correct Environment.

Now you should see the option enabled for Configure Database Options after launching dbca.


Enjoy troubleshooting Database....

Happy DBA Learning...


Thanks,

Rafi





Completed Oracle 12c Database OCP Certification

Implement Transparent Data Encryption(TDE) using fast offline conversion for Oracle Databases

$
0
0
Hi DBAs,

It is important we share what we do in DBAs life to help ourself and others. I've done many implementation projects recently related with Database Security. One of the them was TDE which was pending in my blog posts . I've decided to share the steps involve in implementing Transparent Data Encrption(TDE) using fast offline conversion method for entire Oracle Database. We can follow the similar steps in Oracle RAC or Standalone Database Except few additional things need to done for Oracle RAC Database.


Prerequisite:

Make sure you have applied the patch 23315889(fast offline conversion patch) if you are on Oracle 11g Database or latest CPU patches are applied which already include all the mandatory patches before proceeding with below steps.

Below steps can be used for Oracle 11g,12c , 18c, 19c Databases

Step 1: Take a Backup of  Database using RMAN.

Make sure you have full Database backup using RMAN and Validated.

Step 2: Take Backup of  $TNS_ADMIN ( $ORACLE_HOME/network/admin) Directory

Please take backup of network configuration files which includes backup of  $TNS_ADMIN Directory of $ORACLE_HOME in all the DB nodes.

Step 3: Make Sure You Inform Application owners or End User for Downtime

Please make sure you take sufficient downtime based on the size of your Database if it is Production Environment . If you have identical test environment as Production , we have very good opportunity to make a note of timings at each step of implementation phase. It will surely be useful.

Step 4:Shut down applications

If you are using Oracle ERP Applications make sure all the applications are stopped with adstpall.sh script or other applications it needs to be completed stoped.

Step 5:Create a specific wallet by specifying the wallet location in the  sqlnet.ora file(sqlnet_ifile.ora in Oracle ERP Environment).

$ORACLE_HOME/network/admin is the location where you find network configuration files( sqlnet.ora or sqlnet_ifile.ora(In Oracle ERP) needs to be modified).

sqlnet.or or sqlnet_ifile.ora contents :

ENCRYPTION_WALLET_LOCATION =
(SOURCE = (METHOD = FILE)
(METHOD_DATA =
(DIRECTORY = /home/oracle/wallet/$ORACLE_SID)
)
)

Note: DIRECTORY location like above makes it easier to copy wallet files across multiple databases. However we are free to have any location of our choice.

Step 6: Restart Database instance and Listener for Oracle RAC Environment running on node1 and node2  or Listener and DB in Standalone DB using SQLPLUS

After completing step 1 to step5 perform step 6 mandatory. This is important to detect the wallet location by Database.

Make sure you bring down all the instances and databases services from all the other nodes if you are working in RAC Database Environment. All the steps need to be performed from DB node1 or Primary Database Instance and all the other instances and Database services are down in other servers.


DB node1:
=====================
[root@dbhost01 bin]# su - oracle
[oracle@dbhost01 ~]$ srvctl status database -d testdb
Instance testdb1 is running on node dbhost01
Instance testdb2 is not running on node dbhost02
[oracle@dbhost01 ~]$ srvctl status listener
Listener LISTENER is enabled
Listener LISTENER is running on node(s): dbhost01,dbhost02
[oracle@dbhost01 ~]$ srvctl stop instance -i testdb1 -d testdb
[oracle@dbhost01 ~]$ srvctl status database -d testdb
Instance testdb1 is not running on node dbhost01
Instance testdb2 is not running on node dbhost02
[oracle@dbhost01 ~]$ srvctl stop listener -n dbhost01
[oracle@dbhost01 ~]$ srvctl status listener
Listener LISTENER is enabled
Listener LISTENER is running on node(s): dbhost02
[oracle@dbhost01 ~]$ srvctl start listener -n dbhost01
[oracle@dbhost01 ~]$ srvctl status listener
Listener LISTENER is enabled
Listener LISTENER is running on node(s): dbhost01,dbhost02
[oracle@dbhost01 ~]$ srvctl start instance -i testdb1 -d testdb
[oracle@dbhost01 ~]$ srvctl status database -d testdb
Instance testdb1 is running on node dbhost01
Instance testdb2 is not running on node dbhost02
[oracle@dbhost01 ~]$


Step 7:Create the wallet and Set the Master Encryption Key.

Initiate a new SQL*Plus session.
This causes the changes to sqlnet.ora and the environment variable to be picked
up by the new session.

SQL> select name from v$database;

NAME
---------
testdb

SQL> select status from v$instance;

STATUS
------------
OPEN

Set the Master Encryption Key.

Check below:
==========

SQL> select instance_name,status,database_status from gv$instance;

INSTANCE_NAME    STATUS       DATABASE_STATUS
---------------- ------------ -----------------
testdb1        OPEN         ACTIVE


SQL> select * from gv$encryption_wallet order by inst_id;

   INST_ID WRL_TYPE
---------- --------------------
WRL_PARAMETER
--------------------------------------------------------------------------------
STATUS
------------------
         1 file
/home/oracle/wallet/$ORACLE_SID
CLOSED

(or)

select * from v$encryption_wallet;


SQL> ALTER SYSTEM SET ENCRYPTION KEY IDENTIFIED BY "Mywork8t5_mydbacomp";

System altered.

NOTE: Ensure that the password string is contained in double quotation marks ("").


Step 8: Shutdown & Startup  the database normally, ensuring that the wallet is open: 


[oracle@dbhost01 ~]$ sqlplus "/as sysdba"

SQL> select name from v$database;

NAME
---------
testdb

SQL>shut immediate

SQL*Plus: Release 11.2.0.4.0 Production on Fri Apr 19 20:31:26 2019

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup mount
ORACLE instance started.

Total System Global Area 1.2527E+10 bytes
Fixed Size                  2264856 bytes
Variable Size            7012876520 bytes
Database Buffers         5502926848 bytes
Redo Buffers                8658944 bytes
Database mounted.

SQL> alter system set encryption wallet open identified by "Mywork8t5_mydbacomp";

System altered.

SQL> alter database open;

Database altered.

SQL> select instance_name,status,database_status from gv$instance;

INSTANCE_NAME    STATUS       DATABASE_STATUS
---------------- ------------ -----------------
testdb1        OPEN         ACTIVE


SQL>

Step 9:To configure auto login for wallet (optional), do the following

Command: orapki wallet create -wallet "/home/oracle/wallet/$ORACLE_SID" -auto_login

[oracle@dbhost01 admin]$ orapki wallet create -wallet "/home/oracle/wallet/$ORACLE_SID" -auto_login
Oracle PKI Tool : Version 11.2.0.4.0 - Production
Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.

Enter wallet password:     Mywork8t5_mydbacomp
                    
[oracle@dbhost01 admin]$

Verify autostart of Database is working as expected:
=======================================
[oracle@dbhost01 admin]$ srvctl status database -d testdb
Instance testdb1 is running on node dbhost01
Instance testdb2 is not running on node dbhost02
[oracle@dbhost01 admin]$ srvctl stop instance -i testdb1 -d testdb
[oracle@dbhost01 admin]$ srvctl status database -d testdb
Instance testdb1 is not running on node dbhost01
Instance testdb2 is not running on node dbhost02
[oracle@dbhost01 admin]$ srvctl start instance -i testdb1 -d testdb
[oracle@dbhost01 admin]$ srvctl status database -d testdb
Instance testdb1 is running on node dbhost01
Instance testdb2 is not running on node dbhost02

Step 10:Backup the wallet

Using 'cp' command copy the wallet files in separate directory and verify it.

[oracle@dbhost01 testdb1]$ pwd
/home/oracle/DBA/backup/wallet/testdb1
[oracle@dbhost01 testdb1]$ ls -ltr
total 8
-rw-------. 1 oracle oinstall 2917 Apr 19 21:00 cwallet.sso
-rw-r--r--. 1 oracle oinstall 2840 Apr 19 21:00 ewallet.p12
[oracle@dbhost01 testdb1]$


Step 11: Copy the wallet to DB node2 in the same location as DB node1.

Copy the wallet to DB node2 in the same location as DB node1 and make sure in the sqlnet.ora and sqlnet_ifile.ora file has the same location defined.

$ORACLE_HOME/network/admin is the location where you find network configuration files( sqlnet.ora or sqlnet_ifile.ora(In Oracle ERP) needs to be modified).

sqlnet.or or sqlnet_ifile.ora contents :

ENCRYPTION_WALLET_LOCATION =
(SOURCE = (METHOD = FILE)
(METHOD_DATA =
(DIRECTORY = /home/oracle/wallet/$ORACLE_SID)
)
)

oracle@dbhost01 testdb1]$ pwd
/home/oracle/wallet/testdb1
[oracle@dbhost01 testdb1]$ ls -ltr
total 8
-rw-r--r--. 1 oracle asmadmin 2840 Apr 19 20:17 ewallet.p12
-rw-------. 1 oracle oinstall 2917 Apr 19 20:47 cwallet.sso
[oracle@dbhost01 testdb1]$ scp ewallet.p12 cwallet.sso oracle@dbhost02:/home/oracle/wallet/testdb2
ewallet.p12                                                                           100% 2840     2.8KB/s   00:00
cwallet.sso                                                                           100% 2917     2.9KB/s   00:00
[oracle@dbhost01 testdb1]$


Step 12:Verify DB Instances and Services on DB node1 & DB node2.

Now you can start the instance on Database Instance and Database services on DB node2 and verify it is running.

[oracle@dbhost01 admin]$ srvctl status database -d testdb
Instance testdb1 is running on node dbhost01
Instance testdb2 is running on node dbhost02


[oracle@dbhost01 ~]$ srvctl status listener
Listener LISTENER is enabled
Listener LISTENER is running on node(s): dbhost01,dbhost02

(OR)

For Testing purpose only

We can also verify DB node2 is started after copying ewallet.p12 and cwallet.sso:
===========================================================
[oracle@dbhost02 testdb2]$ ls -ltr
total 8
-rw-r--r--. 1 oracle oinstall 2840 Apr 19 21:08 ewallet.p12
-rw-------. 1 oracle oinstall 2917 Apr 19 21:08 cwallet.sso

[oracle@dbhost02 testdb2]$ srvctl stop instance -i testdb1 -d testdb
[oracle@dbhost02 testdb2]$ srvctl status database -d testdb
Instance testdb1 is not running on node dbhost01
Instance testdb2 is not running on node dbhost02
[oracle@dbhost02 testdb2]$ srvctl start instance -i testdb2 -d testdb
[oracle@dbhost02 testdb2]$ srvctl status database -d testdb
Instance testdb1 is not running on node dbhost01
Instance testdb2 is running on node dbhost02
[oracle@dbhost02 testdb2]$


Make sure all the Database Instances and Services are Up before proceeding next step.

Verify as below:
[oracle@dbhost01 admin]$ srvctl status database -d testdb
Instance testdb1 is running on node dbhost01
Instance testdb2 is running on node dbhost02


[oracle@dbhost01 ~]$ srvctl status listener
Listener LISTENER is enabled
Listener LISTENER is running on node(s): dbhost01,dbhost02



Step 13: Find out all the Temporary and Undo Tablespaces in the Database


SQL> select name from v$database;

NAME
---------
TESTDB

SQL> select tablespace_name from dba_tablespaces where contents='TEMPORARY' and STATUS='ONLINE';

TABLESPACE_NAME
------------------------------
TEMP
PG_TEMP
MG_TEMP
TG_TEMP
TMP

SQL> select tablespace_name from dba_tablespaces where contents='UNDO' and STATUS='ONLINE';

TABLESPACE_NAME
------------------------------
UNDOTBS1
UNDOTBS2


Step 14: Create a script called tbsp_offline.sql script to bring tablespaces 
other than system, sysaux, temp and undo offline: 

cd /home/oracle/DBA/scripts/tde_scripts

$ sqlplus / as sysdba
SQL>set heading off
 SQL>set linesize 150
 SQL>spool tbsp_offline.sql
SQL>select 'alter tablespace '||tablespace_name|| ' offline;' from dba_tablespaces where tablespace_name not in ('SYSTEM','SYSAUX','TEMP','PG_TEMP','MG_TEMP','TG_TEMP','TMP','UNDOTBS1','UNDOTBS2','MY_TEMP');
SQL>exit
Now edit the tbsp_offline.sql script to remove all lines other than alter tablespace commands.

(testdb):
-------------------
Don't delete line just comment extra lines as done below:

[oracle@dbhost01 tde_scripts]$ ls -ltr
total 36
-rw-r--r--. 1 oracle oinstall  2181 Apr 17 15:00 tbsp_offline_orig_17Apr2019.sql
-rw-r--r--. 1 oracle oinstall 12025 Apr 17 15:07 datafiles_encrypt_orig_17Apr2019.sql
-rw-r--r--. 1 oracle oinstall  2175 Apr 17 15:21 tbsp_offline.sql
-rw-r--r--. 1 oracle oinstall  2150 Apr 17 15:21 tbsp_online.sql
-rw-r--r--. 1 oracle oinstall 12031 Apr 17 15:23 datafiles_encrypt.sql
[oracle@dbhost01 tde_scripts]$ cat tbsp_offline.sql
--SQL> select 'alter tablespace '||tablespace_name|| ' offline;' from dba_tablespaces where tablespace_name not in ('SYSTEM','SYSAUX','TEMP','PG_TEMP','MG_TEMP','TG_TEMP','TMP','UNDOTBS1','UNDOTBS2','MY_TEMP');

alter tablespace USERS offline;
alter tablespace TEST1_TS offline;
alter tablespace TEST2_TS offline;
alter tablespace TEST3_TS offline;
alter tablespace TEST4_TS offline;
alter tablespace TEST5_TS offline;
alter tablespace TEST6_TS offline;


--7 rows selected.

Step 15: Create script for to Encrypt datafiles of Tablespaces

Create a script called datafiles_encrypt.sql containing the commands to encrypt your datafiles,
except system, sysaux, temp and undo.Include all TEMP and UNDO tablespace names from the database in your TESTDB instance, in the exclusion list.

$ sqlplus / as sysdba
SQL>set heading off
 SQL>set linesize 150
 SQL>spool datafiles_encrypt.sql
 SQL>select 'alter database datafile ''' || file_name ||''' encrypt;' from dba_data_files where tablespace_name not in (('SYSTEM','SYSAUX','TEMP','PG_TEMP','MG_TEMP','TG_TEMP','TMP','UNDOTBS1','UNDOTBS2','MY_TEMP');

SQL>exit

Verify the Script.

[oracle@dbhost01 tde_scripts]$ cat datafiles_encrypt.sql
--SQL> select 'alter database datafile ''' || file_name ||''' encrypt;' from dba_data_files where tablespace_name not in --('SYSTEM','SYSAUX','TEMP','PG_TEMP','MG_TEMP','TG_TEMP','TMP','UNDOTBS1','UNDOTBS2','MY_TEMP');
alter database datafile '+DATA/testdb/datafile/user_ts_ts01.dbf' encrypt;                                       
alter database datafile '+DATA/testdb/datafile/test_01_ts.dbf' encrypt;                                           
alter database datafile '+DATA/testdb/datafile/test_02_ts.dbf' encrypt;                                         
alter database datafile '+DATA/testdb/datafile/test_03_ts.dbf' encrypt;                                             
alter database datafile '+DATA/testdb/datafile/test_04_ts.dbf' encrypt;                                             
alter database datafile '+DATA/testdb/datafile/test_05_ts.dbf' encrypt;                                           
alter database datafile '+DATA/testdb/datafile/test_06_ts.dbf' encrypt;     

--7 rows selected.                                     
                                       
                                               
Step 16: Create a script called tbsp_online.sql script to bring Encrypted tablespaces online now 


--SQL> spool off
[oracle@dbhost01 tde_scripts]$ cat tbsp_online.sql
--SQL> select 'alter tablespace '||tablespace_name|| ' online;' from dba_tablespaces where tablespace_name not in ('SYSTEM','SYSAUX','TEMP','ace_TEMP','STAR_TEMP','EMGR_TEMP','TMP','UNDOTBS1','UNDOTBS2','EAGLE_TEMP_TS');

alter tablespace USERS online;
alter tablespace TEST1_TS online;
alter tablespace TEST2_TS online;
alter tablespace TEST3_TS online;
alter tablespace TEST4_TS online;
alter tablespace TEST5_TS online;
alter tablespace TEST6_TS online;


--7 rows selected.

[oracle@dbhost01 tde_scripts]$


Step 17: Execute the script for bringing the tablespaces offline

cd /home/oracle/DBA/scripts/tde_scripts

sqlplus "/as sysdba"

SQL> select name from v$database;

NAME
---------
testdb

SQL> @tbsp_offline.sql

Tablespace altered.

Step 18: Execute the script for Encrypting the Datafiles of the tablespaces.

cd /home/oracle/DBA/scripts/tde_scripts

sqlplus "/as sysdba"

SQL> select name from v$database;

NAME
---------
testdb

SQL> @datafiles_encrypt.sql

Database altered.

Note: If we have a large number of datafiles , we can parallelize their encryption by creating sub-scripts  and running the sub-scripts from parallel SQL*Plus sessions.

Step 19: Execute the script for bringing the tablespaces online

cd /home/oracle/DBA/scripts/tde_scripts

sqlplus "/as sysdba"

SQL> select name from v$database;

NAME
---------
testdb

SQL> @tbsp_online.sql

Tablespace altered.


Note: Some tablespaces may take time to show as online. These are probably tablespaces that are encrypted.

*Check the status of tablespace encryption by connecting to SQL*Plus / as sysdba
and running the query shown:

$ sqlplus / as sysdba

SQL>select tablespace_name, encrypted from dba_tablespaces;

Note: Be aware that unless an auto login keystore is created, every time the database is started up the wallet will need to be opened.


Note: In Oracle 12c we can use below command to create auto login

$ sqlplus / as sysdba
$ administer key management create AUTO_LOGIN keystore from keystore "<Wallet Path>" identified by "<Wallet Password>";

Please refer below link for more details on it:

https://oracle-base.com/articles/12c/multitenant-transparent-data-encryption-tde-12cr1


Step 20: Bounce database and listener , verify auto login is working .

Verify the Database , Listener and Do Complete Health check of the Database.
Start the Applications.
Validate Database connectivity with TOAD, SQL Developer and every component is working as expected.
Make sure all the instances and Database services are up & running. If you have DR Database copy the wallet to same location as Primary Database and Sync it and Verify the DR DB is in sync with Primary.

sqlplus "/as sysdba"

SQL*Plus: Release 12.1.0.2.0 Production on Tue Mar 5 17:12:22 2019

Copyright (c) 1982, 2017, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup
ORACLE instance started.

Total System Global Area 5167382528 bytes
Fixed Size                  3056376 bytes
Variable Size            1056967944 bytes
Database Buffers         4093640704 bytes
Redo Buffers               13717504 bytes
Database mounted.
Database opened.
SQL> select tablespace_name, encrypted from dba_tablespaces;

TABLESPACE_NAME                ENC
------------------------------ ---
SYSTEM                         NO
SYSAUX                         NO
UNDOTBS1                       NO
TEMP                           NO
USERS                          YES

SQL> SET LINESIZE 200
SQL> COLUMN wrl_parameter FORMAT A50
SQL> SELECT * FROM gv$encryption_wallet;

WRL_TYPE             WRL_PARAMETER                                      STATUS                         WALLET_TYPE          WALLET_OR FULLY_BAC     CON_ID
-------------------- -------------------------------------------------- ------------------------------ -------------------- --------- --------- ----------
FILE                 /home/oracle/wallet/testdb1 OPEN                                    SINGLE    NO                 0
FILE                 /home/oracle/wallet/testdb2 OPEN 
                   
SQL> select active_state,instance_Name,status from gv$instance;

ACTIVE_ST INSTANCE_NAME    STATUS
--------- ---------------- ------------
NORMAL    egimsuat1          OPEN
NORMAL    egimsuat2          OPEN

SQL> select open_mode from v$database;

OPEN_MODE
--------------------
READ WRITE


Enjoy DBA learning and doing tasks....


Thanks,

Rafi





adcfgclone failing with Error: AFTER PASTEBINARY COMMENV.SH FILE IS POPULATED WITH INCORRECT JAVA_HOME PATH in EBS 12.2

$
0
0
Hi DBAs,

I'm happy to share my knowledge and experience based out of one cloning experience in EBS 12.2 Environment. I faced this issue while doing cloning. Sharing my experience .
I'm making this post short and sweet.


Adcfgclone failing with Error: AFTER PASTEBINARY COMMENV.SH FILE IS POPULATED WITH INCORRECT JAVA_HOME PATH in EBS 12.2

Oracle Support notes:
=====================
12.2 E-Business Suite Applications Manager Rapidclone Fails With Error 'Oracle.as.t2p.exceptions.FMWT2PPasteConfigException: Paste Config In Offline Mode Failed', 'CLONE-20454 Execution of wlst script' And 'CLONE-20365 Error in executing WebLogic script' (Doc ID 2545694.1)

Resolution: Apply patch 27212806 to MIDDLE_WARE/oracle_common Home

Zero downtime patch can be applied directly .


[applmgr@erpap02 WLS_ERROR_patch]$ echo $TWO_TASK
ERP_BALANCE
[applmgr@erpap02 WLS_ERROR_patch]$ echo $RUN_BASE
/u01/oracle/ERP/fs1
[applmgr@erpap02 WLS_ERROR_patch]$ export ORACLE_HOME=/u01/oracle/ERP/fs1/FMW_Home/oracle_common
[applmgr@erpap02 WLS_ERROR_patch]$ cd 28708563/

[applmgr@erpap02 28708563]$ export ORACLE_HOME=/u01/oracle/ERP/fs1/FMW_Home/oracle_common
[applmgr@erpap02 28708563]$ /u01/oracle/ERP/fs1/FMW_Home/oracle_common/OPatch/opatch version
OPatch Version: 11.1.0.12.9

OPatch succeeded.
[applmgr@erpap02 28708563]$ /u01/oracle/ERP/fs1/FMW_Home/oracle_common/OPatch/opatch lsinventory|grep 28708563
Patch  28708563     : applied on Sun Jun 02 02:03:34 AST 2019
[applmgr@erpap02 28708563]$ cd ..
[applmgr@erpap02 WLS_ERROR_patch]$ cd 27212806/
[applmgr@erpap02 27212806]$ ls -ltr
total 8
drwxr-xr-x. 4 applmgr oinstall   31 Jul  3 14:12 etc
drwxr-xr-x. 3 applmgr oinstall   18 Jul  3 14:12 files
-rw-r--r--. 1 applmgr oinstall 7248 Jul  3 14:12 README.txt
[applmgr@erpap02 27212806]$ /u01/oracle/ERP/fs1/FMW_Home/oracle_common/OPatch/opatch apply
Oracle Interim Patch Installer version 11.1.0.12.9
Copyright (c) 2020, Oracle Corporation.  All rights reserved.


Oracle Home       : /u01/oracle/ERP/fs1/FMW_Home/oracle_common
Central Inventory : /u01/oracle/oraInventory
   from           : /u01/oracle/ERP/fs1/FMW_Home/oracle_common/oraInst.loc
OPatch version    : 11.1.0.12.9
OUI version       : 11.1.0.11.0
Log file location : /u01/oracle/ERP/fs1/FMW_Home/oracle_common/cfgtoollogs/opatch/27212806_Jul_03_2020_14_14_39/apply2020-07-03_14-14-39PM_1.log


OPatch detects the Middleware Home as "/u01/oracle/ERP/fs1/FMW_Home"

Applying interim patch '27212806' to OH '/u01/oracle/ERP/fs1/FMW_Home/oracle_common'
Verifying environment and performing prerequisite checks...
All checks passed.
Provide your email address to be informed of security issues, install and
initiate Oracle Configuration Manager. Easier for you if you use your My
Oracle Support Email address/User Name.
Visit http://www.oracle.com/support/policies.html for details.
Email address/User Name:

You have not provided an email address for notification of security issues.
Do you wish to remain uninformed of security issues ([Y]es, [N]o) [N]:  y



Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = '/u01/oracle/ERP/fs1/FMW_Home/oracle_common')


Is the local system ready for patching? [y|n]
y
User Responded with: Y
Backing up files...

Patching component oracle.as.common.clone, 11.1.1.9.0...

Verifying the update...
Patch 27212806 successfully applied
Log file location: /u01/oracle/ERP/fs1/FMW_Home/oracle_common/cfgtoollogs/opatch/27212806_Jul_03_2020_14_14_39/apply2020-07-03_14-14-39PM_1.log

OPatch succeeded.
[applmgr@erpap02 27212806]$ /u01/oracle/ERP/fs1/FMW_Home/oracle_common/OPatch/opatch lsinventory|grep 27212806
Patch  27212806     : applied on Fri Jul 03 14:14:52 AST 2020
     27212806
[applmgr@erpap02 27212806]$


Happy Apps DBA learning

Thanks,

Rafi

PMP Success Journey of Melanie Project Manager

$
0
0
Melanie Lorenzo, PMP® achieved PMP with all above target in all Domain. She attended 1-1 training with me few months back. I'm confident, she will excel in her project management career. #PMP #project management career #Excel PMP# . Please connect with me on my whatsapp: +919611128317 to get more details about PMI PMP ATP training.

In this short video I have described How Melanie achieved PMP and she can enhance this knowledge and skills to build Career as Project Manager. She has shared trips and tricks to pass PMP. If your are interested to achieve PMP and enhance your project management. Please connect with me on Whatsapp no: +919611128317 My Online Learning Portal: https://www.gain2excel.com/My Personal Website: https://rafiuddinalvi.com/ Every 2 months we have PMI PMP ATP associated bootcamp.

https://youtube.com/watch?v=rU1GqoBnESE&feature=share

https://youtu.be/rU1GqoBnESE


Thanks,


Rafi


Viewing all 59 articles
Browse latest View live


Latest Images