Syed Saad Ali

Oracle ACE Pro

Oracle Solution Architect

Oracle E-Business Suite

Oracle Cloud Infrastructure

Oracle Fusion Middleware

Oracle Database Administration

Oracle Weblogic Administration

Syed Saad Ali

Oracle ACE Pro

Oracle Solution Architect

Oracle E-Business Suite

Oracle Cloud Infrastructure

Oracle Fusion Middleware

Oracle Database Administration

Oracle Weblogic Administration

Home

About Me

Technically-sophisticated professional with extensive experience in updating server security, executing routine back-ups, and designing and implementing tests of the system to address issues with accessing data

  • Adept at leading the planning, designing, developing, testing, and deploying efficient solutions within Oracle EBS system, in order to satisfy strategic, financial, and operations needs of the organization.
  • Skilled in planning and managing successful projects, mitigating risks, controlling costs, and directing project teams. Instrumental in monitoring routine maintenance of system, implementing the ERP systems, and approving budget.
  • Proven success in analyzing business processes/process re-engineering and recommending solutions. Deft at establishing IT service continuity management strategies, disaster recovery plans and associated test procedures of each critical functional area of the organization.
  • Age: 36
  • Residence: Pakistan
  • Freelance: Available
  • Address: Karachi, PAKISTAN
My Services
Oracle E-Business Suite Upgrade
Oracle E-Business Suite Migration
Oracle Database Upgrade or Migrate
Oracle Maximum Availability Architecture
Performance Evaluation
Pricing
Hire Me On Upwork
$ 35 Hour
  • Database Administration
  • Oracle E-Business Suite Administration
  • Configuration, Administration, Cloning, Patching, Migrating, Support, Maintenance, Monitoring, tuning and capacity planning, User Management, Backup/Recovery Management
Hire Me on Fiverr
$ 35 Hour
  • Database Administration
  • Oracle E-Business Suite Administration
  • Configuration, Administration, Cloning, Patching, Migrating, Support, Maintenance, Monitoring, tuning and capacity planning, User Management, Backup/Recovery Management
Hire Team
$ 40 Hour
  • Database Administration
  • Oracle E-Business Suite Administration
  • Configuration, Administration, Cloning, Patching, Migrating, Support, Maintenance, Monitoring, tuning and capacity planning, User Management, Backup/Recovery Management

Resume

Resume
Experience
Senior Apps DBA
2022- Present
Senior Apps DBA
Computer & Systems Engineering Company
My role includes infrastructure support, capacity planning, installation, configuration, database design, and migration, up gradation, performance monitoring, security,  database backups, data recovery plan, and procedures including application server administration
Lead Infrastructure Consultant
2020-2021
Lead Infrastructure Consultant
ITANZ Group
Managed Oracle cloud infrastructure, compute, storage, networking, connectivity, and edge service, database management, analytics, integration, and Oracle weblogic clustering environment over Oracle Cloud IAAS.  Collaborated with the Oracle corporation staff for offering technical support to diagnose and troubleshoot common problems.
Professional Freelancer
2020 - 2022
Professional Freelancer
Upwork Inc.
Collaborated with Clients for the Task Related to Oracle Database, Oracle E-Business Suite, Oracle Cloud Infrastructure, Oracle Weblogic
Assistant Director (Databases)
2015-2020
Assistant Director (Databases)
Pakistan Civil Aviation Authority
Managed ERP for implementing the structures effectively, while limiting the resources consumed in the planning process. Improved IT/business processes and investigations to resolve the user’s issues as well as offered user’s training to help the user in operating the system in efficient way.
Education
Newports Institute Of Communication & Economics
2008 - 2011
Newports Institute Of Communication & Economics
Pakistan

Newports Institute Of Communication & Economics offers a B.S. in Computer Science.

Certificate
Oracle University
2013
Oracle University
USA

Oracle E-Business Suite R12 Financials Certified Expert  Consultant, PAYABLES 

Certificate
Oracle University
2014
Oracle University
USA

Oracle E-Business Suite R12 Applications Database Administrator Certified Professional 

Certificate
Oracle University
2011
Oracle University
USA

Oracle Database 11g Administrator Certified Professional 

Certificate
Skills
Oracle Expertise
  • Oracle Databases
  • Oracle E-Business Suite
  • Oracle Weblogic
  • Oracle Cloud Infrastructure
  • Oracle Database Appliances
Languages
  • English
System
  • Linux
    90%
  • Microsoft
    75%
  • SOLARIS
    65%
  • AIX
    60%
Knowledge
  • Installation/Configuration
  • Capacity Planning
  • Data Recovery Plan
  • Oracle Database Migration and Upgrade
  • Oracle ERP Migration and Upgrade
  • Linux and Windows management
  • Performance Evaluation

Blog

December 3, 2024 Oracle EBS ETCC OCT-2024 Update
APPS DBA

EBS Technology Codelevel Checker (ETCC) OCT-2024 Update

Introduction to ETCC

 The EBS Technology Code Level Checker (ETCC) includes two scripts that examine the Oracle Homes of both the Database and the Middle tier. These scripts serve to identify any missing bug fixes that are necessary for Oracle E-Business Suite Release 12.2. It is highly recommended by Oracle to utilize this utility in order to ensure that all the required bug fixes for the database and middle tier have been successfully installed.

The E-Business Suite T

echnology Codelevel Checker (ETCC) is a critical tool for ensuring your Oracle E-Business Suite environment meets the required patch levels for database and technology stack components. It helps identify missing patches that are mandatory for compatibility and stability, especially during upgrades like migrating to Oracle Database 19c.

 

ETCC serves two primary purposes:

  • Mandatory Patch Validation:
    It identifies missing database patches (e.g., Database Patch Set Updates (PSUs), Release Updates (RUs), and one-off patches) that are required for E-Business Suite to function optimally. This prevents potential performance or compatibility issues caused by missing patches.
  • Technology Stack Validation:
    It checks for required patches across the technology stack components, such as Oracle WebLogic Server or Fusion Middleware, ensuring the overall environment is consistent with Oracle’s recommendations.

Key Features:

  • Ease of Use:
    ETCC can be run on the database server, providing a report of missing patches without making any changes.
  • Pre-Upgrade Assistance:
    It is particularly useful during upgrades (e.g., moving to Database 19c) to verify all required patches are applied in advance, reducing downtime and troubleshooting efforts.
  • Up-to-Date Compliance:
    Oracle regularly updates ETCC to reflect the latest patch requirements, ensuring you always meet the latest standards.

How It Works:

ETCC consists of scripts that:

  • Compare your current environment with Oracle’s patch baseline.
  • Generate a detailed report listing the missing patches and instructions on how to apply them.

 

ETCC is an essential tool to streamline patching and upgrades while minimizing the risks of downtime or errors in Oracle E-Business Suite environments.

Download Latest ETCC

https://updates.oracle.com/download/17537119.html

Running ETCC on Database Tier

[oracle@ebs12214 DB_1925_patch]$ unzip -qo p17537119_R12_GENERIC.zip

[oracle@ebs12214 DB_1925_patch]$ source /home/oracle/env_PROD.env

[oracle@ebs12214 DB_1925_patch]$ ./checkDBpatch.sh

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

Validating context file: /u01/oracle/PROD/19.0.0/appsutil/PROD_ebs12214.xml
Using context file from currently set database environment:
/u01/oracle/PROD/19.0.0/appsutil/PROD_ebs12214.xml

Starting Database EBS Technology Codelevel Checker, Version 120.127
Mon Nov 25 18:34:02 PKT 2024
Log file for this session: /patches/DB_1925_patch/log/checkDBpatch_7783.log
 Identifying database release.
Database release set to 19.25.0.0.
 Multitenant identified.

 – Container database (CDB) identified via s_cdb_name is prodcdb
 – Pluggable database (PDB) identified via s_pdb_name is PROD

 Connecting to database.
Database connection successful.
 Database PROD is in READ WRITE mode.
 Identifying APPS and APPLSYS schema names.
 – APPS schema: APPS
 – APPLSYS schema: APPLSYS
 Checking for existence DB-ETCC results table.
Table to store DB-ETCC results already exists in the database.

Bugfix file ./db/onprem/txk_R1220_DB_base_bugs.xml: 120.0.12020000.85
This file will be used for identifying missing bugfixes.

Mapping file ./db/onprem/txk_R1220_DB_mappings.xml: 120.0.12020000.61
This file will be used for mapping bugfixes to patches.
+—————————————————————————————+
  Always use the latest version of ETCC available in patch 17537119,
  as new bugfixes will not be checked by older versions of the utility.
  You should apply the latest recommended RU, BP, or PSU as appropriate.
+—————————————————————————————+

Identified database DST version: 18
Checking Bugfix XML file for tag 19.25.0.0_RU.
Obtained list of bugfixes to be applied and list to be rolled back.
Validating OPatch version:
The OPatch utility is version 12.2.0.1.44.
DB-ETCC is compatible with this OPatch version.
Checking for applied patch history:
Found patch history in the inventory.
Checking mapping XML file for tag 19.25.0.0.241015DBRU.
All the required one-off bugfixes are present in database ORACLE_HOME.

+—————————————————————————————+

Finished checking fixes for database PROD: Mon Nov 25 18:34:18 PKT 2024
Log file for this session: /patches/DB_1925_patch/log/checkDBpatch_7783.log
This file should be reviewed for errors after the ETCC run.

Applying Database Patches

We have already applied the latest Database PSU, which is why no required patches are appearing in the DB ETCC report.

If you need to apply the Database PSU kindly refer to the Document attached Below Link:

Oracle Database 19c OCT-2024 Patch Set Upate Apply

Running ETCC on Application Tier

[oracle@ebs12214 DB_1925_patch]$ source /u01/oracle/PROD/EBSapps.env run

  E-Business Suite Environment Information
  —————————————-
  RUN File System           : /u01/oracle/PROD/fs1/EBSapps/appl
  PATCH File System         : /u01/oracle/PROD/fs2/EBSapps/appl
  Non-Editioned File System : /u01/oracle/PROD/fs_ne
  DB Host: ebs12214.com  Service/SID: PROD
   Sourcing the RUN File System …

[oracle@ebs12214 DB_1925_patch]$ ./checkMTpatch.sh
  +===============================================================+
 |    Copyright (c) 2005, 2024 Oracle and/or its affiliates.     |
 |                     All rights reserved.                      |
 |             Oracle E-Business Suite Release 12.2              |
 |        Application Tier EBS Technology Codelevel Checker      |
 +===============================================================+

Using context file from currently set applications environment:
/u01/oracle/PROD/fs1/inst/apps/PROD_ebs12214/appl/admin/PROD_ebs12214.xml
 Starting Application Tier EBS Technology Codelevel Checker, Version 120.0.12020000.68.
Mon Nov 25 18:37:18 PKT 2024

Log file for this session: /patches/DB_1925_patch/log/checkMTpatch_9157.log
 Bugfix XML file version: 120.0.12020000.64
This file will be used for identifying missing bugfixes.
 Mapping XML file version: 120.0.12020000.52
This file will be used for mapping bugfixes to patches.
 Checking for prerequisite bugfixes in File Edition: run
 Enter the password for the APPS user:

Connecting to database.
Database connection successful.
The installed AD.C.14 codelevel supports storing the results in the database.
Checking for existence of ETCC results table.
Table to store results already exists in database.

 ===============================================================================

Oracle Forms and Reports

===============================================================================

Now examining Oracle Forms and Reports.

 Oracle Home: /u01/oracle/PROD/fs1/EBSapps/10.1.2.

Product version: 10.1.2.3.0.
Checking required bugfixes for Oracle Forms and Reports 10.1.2.3.0.
All required bugfixes are present for Oracle Forms and Reports.
These results have been stored in the database.
 Identified DST version: 18
 Checking required bugfixes for RSF 10.1.0.5.0 in Oracle Forms.
All required bugfixes are present for RSF 10.1.0.5.0 in Oracle Forms.

These results have been stored in the database.

===============================================================================

Oracle Fusion Middleware (FMW) – Web Tier

===============================================================================

Now examining Oracle Fusion Middleware (FMW) – Web Tier.
 Oracle Home: /u01/oracle/PROD/fs1/FMW_Home/webtier.
Product version: 11.1.1.9.0.
Checking required bugfixes for FMW – Web Tier 11.1.1.9.0.
  Missing Bugfix: 29220393  -> Patch 35540062
  Missing Bugfix: 34287094  -> Patch 35540062
  Missing Bugfix: 34287122  -> Patch 35540062
  Missing Bugfix: 34637603  -> Patch 35540062
  Missing Bugfix: 34642403  -> Patch 35540062
  Missing Bugfix: 35243151  -> Patch 35540062
The above list shows missing bugfixes for FMW – Web Tier.
These results have been stored in the database.
 Identified DST version: 18

Checking required bugfixes for RSF 11.1.0.7.0 in FMW Web tier.
All required bugfixes are present for RSF 11.1.0.7.0 in FMW Web tier.
These results have been stored in the database.

===============================================================================
Oracle Fusion Middleware (FMW) – Oracle Common
===============================================================================

Now examining Oracle Fusion Middleware (FMW) – Oracle Common.
 Oracle Home: /u01/oracle/PROD/fs1/FMW_Home/oracle_common.
Product version: 11.1.1.9.0.
Checking required bugfixes for FMW – Oracle Common 11.1.1.9.0.

  Missing Bugfix: 14354533  -> Patch 33974106
  Missing Bugfix: 14282782  -> Patch 33974106
  Missing Bugfix: 33960746  -> Patch 33960746
  Missing Bugfix: 34714760  -> Patch 34714760
The above list shows missing bugfixes for FMW – Oracle Common.
These results have been stored in the database.
 ===============================================================================
Oracle WebLogic Server (WLS)
===============================================================================

Now examining WLS.
 Oracle Home: /u01/oracle/PROD/fs1/FMW_Home/wlserver_10.3.
Product version: 10.3.6.0.220719.
Note: For WLS, patches rather than bugfixes are verified.
Checking required patches for WLS 10.3.6.0.220719.
  Missing Patch ID: 34856303
  Missing Patch ID: 35476084

The above list shows missing patches for Oracle WebLogic Server.
If you have applied other Oracle WebLogic Server patches, they may have included
the bugfixes needed.Contact Oracle Support if you require assistance in
determining whether this is the case.
These results have been stored in the database.
 ===============================================================================
 Generating Patch Recommendation Summary.
===============================================================================
PATCH RECOMMENDATION SUMMARY
===============================================================================

One or more products have bugfixes missing.
The default patch recommendations to install these missing bugfixes are:
——————————————————————————-
Oracle Fusion Middleware (FMW) – Web Tier 11.1.1.9.0
——————————————————————————-

Patch 35540062
    – Filename: p35540062_111190_Linux-x86-64.zip
——————————————————————————-
Oracle Fusion Middleware (FMW) – Oracle Common 11.1.1.9.0
——————————————————————————-

  Patch 33974106
    – Filename: p33974106_111190_Generic.zip
   Patch 33960746
    – Filename: p33960746_111190_Generic.zip
   Patch 34714760
    – Filename: p34714760_111190_Generic.zip
——————————————————————————-
WLS 10.3.6.0.220719
——————————————————————————-

  Patch 34856303 [SU Patch [ENUU]]
    – Filename: p34856303_1036_Generic.zip
   Patch 35476084 [SU Patch [KMHV]]
    – Filename: p35476084_1036_Linux-x86-64.zip

 Apply the required patches and rerun this script.

 +—————————————————————————–+

A consolidated zip file with the required application tier patches is
available on My Oracle Support via:
   Patch 36616672
    – EBS RELEASE 12.2 CONSOLIDATED FMW FIXES FOR JUL 2024
 +—————————————————————————–+
 See Doc ID 2877607.1 for any special instructions regarding these patches.
Footnotes in Doc ID 2877607.1 also apply to corresponding overlay patches.
 Finished checking prerequisite patches for file edition: run.

Mon Nov 25 18:37:35 PKT 2024

 Log file for this session: /patches/DB_1925_patch/log/checkMTpatch_9157.log
===============================================================================

ETCC  Report Fusion Middleware Patches to be applied

Oracle Fusion Middleware (FMW) – Web Tier 11.1.1.9.0

——————————————————————————-

Patch 35540062

– Filename: p35540062_111190_Linux-x86-64.zip

 ——————————————————————————-

Oracle Fusion Middleware (FMW) – Oracle Common 11.1.1.9.0

——————————————————————————-

Patch 33974106

– Filename: p33974106_111190_Generic.zip

 Patch 33960746

– Filename: p33960746_111190_Generic.zip

 Patch 34714760

– Filename: p34714760_111190_Generic.zip

  ——————————————————————————-

WLS 10.3.6.0.220719

——————————————————————————-

Patch 34856303 [SU Patch [ENUU]]

– Filename: p34856303_1036_Generic.zip

 

Patch 35476084 [SU Patch [KMHV]]

– Filename: p35476084_1036_Linux-x86-64.zip

 Apply the required patches and rerun this script.

 +—————————————————————————–+

A consolidated zip file with the required application tier patches is

available on My Oracle Support via:

 Patch 36616672

– EBS RELEASE 12.2 CONSOLIDATED FMW FIXES FOR JUL 2024

 +—————————————————————————–+

Download FMW Consolidated Patch

We are going to download the latest EBS RELEASE 12.2 CONSOLIDATED FMW FIXES FOR JUL 2024 from which we can extract the patches we want to Apply on the FMW shown in the ETCC report.

Download the Patch 36616672: EBS RELEASE 12.2 CONSOLIDATED FMW FIXES FOR JUL 2024

Extract the above Patches from Patch 36616672: EBS RELEASE 12.2 CONSOLIDATED FMW FIXES FOR JUL 2024 and copied it on the Linux Directory /patches/FMW_patches

Checking Version of Http Server

Source Application Environment

[oracle@ebs12214 ~]$ . ./EBSapps.env run

E-Business Suite Environment Information
—————————————-
RUN File System           : /u01/oracle/PROD/fs1/EBSapps/appl
PATCH File System         : /u01/oracle/PROD/fs2/EBSapps/appl
Non-Editioned File System : /u01/oracle/PROD/fs_ne

 DB Host: ebs12214.com  Service/SID: PROD

 Sourcing the RUN File System …

Setting Oracle Home for HTTP Version verification

[oracle@ebs12214 ~]$ export ORACLE_HOME=/u01/oracle/PROD/fs1/FMW_Home/webtier
[oracle@ebs12214 ~]$ cd $FMW_HOME
[oracle@ebs12214 FMW_Home]$ . ./SetWebtier.env
[oracle@ebs12214 FMW_Home]$ export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/ohs/lib:$FMW_HOME/oracle_common/lib

[oracle@ebs12214 FMW_Home]$ cd $ORACLE_HOME/ohs/bin
[oracle@ebs12214 bin]$ ./httpd -version  =========(Command to Verify Http Version)
Server version: Oracle-HTTP-Server/2.2.22 (Unix)
Server built:   Jun  8 2022 00:25:48
Server label:   APACHE_11.1.1.9.0_LINUX.X64_RELEASE

 

Applying Webtier Patches

Unzip the Webtier Patch and Set Environment

[oracle@ebs12214 ~]$ cd /patches/FMW_patches
[oracle@ebs12214 FMW_patches]$ unzip -qo p35540062_111190_Linux-x86-64.zip
[oracle@ebs12214 FMW_patches]$ cd 35540062/

[oracle@ebs12214 35540062]$ export ORACLE_HOME=/u01/oracle/PROD/fs1/FMW_Home/webtier
[oracle@ebs12214 35540062]$ export PATH=$ORACLE_HOME/OPatch:$PATH

 

Apply Webtier Patch

[oracle@ebs12214 35540062]$ opatch apply

Oracle Interim Patch Installer version 11.1.0.12.9
Copyright (c) 2024, Oracle Corporation.  All rights reserved.

Oracle Home       : /u01/oracle/PROD/fs1/FMW_Home/webtier
Central Inventory : /u01/oracle/oraInventory
from           : /u01/oracle/PROD/fs1/FMW_Home/webtier/oraInst.loc
OPatch version    : 11.1.0.12.9
OUI version       : 11.1.0.11.0
Log file location : /u01/oracle/PROD/fs1/FMW_Home/webtier/cfgtoollogs/opatch/35540062_Nov_26_2024_01_04_06/apply2024-11-26_01-04-06AM_1.log

OPatch detects the Middleware Home as “/u01/oracle/PROD/fs1/FMW_Home”
Applying interim patch ‘35540062’ to OH ‘/u01/oracle/PROD/fs1/FMW_Home/webtier’
Verifying environment and performing prerequisite checks…
Conflicts/Supersets for each patch are:

Patch : 35540062
Bug Superset of 34251646
Super set bugs are:
24567879,  24681614,  20913582,  22218211,  20580842,  26752325,  33231206,  23107407,  33634304,  25191174,  30146419,  21520649,  27577851,  33890540,  32294066,  30876572,  20900385,  26837992,  32593782,  21305938,  31586302,  29857440,  19571821,  26929226,  30887923,  26101975

Interim patch 35540062 is a superset of the patch(es) [  34251646 ] in the Oracle Home
OPatch will roll back the subset patches and apply the given patch.
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/PROD/fs1/FMW_Home/webtier’)

Is the local system ready for patching? [y|n]
y
User Responded with: Y
Backing up files…
Rolling back interim patch ‘34251646’ from OH ‘/u01/oracle/PROD/fs1/FMW_Home/webtier’

 
Patching component oracle.ohs2, 11.1.1.9.0…
RollbackSession removing interim patch ‘34251646’ from inventory
 
OPatch back to application of the patch ‘35540062’ after auto-rollback.

Patching component oracle.ohs2, 11.1.1.9.0…
Verifying the update…
Patch 35540062 successfully applied
Log file location: /u01/oracle/PROD/fs1/FMW_Home/webtier/cfgtoollogs/opatch/35540062_Nov_26_2024_01_04_06/apply2024-11-26_01-04-06AM_1.log

OPatch succeeded.

Applying Common Patches

Unzip the Oracle_Common Patch and Set Environment

[oracle@ebs12214 ~]$ cd /patches/FMW_patches
[oracle@ebs12214 FMW_patches]$ unzip -qo p33974106_111190_Generic.zip
[oracle@ebs12214 FMW_patches]$ unzip -qo p33960746_111190_Generic.zip
[oracle@ebs12214 FMW_patches]$ unzip -qo p34714760_111190_Generic.zip

[oracle@ebs12214 FMW_patches]$ cd 33974106
[oracle@ebs12214 33974106]$ export ORACLE_HOME=/u01/oracle/PROD/fs1/FMW_Home/oracle_common
[oracle@ebs12214 33974106]$ export PATH=$ORACLE_HOME/OPatch:$PATH

Apply Oracle_Common Patches 

Apply Patch 33974106

[oracle@ebs12214 33974106]$ opatch apply
Oracle Interim Patch Installer version 11.1.0.12.9
Copyright (c) 2024, Oracle Corporation. All rights reserved.

Oracle Home : /u01/oracle/PROD/fs1/FMW_Home/oracle_common
Central Inventory : /u01/oracle/oraInventory
from : /u01/oracle/PROD/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/PROD/fs1/FMW_Home/oracle_common/cfgtoollogs/opatch/33974106_Nov_26_2024_01_10_02/apply2024-11-26_01-10-02AM_1.log

OPatch detects the Middleware Home as “/u01/oracle/PROD/fs1/FMW_Home”

Applying interim patch ‘33974106’ to OH ‘/u01/oracle/PROD/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/PROD/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.jrf.thirdparty.jee, 11.1.1.9.0…

Verifying the update…
Patch 33974106 successfully applied
Log file location: /u01/oracle/PROD/fs1/FMW_Home/oracle_common/cfgtoollogs/opatch/33974106_Nov_26_2024_01_10_02/apply2024-11-26_01-10-02AM_1.log

OPatch succeeded.

Apply Patch 33960746

[oracle@ebs12214 FMW_patches]$ cd 33960746
[oracle@ebs12214 33960746]$ opatch apply
Oracle Interim Patch Installer version 11.1.0.12.9
Copyright (c) 2024, Oracle Corporation. All rights reserved.

Oracle Home : /u01/oracle/PROD/fs1/FMW_Home/oracle_common
Central Inventory : /u01/oracle/oraInventory
from : /u01/oracle/PROD/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/PROD/fs1/FMW_Home/oracle_common/cfgtoollogs/opatch/33960746_Nov_26_2024_01_12_01/apply2024-11-26_01-12-01AM_1.log

OPatch detects the Middleware Home as “/u01/oracle/PROD/fs1/FMW_Home”

Applying interim patch ‘33960746’ to OH ‘/u01/oracle/PROD/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

Backing up files…

Patching component oracle.sysman.common, 10.2.0.5.6…

Patching component oracle.sysman.oms.core, 11.1.1.9.0…

Patching component oracle.sysman.plugin.ai.main.oms, 11.1.1.9.0…

Verifying the update…
Patch 33960746 successfully applied
Log file location: /u01/oracle/PROD/fs1/FMW_Home/oracle_common/cfgtoollogs/opatch/33960746_Nov_26_2024_01_12_01/apply2024-11-26_01-12-01AM_1.log

OPatch succeeded

Apply Patch 34714760

[oracle@ebs12214 FMW_patches]$ cd 34714760
[oracle@ebs12214 34714760]$ opatch apply
Oracle Interim Patch Installer version 11.1.0.12.9
Copyright (c) 2024, Oracle Corporation. All rights reserved.

Oracle Home : /u01/oracle/PROD/fs1/FMW_Home/oracle_common
Central Inventory : /u01/oracle/oraInventory
from : /u01/oracle/PROD/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/PROD/fs1/FMW_Home/oracle_common/cfgtoollogs/opatch/34714760_Nov_26_2024_01_14_41/apply2024-11-26_01-14-41AM_1.log

OPatch detects the Middleware Home as “/u01/oracle/PROD/fs1/FMW_Home”

Applying interim patch ‘34714760’ to OH ‘/u01/oracle/PROD/fs1/FMW_Home/oracle_common’
Verifying environment and performing prerequisite checks…
Patch 34714760: Optional component(s) missing : [ oracle.opss.client, 11.1.1.9.0 ]
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

Backing up files…

Patching component oracle.jrf.opss, 11.1.1.9.0…

Verifying the update…
Patch 34714760 successfully applied
Log file location: /u01/oracle/PROD/fs1/FMW_Home/oracle_common/cfgtoollogs/opatch/34714760_Nov_26_2024_01_14_41/apply2024-11-26_01-14-41AM_1.log

OPatch succeeded.

Applying Weblogic Patches

Unzip Weblogic Patch and Set Environment

[oracle@ebs12214 FMW_patches]$ unzip -qo p34856303_1036_Generic.zip

Note: Copy the extracted Patch Jar and Catalog xml file on cache_dir in bsu

[oracle@ebs12214 FMW_patches]$ cp ENUU.jar /u01/oracle/PROD/fs1/FMW_Home/utils/bsu/cache_dir
[oracle@ebs12214 FMW_patches]$ cp patch-catalog_27986.xml /u01/oracle/PROD/fs1/FMW_Home/utils/bsu/cache_dir

[oracle@ebs12214 FMW_patches]$ unzip -qo p35476084_1036_Linux-x86-64.zip
[oracle@ebs12214 FMW_patches]$ cp KMHV.jar /u01/oracle/PROD/fs1/FMW_Home/utils/bsu/cache_dir
[oracle@ebs12214 FMW_patches]$ cp patch-catalog_27940.xml /u01/oracle/PROD/fs1/FMW_Home/utils/bsu/cache_dir

[oracle@ebs12214 FMW_patches]$ source /u01/oracle/PROD/EBSapps.env run

E-Business Suite Environment Information
—————————————-
RUN File System : /u01/oracle/PROD/fs1/EBSapps/appl
PATCH File System : /u01/oracle/PROD/fs2/EBSapps/appl
Non-Editioned File System : /u01/oracle/PROD/fs_ne

DB Host: ebs12214.com Service/SID: PROD

Sourcing the RUN File System …

Apply Patch ENUU

[oracle@ebs12214 FMW_patches]$ cd $FMW_HOME/utils/bsu

[oracle@ebs12214 FMW_patches]$. /u01/oracle/PROD/fs1/FMW_Home/utils/bsu/bsu.sh -prod_dir=/u01/oracle/PROD/fs1/FMW_Home/wlserver_10.3/ -patch_download_dir=/u01/oracle/PROD/fs1/FMW_Home/utils/bsu/cache_dir/ -patchlist=ENUU  -verbose -install >> Apply_WLS_ENUU.log  =========è(Command to Install WLS Patch with BSU)

[oracle@ebs12214 bsu]$ cat Apply_WLS_ENUU.log

Checking for conflicts..

Conflict(s) detected – resolve conflict condition and execute patch installation again

Conflict condition details follow:

Patch ENUU is mutually exclusive and cannot coexist with patch(es): 9UNH

Note: Now as the Patch is conflicting with 9UNH, we have to remove 9UNH to Install ENUU Successfully

[oracle@ebs12214 bsu]$ . /u01/oracle/PROD/fs1/FMW_Home/utils/bsu/bsuremove -prod_dir=/u01/oracle/PROD/fs1/FMW_Home/wlserver_10.3/ -patchlist=9UNH -verbose > Remove_1.txt 

Now Once 9UNH removed we will install ENUU

[oracle@ebs12214 FMW_patches]$. /u01/oracle/PROD/fs1/FMW_Home/utils/bsu/bsu.sh -prod_dir=/u01/oracle/PROD/fs1/FMW_Home/wlserver_10.3/ -patch_download_dir=/u01/oracle/PROD/fs1/FMW_Home/utils/bsu/cache_dir/ -patchlist=ENUU  -verbose -install >> Apply_WLS_ENUU.log

 

Apply Patch KMHV

[oracle@ebs12214 bsu]$ . /u01/oracle/PROD/fs1/FMW_Home/utils/bsu/bsu.sh -prod_dir=/u01/oracle/PROD/fs1/FMW_Home/wlserver_10.3/ -patch_download_dir=/u01/oracle/PROD/fs1/FMW_Home/utils/bsu/cache_dir/ -patchlist=KMHV -verbose -install >> Apply_WLS_KMHV.log

[oracle@ebs12214 bsu]$ cat Apply_WLS_KMHV.log

Checking for conflicts..

Conflict(s) detected – resolve conflict condition and execute patch installation again

Conflict condition details follow:

Patch KMHV is mutually exclusive and cannot coexist with patch(es): CW7X

 Note: Now as the Patch is conflicting with CW7X, we have to remove CW7X to Install KMHV Successfully

 

[oracle@ebs12214 bsu]$ . /u01/oracle/PROD/fs1/FMW_Home/utils/bsu/bsu.sh -remove -prod_dir=/u01/oracle/PROD/fs1/FMW_Home/wlserver_10.3/ -patchlist=CW7X -verbose > Remove_2.txt

Now Once CW7X removed we will install KMHV

[oracle@ebs12214 bsu]$ . /u01/oracle/PROD/fs1/FMW_Home/utils/bsu/bsu.sh -prod_dir=/u01/oracle/PROD/fs1/FMW_Home/wlserver_10.3/ -patch_download_dir=/u01/oracle/PROD/fs1/FMW_Home/utils/bsu/cache_dir/ -patchlist=KMHV -verbose -install >> Apply_WLS_KMHV.log

Running ETCC on Application Tier Again

[oracle@ebs12214 ~]$ cd /patches/DB_1925_patch
[oracle@ebs12214 DB_1925_patch]$ source /u01/oracle/PROD/EBSapps.env run

E-Business Suite Environment Information
—————————————-
RUN File System : /u01/oracle/PROD/fs1/EBSapps/appl
PATCH File System : /u01/oracle/PROD/fs2/EBSapps/appl
Non-Editioned File System : /u01/oracle/PROD/fs_ne

DB Host: ebs12214.com Service/SID: PROD

Sourcing the RUN File System …

[oracle@ebs12214 DB_1925_patch]$ ./checkMTpatch.sh

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

Using context file from currently set applications environment:
/u01/oracle/PROD/fs1/inst/apps/PROD_ebs12214/appl/admin/PROD_ebs12214.xml

Starting Application Tier EBS Technology Codelevel Checker, Version 120.0.12020000.68.
Tue Nov 26 03:00:01 PKT 2024
Log file for this session: /patches/DB_1925_patch/log/checkMTpatch_19817.log

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

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

Checking for prerequisite bugfixes in File Edition: run

Enter the password for the APPS user:
Connecting to database.
Database connection successful.
The installed AD.C.14 codelevel supports storing the results in the database.
Checking for existence of ETCC results table.
Table to store results already exists in database.

===============================================================================
Oracle Forms and Reports
===============================================================================
Now examining Oracle Forms and Reports.

Oracle Home: /u01/oracle/PROD/fs1/EBSapps/10.1.2.
Product version: 10.1.2.3.0.
Checking required bugfixes for Oracle Forms and Reports 10.1.2.3.0.
All required bugfixes are present for Oracle Forms and Reports.
These results have been stored in the database.

Identified DST version: 18

Checking required bugfixes for RSF 10.1.0.5.0 in Oracle Forms.
All required bugfixes are present for RSF 10.1.0.5.0 in Oracle Forms.
These results have been stored in the database.

===============================================================================
Oracle Fusion Middleware (FMW) – Web Tier
===============================================================================
Now examining Oracle Fusion Middleware (FMW) – Web Tier.

Oracle Home: /u01/oracle/PROD/fs1/FMW_Home/webtier.
Product version: 11.1.1.9.0.
Checking required bugfixes for FMW – Web Tier 11.1.1.9.0.
All required bugfixes are present for FMW – Web Tier.
These results have been stored in the database.

Identified DST version: 18

Checking required bugfixes for RSF 11.1.0.7.0 in FMW Web tier.
All required bugfixes are present for RSF 11.1.0.7.0 in FMW Web tier.
These results have been stored in the database.

===============================================================================
Oracle Fusion Middleware (FMW) – Oracle Common
===============================================================================
Now examining Oracle Fusion Middleware (FMW) – Oracle Common.

Oracle Home: /u01/oracle/PROD/fs1/FMW_Home/oracle_common.
Product version: 11.1.1.9.0.
Checking required bugfixes for FMW – Oracle Common 11.1.1.9.0.
All required bugfixes are present for FMW – Oracle Common.
These results have been stored in the database.

===============================================================================
Oracle WebLogic Server (WLS)
===============================================================================
Now examining WLS.

Oracle Home: /u01/oracle/PROD/fs1/FMW_Home/wlserver_10.3.
Product version: 10.3.6.0.220719.
Note: For WLS, patches rather than bugfixes are verified.
Checking required patches for WLS 10.3.6.0.220719.
All required patches are present for WLS.
These results have been stored in the database.

===============================================================================

All required one-offs are confirmed as present.
Finished checking prerequisite patches for file edition: run.
Tue Nov 26 03:02:00 PKT 2024

Log file for this session: /patches/DB_1925_patch/log/checkMTpatch_19817.log

===============================================================================
[oracle@ebs12214 DB_1925_patch]$

ETCC  Report Fusion Middleware After Patches applied

 ===============================================================================

Oracle Fusion Middleware (FMW) – Web Tier

===============================================================================

Now examining Oracle Fusion Middleware (FMW) – Web Tier.

Oracle Home: /u01/oracle/PROD/fs1/FMW_Home/webtier.

Product version: 11.1.1.9.0.

Checking required bugfixes for FMW – Web Tier 11.1.1.9.0.

All required bugfixes are present for FMW – Web Tier.

These results have been stored in the database.

Identified DST version: 18

Checking required bugfixes for RSF 11.1.0.7.0 in FMW Web tier.

All required bugfixes are present for RSF 11.1.0.7.0 in FMW Web tier.

These results have been stored in the database.

===============================================================================

Oracle Fusion Middleware (FMW) – Oracle Common

===============================================================================

Now examining Oracle Fusion Middleware (FMW) – Oracle Common.

Oracle Home: /u01/oracle/PROD/fs1/FMW_Home/oracle_common.

Product version: 11.1.1.9.0.

Checking required bugfixes for FMW – Oracle Common 11.1.1.9.0.

All required bugfixes are present for FMW – Oracle Common.

These results have been stored in the database.

===============================================================================

Oracle WebLogic Server (WLS)

===============================================================================

Now examining WLS.

Oracle Home: /u01/oracle/PROD/fs1/FMW_Home/wlserver_10.3.

Product version: 10.3.6.0.220719.

Note: For WLS, patches rather than bugfixes are verified.

Checking required patches for WLS 10.3.6.0.220719.

All required patches are present for WLS.

These results have been stored in the database.

===============================================================================

All required one-offs are confirmed as present.

Finished checking prerequisite patches for file edition: run.

Hope you found this document informative and gained valuable insights.

November 25, 2024 Applying PSU Patch in Oracle 19c
APPS DBA

Step-by-Step Guide to Apply Oracle E-Business Suite Database 19c Patch Set Update

 

 

In this article, we will apply the latest Oracle Database Release Update (DBRU) 19.25 (19.25.0.0.241015-Oct2024) today, as it has been certified by Oracle.

 

What are Patch Set Updates (PSU)?

Oracle Database Patch Set Updates (PSUs) are quarterly cumulative updates designed to address critical security vulnerabilities, performance issues, and stability improvements in Oracle databases. These updates include fixes for both newly discovered and previously identified issues, ensuring your database environment remains secure and reliable. Unlike major upgrades, PSUs focus on enhancing existing functionality without introducing new features, making them simpler to apply with minimal disruption. They also help maintain compliance with Oracle’s recommended practices and security standards, ensuring optimal performance and protection for enterprise data.

 

 

For Latest PSU Certification with Oracle E-Business Suite R12.2.x Details Please refer to the link below for details.

Lastest PSU Certification 19c with Oracle EBS (OCT-2024)

 

Latest PSU Certification

 

Environment Details

Operating System Oracle Enterprise Linux 8.9
Database Version 19c (19.19)
Application Version Oracle E-Business Suite (12.2.12)

 

 If your environment is on 12c and want to upgrade to 19c, kindly refer to the Links below.

Upgrade 12c to 19c Part 1

Upgrade 12c to 19c Part 2

 

 

We will refer to the document Oracle E-Business Suite Release 12.2: Consolidated List of Oracle Database Patches and Bug Fixes (Doc ID 1594274.1) to download the latest PSU.

Download the Following Patches from Oracle Support highlighted in the Picture below

 

 

Oracle recommends that to use the latest released Latest OPatch which you can download from the Link below:

Latest OPatch Download Link

 

After downloading and copying the patches to the target environment, we will proceed with applying the PSU.

 

Step 1. Update OPatch

[oracle@ebs12214 ~]$ . ./env_prodCDB.env

[oracle@ebs12214 ~]$ cd $ORACLE_HOME

[oracle@ebs12214 19.0.0]$ cd OPatch

[oracle@ebs12214 OPatch]$ ./opatch version

OPatch Version: 12.2.0.1.37

 

OPatch succeeded.

 

[oracle@ebs12214 OPatch]$ cd /patches/DB_1925_patch/

[oracle@ebs12214 DB_1925_patch]$ unzip -qo p6880880_190000_Linux-x86-64.zip

Backup current OPatch Directory

[oracle@ebs12214 ~]$ . ./env_prodCDB.env

[oracle@ebs12214 ~]$ cd $ORACLE_HOME

[oracle@ebs12214 19.0.0]$ mv OPatch/ OPatch_251124/

[oracle@ebs12214 19.0.0]$

Copy new OPatch to Oracle Home

[oracle@ebs12214 19.0.0]$ cp -pr /patches/DB_1925_patch/OPatch/  /u01/oracle/PROD/19.0.0

[oracle@ebs12214 19.0.0]$ cd OPatch

[oracle@ebs12214 OPatch]$ ./opatch version

OPatch Version: 12.2.0.1.44

 OPatch succeeded.

[oracle@ebs12214 OPatch]$

Shutdown Database and Listener

[oracle@ebs12214 OPatch]$ lsnrctl stop prodcdb

[oracle@ebs12214 OPatch]$ sqlplus / as sysdba 

SQL*Plus: Release 19.0.0.0.0 – Production on Mon Nov 25 02:04:26 2024

Version 19.19.0.0.0

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

Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 – Production

Version 19.19.0.0.0 

SQL> shu immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL>

Take Backup of Oracle Home

Before Applying the PSU, It is recommended to take the Oracle Home Backup.

[oracle@ebs12214 ~]$ cd /u01/oracle/PROD/

[oracle@ebs12214 PROD]$ tar -cvf  Oracle_HOME_25Nov24.tar  $ORACLE_HOME

 

 

Step 2. Apply Patch Set Update (PSU 19.25)

[oracle@ebs12214 PROD]$ cd /patches/DB_1925_patch/

[oracle@ebs12214 DB_1925_patch]$ unzip -qo p36912597_190000_Linux-x86-64.zip

[oracle@ebs12214 DB_1925_patch]$ cd 36912597/

[oracle@ebs12214 36912597]$ opatch apply

 

Post PSU Patch Configuration 

Start Database and Listener

[oracle@ebs12214 ~]$ . ./env_prodCDB.env

[oracle@ebs12214 ~]$ sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 – Production on Mon Nov 25 02:25:40 2024

Version 19.25.0.0.0

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

Connected to an idle instance.

SQL> startup 

Total System Global Area 4294965864 bytes

Fixed Size          9185896 bytes

Variable Size         1207959552 bytes

Database Buffers 3053453312 bytes

Redo Buffers             24367104 bytes

Database mounted.

Database opened.

SQL> exit

Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 – Production

Version 19.25.0.0.0

[oracle@ebs12214 ~]$ lsnrctl start prodcdb

Apply DataPatch

[oracle@ebs12214 ~]$ cd $ORACLE_HOME

[oracle@ebs12214 19.0.0]$ cd OPatch

[oracle@ebs12214 OPatch]$ ./datapatch -verbose

Verify PSU

[oracle@ebs12214 OPatch]$ opatch lsinventory|grep 36912597

Patch  36912597 : applied on Mon Nov 25 02:17:02 PKT 2024

Patch description:  “Database Release Update: 19.25.0.0.241015 (36912597)”

[oracle@ebs12214 OPatch]$

SQL> select PATCH_ID,ACTION_TIME,STATUS,DESCRIPTION from registry$sqlpatch;

   

 

 

Step 3. Apply OJVM Patch

Shutdown Database and Listener

[oracle@ebs12214 OPatch]$ lsnrctl stop prodcdb

[oracle@ebs12214 OPatch]$ sqlplus / as sysdba 

SQL*Plus: Release 19.0.0.0.0 – Production on Mon Nov 25 02:04:26 2024

Version 19.19.0.0.0

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

Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 – Production

Version 19.19.0.0.0 

SQL> shu immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL>

Apply OJVM Patch

[oracle@ebs12214 DB_1925_patch]$ unzip -oq p36878697_190000_Linux-x86-64.zip

[oracle@ebs12214 DB_1925_patch]$ cd 36878697/

[oracle@ebs12214 36878697]$ opatch apply

Post OJVM Patching

Start the Database and listener

[oracle@ebs12214 ~]$ . ./env_prodCDB.env

[oracle@ebs12214 ~]$ sqlplus / as sysdba

SQL> startup

[oracle@ebs12214 ~]$ lsnrctl start prodcdb

[oracle@ebs12214 ~]$ cd $ORACLE_HOME

[oracle@ebs12214 19.0.0]$ cd OPatch

[oracle@ebs12214 OPatch]$ ./datapatch -verbose

Verify OJVM

[oracle@ebs12214 36878697]$ opatch lsinventory|grep 36878697

Patch  36878697     : applied on Mon Nov 25 02:44:37 PKT 2024

Patch description:  “OJVM RELEASE UPDATE: 19.25.0.0.241015 (36878697)”

 

SQL> select PATCH_ID,ACTION_TIME,STATUS,DESCRIPTION from registry$sqlpatch;

 

 

Step 4. Apply Other Issue Patch as Per Document (Doc ID 1594274.1)

When using the AD Online Patching (adop) tool to patch Oracle E-Business Suite, you may see “PL/SQL ERROR 302” while compiling PL/SQL libraries or Oracle Forms. To fix this issue, apply Patch 36749043

[oracle@ebs12214 DB_1925_patch]$ unzip -oq p36749043_1925000DBRU_Linux-x86-64.zip

[oracle@ebs12214 DB_1925_patch]$ cd 36749043/

[oracle@ebs12214 36749043]$ opatch prereq CheckConflictAgainstOHWithDetail -ph ./

[oracle@ebs12214 36749043]$ opatch apply

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

November 18, 2024 Cannot insert NULL into FND_APPS_SYSTEM.CSI_NUMBER
APPS DBA

Autoconfig errors on adgentns.pl ORA-01400 cannot insert NULL into FND_APPS_SYSTEM.CSI_NUMBER

 

Recently, we encountered an issue while running AutoConfig on the Applications Tier in Oracle E-Business Suite Release 12. The following error was observed:

ERROR

ERROR: [CVM Error Report]
The following report lists errors encountered during CVM Phase
/…/apps/apps_st/appl/ad/12.0.0/bin/adgentns.pl 2
No of scripts failed in CVM phase: 1 AutoConfig is exiting with status 1

ERROR in NetServiceHandler.log:

Registering Middle Tier Node
[ Input Information ]
……
Tools Local : null
Web Local : null
StackTrace:
java.sql.SQLException:
ORA-01400: cannot insert NULL into (“APPLSYS”.”FND_APPS_SYSTEM”.”CSI_NUMBER”)
ORA-06512: at “APPS.FND_APP_SYSTEM”, line 39
ORA-06512: at “APPS.FND_NET_SERVICES”, line 1720
ORA-06512: at line 1
 

“The issue occurred due to a null value for the parameter s_systemcsi in the APPS Context XML file. This caused the AutoConfig script to attempt inserting a NULL value into the CSI_NUMBER column of the APPLSYS.FND_APPS_SYSTEM table, resulting in the error: ORA-01400: cannot insert NULL into ("APPLSYS"."FND_APPS_SYSTEM"."CSI_NUMBER").”

 
 

SOLUTION

1. Source the APPS Tier environment file $APPL_TOP/APPS_.env.
 
2. Backup the APPS Tier Context File
 
3. Edit APPS Tier tier context XML file,
 
Replace:
 
<AFSYSCSI oa_var="s_systemcsi"/>
 
With:
 
<AFSYSCSI oa_var="s_systemcsi">0</AFSYSCSI>
 
4. Save the changes.
 
5. Run autoconfig to re-test the issue.

 

 

 

 

July 5, 2024 Oracle ACE PRO Award To Syed Saad Ali
APPS DBA

ORACLE ACE PRO AWARD

  • On 5th June 2024, I finally received an e-mail from the Oracle Corporation with the approval of my application to become an Oracle ACE Pro

  • I’m proud to continue my journey with this amazing community. It’s always a true honor to be part of the Oracle ACE program with the most awesome Oracle professionals worldwide.

July 19, 2023 Oracle APPS R12.2.12 Step by Step Installation
APPS DBA

Installation Guide: Oracle Apps R12.2.12 on Oracle Linux OEL 7.9 using Oracle VirtualBox

 

Introduction:

Welcome to our comprehensive Installation guide for Oracle Apps R12.2.12, the latest release by Oracle, on the Oracle Linux OEL 7.9 platform, utilizing Oracle VirtualBox. This post, along with the subsequent ones, will provide step-by-step instructions to ensure a successful installation.

Hardware Requirements:

To proceed with the installation, please ensure that your hardware meets the following prerequisites. For reference, we will be using a laptop with the following configuration:

  1. 250 GB Hard Disk: This allocation is for the operating system and the staging area. If desired, you can allocate 110 GB instead (50 GB for the operating system and 60 GB for the staging area).
  2. An additional 300 GB Hard Disk: This disk will be dedicated to the Application File System and the Database.
  3. 16 GB of RAM: We recommend assigning this amount to the virtual machine. However, 12 GB can be allocated if necessary.
  4. Minimum of 16 GB Swap Space: In our setup, we will configure it with 20 GB.

Software Requirements:

Before proceeding with the installation, ensure that you have the following software components available:

  1. Oracle VirtualBox:  We will Explore this in Detail in the Action Plan of this Blog 
  2. Oracle Linux 7.9: We will be using version OEL 7.9 in this scenario, you may choose another recommended version based on your preferences. Even OEL 8.2 and Above is Certified with Oracle E-Business Suite.
  3. Oracle E-Business Suite (EBS) R12.2: We will Explore this in Detail in the Action Plan of this Blog .

Action Plan for The Installation:

The installation process will be divided into the following parts, as illustrated below. Each part will be thoroughly explored and discussed in detail as presented below.

 

Part 1. Oracle VirtualBox Installation

This involves setting up the virtualization software and configuring the required network adapters and storage settings.

Virtual Box Installation Link

 

Part 2. Oracle Linux Installation and Configuration

 Here, we will guide you through the installation of Oracle Linux 7.9 and the configuration of essential RPM packages. Furthermore, we will cover the necessary pre-installation setups specific to Oracle Linux.

Oracle Linux Installation Link

Oracle Linux Configuration Link

 

Part 3. Downloading and Creating a Staging Area of Oracle E-Business Suite

In this Part, we will provide a comprehensive walkthrough of the process for downloading and creating a dedicated staging area specifically designed for Oracle Apps R12.2. By following these steps, you will be able to establish a well-organized staging area, guaranteeing a seamless installation process.

Oracle Media Download Procedure Link

Creating Staging Area for EBS Link

 

Part 4. Installing Oracle Apps R12.2.0

This Part covers the installation of Oracle Apps R12.2.0, followed by a verification process to ensure successful deployment.

Oracle Apps R12.2.0 Installation Link

 

Part 5. Oracle Apps Upgrade from 12.2.0 to 12.2.12

This Part covers the upgrade process of  Oracle Apps R12.2.0 to 12.2.12, followed by a verification process to ensure a successful upgrade.

Oracle EBS Apps Upgrade from 12.2.0 to 12.2.12

 

Part 6. Oracle EBS APPS 12.2.12 Database Upgrade from 12.1.0.2 to 19.19

This Part covers the upgrade process of Oracle Apps R12.2.12 Database from 12c to 19c, followed by a verification process to ensure a successful upgrade.

Oracle EBS Database Upgrade from 12c to 19c Part-1

Oracle EBS Database Upgrade from 12c to 19c Part-2

 

 

 

July 18, 2023 Oracle EBS Database Upgrade from 12c to 19c Part-2
APPS DBA

Oracle EBS Database Upgrade from 12c to 19c Part-2

 

This post is a continuation of the previous article on Oracle EBS Database Upgrade from 12c to 19c Part-1. Here, we will delve into the remaining part of the database upgrade process from 12c to 19c. Let’s begin with Section 6, building upon Section 5 discussed in the last post.

 

Section 6 – Create the CDB through DBCA

Step 1. Create the CDB

On the database server node Source 19c environment and run below from GUI Terminal/VNC

  • Run the Database Configuration Assistant (DBCA) to create the container database (CDB).
  • When prompted, click on the “Create Database”, “Advanced Configuration”, and “General Purpose or Transaction Processing” options.
  • In the Specify Database Identification screen, check to create an empty container database (CDB) without a PDB.
  • Set the Global Database Name, the SID to the new CDB SID (maximum of 8 characters)(prodcdb), and check the “Use Local Undo tablespace for PDBs” checkbox. The CDB SID has to be different from the current ORACLE_SID, which will be the PDB SID.
  • In the “Network Configuration” section, do not create a listener. In the “Specify Configuration Options” section, set the SGA and PGA sizes to 2G and 1G respectively.
  • Click on the Character Sets tab and choose the Character Set and National Character Set to be the same as in the source database.
  • In the “Select Database Creation Option” section, click on the “Customize Storage Locations” button. Set the size of the redo log files to be the same as in the source database. Other options can be configured as appropriate.

 

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$  cd $ORACLE_HOME/bin

[oracle@test1 bin]$ ./dbca

  1. Select “Create a Database”
  2. Click Next
  1. Select “Advance Configuration”
  2. Click Next
  1. Select “General Purpose or Transaction Processing”
  2. Click Next
  1. Enter the Following Highlighted
  2. Select “Create as Container Database” 
  3. Select “Use Local Undo tablespace for PDBs”
  4. Click Next
  1. Select The Following as Shown in the Picture
  2. Click Next
  1. Click Next
  1. Click Next
  1. Click Next
  1. Enter the Following as Shown in the Picture 
  2. Click “Character Sets” TAB
  1. Select The Following as Shown in the Picture
  2. Click Next
  1. De Select the Following EM Configuration
  2. Click Next
  1. Enter Password
  2. Click Next
  1. Select “Create Database” 
  2. Click Next
  1. Click Finish

Database Creation Process Starts

  1. Click Close

 

Step 2. Run DataPatch on the CDB

Use the following commands to load any necessary patches on the CDB.

Source 19 environment File

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$ export ORACLE_SID=prodcdb

[oracle@test1 ~]$ $ORACLE_HOME/OPatch/datapatch

SQL Patching tool version 19.19.0.0.0 Production on Mon Jul 17 03:01:50 2023

Copyright (c) 2012, 2023, Oracle.  All rights reserved.

Log file for this invocation: /u01/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_29132_2023_07_17_03_01_50/

sqlpatch_invocation.log

Connecting to database…OK

Gathering database info…done

 

Note:  Datapatch will only apply or rollback SQL fixes for PDBs

       that are in an open state, no patches will be applied to closed PDBs.

       Please refer to Note: Datapatch: Database 12c Post Patch SQL Automation

       (Doc ID 1585822.1)

Bootstrapping registry and package to current versions…done

Determining current state…done

Current state of interim SQL patches:

Interim patch 35050341 (OJVM RELEASE UPDATE: 19.19.0.0.230418 (35050341)):

  Binary registry: Installed

  PDB CDB$ROOT: Applied successfully on 17-JUL-23 02.35.23.436147 AM

  PDB PDB$SEED: Applied successfully on 17-JUL-23 02.47.06.787785 AM

Interim patch 35406065 (RESTORE DATABASE PREVIEW FAILING WITH RMAN-00600 [7004] [0] [KRMR_GET_ARCHIVED_NEXT_SCN_ALSCN] AFTER):

  Binary registry: Installed

  PDB CDB$ROOT: Applied successfully on 17-JUL-23 02.35.23.546590 AM

  PDB PDB$SEED: Applied successfully on 17-JUL-23 02.47.06.898928 AM

Current state of release update SQL patches:

  Binary registry:

    19.19.0.0.0 Release_Update 230322020406: Installed

  PDB CDB$ROOT:

    Applied 19.19.0.0.0 Release_Update 230322020406 successfully on 17-JUL-23 02.35.23.428107 AM

  PDB PDB$SEED:

    Applied 19.19.0.0.0 Release_Update 230322020406 successfully on 17-JUL-23 02.47.06.781113 AM

Adding patches to installation queue and performing prereq checks…done

Installation queue:

  For the following PDBs: CDB$ROOT PDB$SEED

    No interim patches need to be rolled back

    No release update patches need to be installed

    No interim patches need to be applied

SQL Patching tool complete on Mon Jul 17 03:02:14 2023

 

 

Step 3. Create the CDB MGDSYS schema

Use SQL*Plus to connect to the CDB as SYSDBA and run the $ORACLE_HOME/rdbms/admin/catmgd.sql script. This creates the new MGDSYS schema on the CDB

Source 19c Environment

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$ sqlplus ‘/as sysdba’

SQL*Plus: Release 19.0.0.0.0 – Production on Mon Jul 17 03:04:08 2023

Version 19.19.0.0.0

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

Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 – Production

Version 19.19.0.0.0

SQL> @$ORACLE_HOME/rdbms/admin/catmgd.sql

This creates the new MGDSYS schema on the CDB.

 

 

Step 4. Create the CDB TNS files

On the database server node, run the following perl script to generate the required TNS files. Note that this script does not create a listener.

$ cd $ORACLE_HOME/appsutil$ . ./txkSetCfgCDB.env dboraclehome=<full path of ORACLE_HOME>

$ cd $ORACLE_HOME/appsutil/bin

$ perl txkGenCDBTnsAdmin.pl -dboraclehome=<ORACLE_HOME> -cdbname=<CDB SID> -cdbsid=<CDB SID> -dbport=<Database port> -outdir=<ORACLE_HOME>/appsutil/log

 

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$ cd $ORACLE_HOME/appsutil

[oracle@test1 appsutil]$ . ./txkSetCfgCDB.env dboraclehome=$ORACLE_HOME 

Oracle Home being passed: /u01/oracle/PROD/19.0.0

[oracle@test1 appsutil]$ cd $ORACLE_HOME/appsutil/bin 

[oracle@test1 bin]$ perl txkGenCDBTnsAdmin.pl -dboraclehome=$ORACLE_HOME

-cdbname=prodcdb -cdbsid=prodcdb -dbport=1522 -outdir=$ORACLE_HOME/appsutil/log

Script Name    : txkGenCDBTnsAdmin.pl

Script Version : 120.0.12020000.11

Started        : Mon Jul 17 03:10:02 PKT 2023

Log File       : /u01/oracle/PROD/19.0.0/appsutil/log/

TXK_CDB_TNS_ADMIN_Mon_Jul_17_03_10_02_2023/txkGenCDBTnsAdmin.log

———–

Values used

———–

Database Oracle Home    : /u01/oracle/PROD/19.0.0

CDB NAME                : prodcdb

CDB SID                 : prodcdb

Database port           : 1522

OUT Directory           : /u01/oracle/PROD/19.0.0/appsutil/log

Is RAC?                 : No

Virtual Hostname        :

Logical Hostname        :

Script execution mode   : generate

=========================

Validating oracle home…

=========================

Oracle Home: /u01/oracle/PROD/19.0.0 exists.

===========================

Validating out directory…

===========================

Out directory: /u01/oracle/PROD/19.0.0/appsutil/log exists.

===================================

Validating script execution mode…

===================================

Script execution mode: generate

Script execution mode is valid.

============================

Inside getDBHostDetails()…

============================

DB Hostname : test1

DB Domain   : example.com

Logical hostname is not passed, hence using physical hostname details.

Logical Hostname : test1

Logical Domain   : example.com

=====================

Inside getDBPort()…

=====================

DB Port passed as an argument, using the same.

DB Port: 1522

======================================

Inside generateCDBTNSAdminContent()…

======================================

Creating the directory: /u01/oracle/PROD/19.0.0/appsutil/log/

TXK_CDB_TNS_ADMIN_Mon_Jul_17_03_10_02_2023/tns_admin_cdb_bkp

Creating the directory: /u01/oracle/PROD/19.0.0/appsutil/log/

TXK_CDB_TNS_ADMIN_Mon_Jul_17_03_10_02_2023/tns_admin_cdb_temp

listener_template: listener_ora_cdb_db19.tmp

sqlnet_template: sqlnet_ora_cdb_db19.tmp

Copying the file

—————-

SOURCE : /u01/oracle/PROD/19.0.0/appsutil/template/listener_ora_cdb_db19.tmp

TARGET : /u01/oracle/PROD/19.0.0/appsutil/log/TXK_CDB_TNS_ADMIN_Mon_Jul_17_03_10_02_2023

/tns_admin_cdb_temp/listener.ora

===================================

Inside replaceContextVariables()…

===================================

File /u01/oracle/PROD/19.0.0/network/admin/listener.ora does not exist.

Copying the file

—————-

SOURCE : /u01/oracle/PROD/19.0.0/appsutil/log/TXK_CDB_TNS_ADMIN_Mon_Jul_17_03_10_02_2023

/tns_admin_cdb_temp/listener.ora

TARGET : /u01/oracle/PROD/19.0.0/network/admin/listener.ora

Copying the file

—————-

SOURCE : /u01/oracle/PROD/19.0.0/appsutil/template/tnsnames_ora_cdb_db121.tmp

TARGET : /u01/oracle/PROD/19.0.0/appsutil/log/TXK_CDB_TNS_ADMIN_Mon_Jul_17_03_10_02_2023

/tns_admin_cdb_temp/tnsnames.ora

===================================

Inside replaceContextVariables()…

===================================

File /u01/oracle/PROD/19.0.0/network/admin/tnsnames.ora does not exist.

Copying the file

—————-

SOURCE : /u01/oracle/PROD/19.0.0/appsutil/log/TXK_CDB_TNS_ADMIN_Mon_Jul_17_03_10_02_2023

/tns_admin_cdb_temp/tnsnames.ora

TARGET : /u01/oracle/PROD/19.0.0/network/admin/tnsnames.ora

Copying the file

—————-

SOURCE : /u01/oracle/PROD/19.0.0/appsutil/template/sqlnet_ora_cdb_db19.tmp

TARGET : /u01/oracle/PROD/19.0.0/appsutil/log/TXK_CDB_TNS_ADMIN_Mon_Jul_17_03_10_02_2023

/tns_admin_cdb_temp/sqlnet.ora

===================================

Inside replaceContextVariables()…

===================================

File /u01/oracle/PROD/19.0.0/network/admin/sqlnet.ora does not exist.

Copying the file

—————-

SOURCE : /u01/oracle/PROD/19.0.0/appsutil/log/TXK_CDB_TNS_ADMIN_Mon_Jul_17_03_10_02_2023

/tns_admin_cdb_temp/sqlnet.ora

TARGET : /u01/oracle/PROD/19.0.0/network/admin/sqlnet.ora

==============================

Inside updateCDBSqlNetOra()…

==============================

Updating the IFILE entry…

Exiting from the script.

Ended: Mon Jul 17 03:10:02 PKT 2023

 

Step 5. Shut down the CDB

Source 19c environment file and Use SQL*Plus to connect to the CDB as SYSDBA and use the following command to shut down the database:

[oracle@test1 bin]$ sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 – Production on Mon Jul 17 03:12:11 2023

Version 19.19.0.0.0

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

Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 – Production

Version 19.19.0.0.0

SQL> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

 

 


 

Section 7 – Preparing DB Upgrade

Step 1. Complete the patching cycle and remove ADOP-created editions

As the owner of the source administration server, execute any of the following commands that have not been executed before. This action will remove any editions that were created during previous adop patching cycles, thereby cleaning up the environment. Additionally, these commands will finalize any pending patching cycles that are still open.

On Application Tier source run file system environment 

[oracle@test1 ~]$ . ./EBSapps.env run

  E-Business Suite Environment Information

  —————————————-

  RUN File System           : /u01/oracle/PROD/fs2/EBSapps/appl

  PATCH File System         : /u01/oracle/PROD/fs1/EBSapps/appl

  Non-Editioned File System : /u01/oracle/PROD/fs_ne

  DB Host: test1.example.com  Service/SID: PROD

  Sourcing the RUN File System …

$ adop phase=prepare 

$ adop phase=actualize_all   

$ adop phase=finalize finalize_mode=full 

$ adop phase=cutover mtrestart=no 

Note: The steps mentioned above may require a significant amount of time to complete. Therefore, it is advised to relax and monitor the progress during this period.

 

Source the Environment Again On the new run file system

oracle@test1 ~]$ . ./EBSapps.env run

  E-Business Suite Environment Information

  —————————————-

  RUN File System           : /u01/oracle/PROD/fs2/EBSapps/appl

  PATCH File System         : /u01/oracle/PROD/fs1/EBSapps/appl

  Non-Editioned File System : /u01/oracle/PROD/fs_ne

  DB Host: test1.example.com  Service/SID: PROD

  Sourcing the RUN File System …

 

$ adop phase=cleanup cleanup_mode=full

These maintenance operations will have a significantly longer duration compared to a typical online patching cycle. Therefore, it is recommended to perform them only when there is no urgent requirement to initiate a new online patching cycle.

The applications will be unavailable to users until all remaining tasks are completed.

 

You Can monitor the above process through ADOPMON

[oracle@test1 PROD]$ adopmon

Running script. Press Ctrl-C to quit.

Enter the APPS password:

Validating credentials…

Printing the log statements starting from sequence #702651

Timestamp           Node name           Message Type Message Text

—————————————————————————————————————————

2023/07/17 17:30:38 test1               EVENT        Drop covered objects, pass #11 complete, dropped: 122, errors: 0

2023/07/17 17:31:03 test1               EVENT        Drop covered objects, pass #12 complete, dropped: 52, errors: 0

2023/07/17 17:31:19 test1               EVENT        Drop covered objects, pass #13 complete, dropped: 15, errors: 0

2023/07/17 17:31:35 test1               EVENT        Drop covered objects, pass #14 complete, dropped: 1, errors: 0

2023/07/17 17:31:47 test1               EVENT        Drop covered objects, pass #15 complete, dropped: 0, errors: 0

2023/07/17 17:31:47 test1               EVENT        Drop Covered Objects – alternate method

2023/07/17 17:32:10 test1               EVENT        Cleanup crossedition triggers

2023/07/17 17:32:11 test1               EVENT        Cleanup unused columns

2023/07/17 17:33:04                     EVENT        Drop Edition: “ORA$BASE”

2023/07/17 18:25:51                     EVENT        Drop Edition: “V_20230716_1415”

2023/07/17 18:25:55 test1               EVENT        Generating log report.

2023/07/17 18:25:55 test1               EVENT        Output: /u01/oracle/PROD/fs_ne/EBSapps

                                                          /log/adop/8/20230717_144033/clea

                                                     nup/test1/adzdshowlog.out

2023/07/17 18:25:56 test1               EVENT        The cleanup phase completed successfully.

 

 

 Step 2. Store the UTL_FILE_DIR parameter values

In Oracle EBS, the PLSQL IO files are typically stored in the /usr/tmp directory of the Database Node. This is a common practice across all EBS versions, starting from 11i to R12.2. EBS achieves this by utilizing the UTL_FILE_DIR initialization parameter. However, starting from version 18c, the UTL_FILE_DIR initialization parameter has been deprecated and is no longer supported.

To address this change in Oracle 19c, Oracle for EBS has introduced new views in the APPS schema, namely apps.v$parameter and apps.v$parameter2, which provide a supplemental parameter for UTL_FILE_DIR. In order to configure this parameter, please refer to the instructions provided in Section 3.1.1 of the document titled ‘Using UTL_FILE_DIR or Database Directories for PL/SQL File I/O in Oracle E-Business Suite Releases 12.1 and 12.2′ (Doc ID 2525754.1).”

Now, we need to execute the txkCfgUtlfileDir.pl script twice in different modes to complete this task. First, run the script in the ‘getUtlFileDir‘ mode to retrieve the directory paths previously specified in the UTL_FILE_DIR database initialization parameter and prepare them for the upgrade. Subsequently, execute the script in the ‘setUtlFileDir’ mode to store the directory paths in the new Oracle E-Business Suite tables that underlie the apps.v$parameter and apps.v$parameter2 views, and to create the corresponding directory objects.

 

To retrieve the directory path values from the source UTL_FILE_DIR database initialization parameter, follow these steps:

a) Source the Oracle E-Business Suite database environment of your 11g or 12c Oracle home.

[oracle@test1 ~]$ . ./PROD_test1.env

[oracle@test1 ~]$ echo $CONTEXT_FILE

/u01/oracle/PROD/12.1.0/appsutil/PROD_test1.xml

[oracle@test1 ~]$ echo $ORACLE_HOME

/u01/oracle/PROD/12.1.0

 

b) Run txkCfgUtlfileDir.pl script in getUtlFileDir mode using the following command:

$ perl $ORACLE_HOME/appsutil/bin/txkCfgUtlfileDir.pl -contextfile=<DB Context File>

-oraclehome=<11g/12c ORACLE_HOME> -outdir=<Output/Log location>

-upgradedhome=<19c ORACLE_HOME> -mode=getUtlFileDir -servicetype=onpremise|opc

[oracle@test1 ~]$ perl $ORACLE_HOME/appsutil/bin/txkCfgUtlfileDir.pl -contextfile=/u01/oracle/PROD/12.1.0/appsutil/PROD_test1.xml -oraclehome=/u01/oracle/PROD/12.1.0 -outdir=/tmp -upgradedhome=/u01/oracle/PROD/19.0.0  -mode=getUtlFileDir -servicetype=onpremise

Enter the APPS Password:

Script Name    : txkCfgUtlfileDir.pl

Script Version : 120.0.12020000.29

Started        : Mon Jul 17 18:47:47 PKT 2023

Log File       : /tmp/TXK_UTIL_DIR_Mon_Jul_17_18_47_46_2023/txkCfgUtlfileDir.log

 

Context file: /u01/oracle/PROD/12.1.0/appsutil/PROD_test1.xml exists.

 

==============================================================================

 

Successfully generated the below file with UTL_FILE_DIR content:

/u01/oracle/PROD/12.1.0/dbs/PROD_utlfiledir.txt

 

==============================================================================

 

Completed        : Mon Jul 17 18:47:48 PKT 2023

Successfully Completed the script

ERRORCODE = 0 ERRORCODE_END

Using this command, the script retrieves the directory paths stored in the UTL_FILE_DIR database initialization parameter. It then modifies these paths to prepare them for usage in Oracle Database 19c. As a result, a text file named <DB_NAME>_utlfiledir.txt is created in the <ORACLE_HOME>/dbs directory. This file contains the list of modified directory paths.

Additionally, the script saves the original values from the 11g or 12c UTL_FILE_DIR database initialization parameter, along with the corresponding 19c replacement values, in a text file located in the log directory. To review the modifications made by the script, you can compare this log file with the <DB_NAME>_utlfiledir.txt file present in the <ORACLE_HOME>/dbs directory.

 

c) Creating the directory paths of the directories for UTL in the end of the file created /u01/oracle/PROD/12.1.0/dbs/PROD_utlfiledir.txt

[oracle@test1 ~]$ cat /u01/oracle/PROD/12.1.0/dbs/PROD_utlfiledir.txt

/u01/oracle/PROD/temp/PROD

/u01/oracle/PROD/temp/PROD

/u01/oracle/PROD/19.0.0/appsutil/outbound/PROD_test1

/u01/oracle/PROD/temp/PROD

[oracle@test1 ~]$ mkdir -p /u01/oracle/PROD/temp/PROD

[oracle@test1 ~]$ mkdir -p /u01/oracle/PROD/temp/PROD

[oracle@test1 ~]$ mkdir -p /u01/oracle/PROD/19.0.0/appsutil/outbound/PROD_test1

[oracle@test1 ~]$ mkdir -p /u01/oracle/PROD/temp/PROD

Source the Oracle E-Business Suite database environment of your 11g or 12c Oracle home.

[oracle@test1 ~]$ . ./PROD_test1.env

Run the txkCfgUtlfileDir.pl script in setUtlFileDir mode using the following command:

$ perl $ORACLE_HOME/appsutil/bin/txkCfgUtlfileDir.pl -contextfile=<DB Context File>

-oraclehome=<11g/12c ORACLE_HOME> -outdir=<Output/Log location>

-upgradedhome=<19c ORACLE_HOME> -mode=setUtlFileDir -servicetype=onpremise|opc [ -skipdirvalidation=Yes ]

[oracle@test1 ~]$ perl $ORACLE_HOME/appsutil/bin/txkCfgUtlfileDir.pl -contextfile=/u01/oracle/PROD/12.1.0/appsutil/PROD_test1.xml -oraclehome=/u01/oracle/PROD/12.1.0 -outdir=/tmp -upgradedhome=/u01/oracle/PROD/19.0.0  -mode=setUtlFileDir -servicetype=onpremise

Enter the APPS Password:

Script Name    : txkCfgUtlfileDir.pl

Script Version : 120.0.12020000.29

Started        : Mon Jul 17 19:03:46 PKT 2023

Log File       : /tmp/TXK_UTIL_DIR_Mon_Jul_17_19_03_45_2023/txkCfgUtlfileDir.log

Context file: /u01/oracle/PROD/12.1.0/appsutil/PROD_test1.xml exists.

Enter the ebs_system Password:

Completed        : Mon Jul 17 19:03:52 PKT 2023

Successfully Completed the script

ERRORCODE = 0 ERRORCODE_END

 

Step 3. Shut down the application tier server processes

On each application tier server node, shut down all server processes or services. The applications will be unavailable to users until all remaining tasks in this section are completed.

This should be already down based on pervious adop cycle steps.

 

Step 4. Drop SYS.ENABLED$INDEXES

Source 12c Database environment file

If the SYS.ENABLED$INDEXES table exists, connect to the database as SYSDBA, and run the following command to drop the table:

[oracle@test1 ~]$ sqlplus / as sysdba

SQL> drop table sys.enabled$indexes;

drop table sys.enabled$indexes

               *

ERROR at line 1:

ORA-00942: table or view does not exist

Proceed Further if table doesn’t exists.

 

Step 5. Shut down the database listener

Source 12c Environment file

[oracle@test1 ~]$ . ./PROD_test1.env

On the database tier server node, shut down the Oracle Net or Net8 database listener in the old Oracle home.

[oracle@test1 ~]$ lsnrctl stop $ORACLE_SID

LSNRCTL for Linux: Version 12.1.0.2.0 – Production on 17-JUL-2023 19:09:23

Copyright (c) 1991, 2014, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test1.example.com)(PORT=1521)))

The command was completed successfully

 

Note: To ensure that the database does not inadvertently point to a non-existent listener during the upgrade, verify that you do not have the LOCAL_LISTENER initialization parameter set.

 

[oracle@test1 ~]$ sqlplus / as sysdba

SQL> show parameter LOCAL_LISTENER

NAME                                                      TYPE VALUE

———————————— ———– ——————————

local_listener                                         string               PROD_LOCAL

SQL> alter system set local_listener=”;

System altered.

SQL> show parameter LOCAL_LISTENER

NAME                                                      TYPE VALUE

———————————— ———– —- ————————–

local_listener                                         string

 

Step 6. Database Pre Upgrade Steps

Modify the following initialization parameters before the upgrade:

  • Comment out all the deprecated initialization parameters. Any necessary parameter will be added back in after the upgrade.
  • Unset the olap_page_pool_size initialization parameter.

SQL> alter system set olap_page_pool_size=0 scope=spfile;

  • If you have an 11g source database, set the PGA_AGGREGATE_TARGET initialization parameter to at least 10G.
  • Set the SGA_TARGET initialization parameter to at least 2G.
  • Add the event EVENT=’10946 trace name context forever, level 8454144

SQL>  alter system set event=’10946 trace name context forever, level 8454144′ scope=spfile;

Shut down and restart the database to enable the parameters.

 

Step 7. Run the Pre-upgrade Tool

Connect to the 12c Database and run the command as below:

[oracle@test1 ~]$ /u01/oracle/PROD/12.1.0/jdk/bin/java -jar /u01/oracle/PROD/19.0.0/rdbms/admin/preupgrade.jar

==================

PREUPGRADE SUMMARY

==================

  /u01/oracle/PROD/12.1.0/cfgtoollogs/PROD/preupgrade/preupgrade.log

  /u01/oracle/PROD/12.1.0/cfgtoollogs/PROD/preupgrade/preupgrade_fixups.sql

  /u01/oracle/PROD/12.1.0/cfgtoollogs/PROD/preupgrade/postupgrade_fixups.sql

Execute fixup scripts as indicated below:

Before upgrade:

Log into the database and execute the preupgrade fixups

@/u01/oracle/PROD/12.1.0/cfgtoollogs/PROD/preupgrade/preupgrade_fixups.sql

After the upgrade:

Log into the database and execute the postupgrade fixups

@/u01/oracle/PROD/12.1.0/cfgtoollogs/PROD/preupgrade/postupgrade_fixups.sql

 

As per the recommendation above by the Pre Upgrade tool we will execute preupgrade_fixups.sql

SQL> alter system set processes=300 scope=spfile;

SQL>set head off

SQL>zet lines 200 pages 200

SQL>set echo off

SQL>set feedback off;

SQL>spool hidden_parameter.sql

SQL>SELECT ‘alter system reset ‘||'”‘||name||'”‘||’ scope =spfile;’

FROM SYS.V$PARAMETER

WHERE name LIKE ‘_%’ ESCAPE ”;

SQL>spool off

SQL>@hidden_parameter.sql

 

SQL> @/u01/oracle/PROD/12.1.0/cfgtoollogs/PROD/preupgrade/preupgrade_fixups.sql

Executing Oracle PRE-Upgrade Fixup Script

Auto-Generated by:       Oracle Preupgrade Script

                         Version: 19.0.0.0.0 Build: 13

Generated on:            2023-07-17 21:56:05

For Source Database:     PROD

Source Database Version: 12.1.0.2.0

For Upgrade to Version:  19.0.0.0.0

Preup                             Preupgrade

Action                            Issue Is

Number  Preupgrade Check Name     Remedied    Further DBA Action

——  ————————  ———-  ——————————–

  1. parameter_min_val         NO          Manual fixup recommended.
  2. parameter_obsolete        NO          Manual fixup recommended.
  3. invalid_objects_exist     NO          Manual fixup recommended.
  4. amd_exists                NO          Manual fixup recommended.
  5. duplic_sys_system_objs    NO          Manual fixup recommended.
  6. exclusive_mode_auth       NO          Manual fixup recommended.
  7. case_insensitive_auth     NO          Manual fixup recommended.
  8. mv_refresh                NO          Manual fixup recommended.
  9. hidden_params             NO          Informational only.

                                              Further action is optional.

  1. underscore_events         NO          Informational only.

                                              Further action is optional.

  1. dictionary_stats          YES         None.
  2. trgowner_no_admndbtrg     YES         None.
  3. component_info            NO          Informational only.

                                              Further action is optional.

  1. parameter_deprecated      NO          Informational only.

                                              Further action is optional.

  1. rman_recovery_version     NO          Informational only.

                                              Further action is optional.

  1. invalid_ora_obj_info      NO          Informational only.

                                              Further action is optional.

  1. invalid_app_obj_info      NO          Informational only.

                                              Further action is optional.

The fixup scripts have been run and resolved what they can. However,

there are still issues originally identified by the preupgrade that

have not been remedied and are still present in the database.

Depending on the severity of the specific issue, and the nature of

the issue itself, that could mean that your database is not ready

for upgrade.  To resolve the outstanding issues, start by reviewing

the preupgrade_fixups.sql and searching it for the name of

the failed CHECK NAME or Preupgrade Action Number listed above.

There you will find the original corresponding diagnostic message

from the preupgrade which explains in more detail what still needs

to be done.

 

PL/SQL procedure successfully completed.

 

 


 

Section 8 – Upgrade the database instance

Step 1. Running Database Upgrade using DBUA 

Invoke DBUA using the following command. The keep events parameter allows events in the pre-upgraded database to be enabled during the upgrade.

In Oracle Database 19c, the DMSYS schema is no longer used. The Data Mining option is installed in the SYS schema. The Oracle 19c pre-upgrade tool has been extended to include a warning that the DMSYS schema should be dropped. If this warning is reported, it is recommended to drop the schema. Removing the DMSYS schema has no effect on the functioning of Data Mining.

Disregard warnings related to Network ACLs. AutoConfig manages all the Oracle E-Business Suite Network ACLs.

When upgrading all statistics tables, note that Oracle E-Business Suite has only one statistics table (APPLSYS.FND_STATTAB) that needs to be upgraded.

Make sure 12c db entry is present in /etc/oratab. Open GUI and run the below command

Source 19c Environment file

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$ $ORACLE_HOME/bin/dbua -keepEvents

  1. Select “PROD”
  2. Enter User SYS and Password
  3. Click Next
  1. Wait for Performing Pre-Upgrade Checks
  1. Click Next
  1. Click Yes
  1. Select the following as shown in the Picture
  2. Click Next
  1. Select “I have my own Backup and restore strategy”
  2. Click Next
  1. Click Next
  1. Deselect the following in the Picture
  2. Click Next
  1. Click Finish
  1. Database Upgrade Started
  1. Click Close

The database upgrade has been completed successfully, and the database is ready to use.

SQL> select banner from v$version;

BANNER

——————————————————————————–

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 – Production

Step 2. Run the Post Upgrade Script generated during the Pre-Upgrade Steps

Source 19c Environment

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$ export ORACLE_SID=PROD

SQL> @/u01/oracle/PROD/12.1.0/cfgtoollogs/PROD/preupgrade/postupgrade_fixups.sql

 

Step 3. Post-Upgrade Tasks

Source 19c Environment

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$ export ORACLE_SID=PROD

There are few important post-upgrade miscellaneous tasks that need to be performed.

If you previously had the SEC_CASE_SENSITIVE_LOGON initialization parameter set to FALSE, re-enable the parameter.

In case spfile is not there then create spfile and restart database.

SQL> alter system set SEC_CASE_SENSITIVE_LOGON=false;

System altered.

SQL> alter trigger SYSTEM.EBS_LOGON compile;

Trigger altered.

SQL> alter system set compatible=’19.0.0′ scope=spfile;

System altered.

Restart DB

SQL> shu immediate;

Database closed.

Databas edismounted.

ORACLE instance shut down.

SQL> startup

ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance

ORACLE instance started.

Total System Global Area 4294963248 bytes

Fixed Size            8933424 bytes

Variable Size           2583691264 bytes

Database Buffers  1677721600 bytes

Redo Buffers               24616960 bytes

Database mounted.

Database opened.

SQL> show parameter compatible

NAME                         TYPE   VALUE

———————————— ———– ——————————

compatible                   string 19.0.0

noncdb_compatible            boolean      FALSE

 

Step 4. Run DataPatch

Source 19c Environment

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$ export ORACLE_SID=PROD

[oracle@test1 OPatch]$ $ORACLE_HOME/OPatch/datapatch

 

Step 5. Connect to sysdba and run below

Source 19c Environment

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$ export ORACLE_SID=PROD

SQL> @?/rdbms/admin/dbmsxdbschmig.sql

SQL> @?/rdbms/admin/prvtxdbschmig.plb

 

Step 6. Run ADgrants

Source 19c Environment

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$ export ORACLE_SID=PROD

Copy adgrants.sql from $APPL_TOP/admin to DB tier and run it

[oracle@test1 ~]$ cp /u01/oracle/PROD/fs1/EBSapps/appl/admin/adgrants.sql /u01/oracle/PROD/19.0.0/appsutil

SQL> @/u01/oracle/PROD/19.0.0/appsutil/adgrants.sql apps

 

Step 7. Grant create procedure privilege on CTXSYS

Source 19c Environment

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$ export ORACLE_SID=PROD

Copy $AD_TOP/patch/115/sql/adctxprv.sql from the administration server node to the database server node.

Use SQL*Plus to connect to the database as apps and run the script using the following command:

[oracle@test1 admin]$ cp $AD_TOP/patch/115/sql/adctxprv.sql /u01/oracle/PROD/19.0.0/

$ sqlplus apps/<apps password> @adctxprv.sql <SYSTEM password> CTXSYS

[oracle@test1 ~]$ cd /u01/oracle/PROD/19.0.0/

[oracle@test1 19.0.0]$ sqlplus apps/apps @adctxprv.sql oracle CTXSYS

SQL*Plus: Release 19.0.0.0.0 – Production on Tue Jul 18 01:16:40 2023

Version 19.19.0.0.0

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

Last Successful login time: Mon Jul 17 2023 19:03:52 +05:00

Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 – Production

Version 19.19.0.0.0

Commit complete.

Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 – Production

Version 19.19.0.0.0

 

Step 8. Compile invalid objects

Source 19c Environment

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$ export ORACLE_SID=PROD

Use SQL*Plus to connect to the database as SYSDBA and run the $ORACLE_HOME/rdbms/admin/utlrp.sql script to compile invalid objects.

$ sqlplus “/ as sysdba” @$ORACLE_HOME/rdbms/admin/utlrp.sql

Run the following Query to check the INVALID Objects

SQL> select count(*) from dba_objects where status=’INVALID’;

 

Step 9. Grant datastore access

Source 19c Environment

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$ export ORACLE_SID=PROD

Use SQL*Plus to connect to the database as SYSDBA and run the following command:

[oracle@test1 ~]$ sqlplus “/ as sysdba”

SQL> grant text datastore access to public;

Grant succeeded.

 

Step 10. Gather statistics for the SYS schema

Source 19c Environment

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$ export ORACLE_SID=PROD

Copy $APPL_TOP/admin/adstats.sql from the administration server node to the database server node. Note that adstats.sql has to be run in restricted mode.

Use SQL*Plus to connect to the database as SYSDBA and use the following commands to run adstats.sql in restricted mode:

[oracle@test1 19.0.0]$  cp /u01/oracle/PROD/fs1/EBSapps/appl/admin/adstats.sql /u01/oracle/PROD/19.0.0/

[oracle@test1 ~]$ sqlplus / as sysdba

SQL> alter system enable restricted session;

System altered.

SQL> @adstats.sql

Connected.

————————————————–

— adstats.sql started at 2023-07-18 11:48:37 —

Checking for the DB version and collecting statistics …

PL/SQL procedure successfully completed.

————————————————

— adstats.sql ended at 2023-07-18 11:55:38 —

Commit complete.

Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 – Production

Version 19.19.0.0.0

[oracle@test1 19.0.0]$ sqlplus / as sysdba

SQL> alter system disable restricted session;

System altered.

SQL> exit

 

Step 11. Convert Database to Multitenant Architecture or PDB

Source 19c Environment

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$ export ORACLE_SID=PROD

  • In this subsection, there are two databases that are associated with the 19c Oracle home, the CDB and the non-CDB database. Moreover, the non-CDB database will be migrated tothe PDB database. Set the appropriate environment variables to connect to the appropriate database.
  • Only the txkSetCfgCDB.env/cmd file in the $ORACLE_HOME/appsutil directory is necessary. It sets certain environment variables. However, it does not distinguish between the different databases in the 19c Oracle home. It is used mainly to complete the steps in this subsection. The following steps assume that a new window is brought up every time. However, there is no need to run txkSetCfgCDB.env/cmd twice in the same window. So, you may skip running the txkSetCfgCDB.env/cmd script if it has already been run on the particular terminal you are using.
  • After running the txkPostPDBCreationTasks.pl, additional environment files are created so that connecting to the database is more convenient. Load the proper environment variables and connect to the database by performing the following steps:
  • For the non-CDB database, source the $ORACLE_HOME/<non-CDB SID>_<HOST>.env/cmd file. Then, run sqlplus <user>/<password>@<non-CDB SID>. (The environment file was created during the earlier upgrade steps)
  • For the CDB database, source the $ORACLE_HOME/<CDB SID>_<HOST>.env/cmd file. Then, run sqlplus <user>/<password> or connect as SYSDBA.
  • For the PDB database on UNIX/Linux platforms, to connect as SYSDBA, source the $ORACLE_HOME/<CDB SID>_<HOST>.env file. Set the ORACLE_PDB_SID environment variable to <PDB SID>. Then, connect as SYSDBA.
  • For the PDB database on Windows platforms, to connect as SYSDBA, source the $ORACLE_HOME/<PDB SID>_<HOST>.cmd file. Then, connect as SYSDBA.
  • For the PDB database, to connect to other users, source the $ORACLE_HOME/<PDB SID>_<HOST>.env/cmd file. Then, run sqlplus <user>/<password>@<PDB SID>.

 

a) Create the PDB descriptor

  • $ cd $ORACLE_HOME/appsutil
  • $ . ./txkSetCfgCDB.env dboraclehome=<full path of 19c ORACLE_HOME>
  • $ export ORACLE_SID=<source SID>
  • $ cd $ORACLE_HOME/appsutil/bin
  • $ perl txkOnPremPrePDBCreationTasks.pl -dboraclehome=<ORACLE_HOME> -outdir=<ORACLE_HOME>/appsutil/log -appsuser=<apps user> -dbsid=<source SID>

[oracle@test1 ~]$  cd $ORACLE_HOME/appsutil[oracle@test1 appsutil]$ . ./txkSetCfgCDB.env dboraclehome=/u01/oracle/PROD/19.0.0 Oracle Home being passed: /u01/oracle/PROD/19.0.0

oracle@test1 appsutil]$ export ORACLE_SID=PROD

oracle@test1 appsutil]$ cd $ORACLE_HOME/appsutil/bin

oracle@test1 bin]$ perl txkOnPremPrePDBCreationTasks.pl -dboraclehome=/u01/oracle/PROD/19.0.0 -outdir=/u01/oracle/PROD/19.0.0/appsutil/log -appsuser=apps -dbsid=PROD

Enter the APPS Password:

 

****************************************************************************************

*                                                                                      *

*         IMPORTANT NOTE: DO NOT START THE DB TILL THE DATA FILES ARE MIGRATED         *

*                                                                                      *

*         IF DB IS STARTED, THEN PDB DESCRIPTOR XML GENERATED BECOMES INVALID          *

*                                                                                      *

****************************************************************************************

Exiting from the script.

Ended: Tue Jul 18 12:01:42 PKT 2023

 

b) Update the CDB initialization parameters

On the database server node, copy the <source SID>_initparam.sql and <source SID>_datatop.txt files from the source $ORACLE_HOME/dbs directory to the new$ORACLE_HOME/dbs directory. Then use SQL*Plus to connect to the CDB as SYSDBA, and run the following commands to update the CDB initialization parameters

  • $ cd $ORACLE_HOME/appsutil
  • $ . ./txkSetCfgCDB.env dboraclehome=<full path of ORACLE_HOME>
  • $ export ORACLE_SID=<CDB SID>
  • $ sqlplus “/ as sysdba”
  • SQL> startup nomount;
  • SQL> @$ORACLE_HOME/dbs/<source SID>_initparam.sql
  • SQL> alter system set LOCAL_LISTENER=”<hostname>:<cdb port number>” scope=both;
  • SQL> shutdown;
  • SQL> startup;

[oracle@test1 bin]$ cd /u01/oracle/PROD/12.1.0/dbs

[oracle@test1 dbs]$ cp PROD_initparam.sql PROD_datatop.txt /u01/oracle/PROD/19.0.0/dbs/

[oracle@test1 dbs]$ cd $ORACLE_HOME/appsutil

[oracle@test1 appsutil]$ . ./txkSetCfgCDB.env dboraclehome=$ORACLE_HOME

Oracle Home being passed: /u01/oracle/PROD/19.0.0

[oracle@test1 appsutil]$ export ORACLE_SID=prodcdb

[oracle@test1 appsutil]$ sqlplus “/ as sysdba”

SQL*Plus: Release 19.0.0.0.0 – Production on Tue Jul 18 12:07:23 2023

Version 19.19.0.0.0

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

Connected to an idle instance.

SQL> startup nomount;

ORACLE instance started.

Total System Global Area 2147482336 bytes

Fixed Size                 9136864 bytes

Variable Size            570425344 bytes

Database Buffers       1560281088 bytes

Redo Buffers               7639040 bytes

SQL> @$ORACLE_HOME/dbs/PROD_initparam.sql

SQL> alter system set LOCAL_LISTENER=”test1.example.com:1522″ scope=both;

System altered.

SQL> shutdown

ORA-01507: database not mounted

ORACLE instance shut down.

SQL> startup

ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance

ORACLE instance started.

Total System Global Area 4294963736 bytes

Fixed Size                         9171480 bytes

Variable Size                2583691264 bytes

Database Buffers          1677721600 bytes

Redo Buffers                   24379392 bytes

Database mounted.

Database opened.

SQL> select name,open_mode from v$database;

NAME    OPEN_MODE

——— ——————–

PRODCDB   READ WRITE

 

c) Check for PDB violations

Use the following commands to run the txkChkPDBCompatability.pl script. This checks the PDB for any violations.

  • $ cd $ORACLE_HOME/appsutil
  • $ . ./txkSetCfgCDB.env dboraclehome=<full path of ORACLE_HOME>
  • $ export ORACLE_SID=<CDB SID>
  • $ cd $ORACLE_HOME/appsutil/bin
  • $ perl txkChkPDBCompatability.pl -dboraclehome=<ORACLE_HOME>
  • -outdir=<ORACLE_HOME>/appsutil/log -cdbsid=<CDB SID>
  • -pdbsid=<source SID> -servicetype=onpremise

[oracle@test1 appsutil]$ cd $ORACLE_HOME/appsutil

[oracle@test1 appsutil]$ . ./txkSetCfgCDB.env dboraclehome=$ORACLE_HOME

Oracle Home being passed: /u01/oracle/PROD/19.0.0

[oracle@test1 appsutil]$ export ORACLE_SID=prodcdb

[oracle@test1 appsutil]$ cd $ORACLE_HOME/appsutil/bin

[oracle@test1 bin]$ perl txkChkPDBCompatability.pl -dboraclehome=$ORACLE_HOME -outdir=$ORACLE_HOME/appsutil/log -cdbsid=prodcdb -pdbsid=PROD -servicetype=onpremise

****************************************************************************************

*                                                                                      *

*       IMPORTANT NOTE: RESOLVE ALL VIOLATIONS BEFORE PROCEEDING TO CREATE PDB         *

*                                                                                      *

*         – All the errors except SQL PATCH ERRORS should be resolved                  *

*                                                                                      *

*         – All the warnings except CHARACTER SET WARNINGS can be ignored              *

*                                                                                      *

*         – Review and set the INIT PARAMETERs to match the EBS requirements           *

*                                                                                      *

****************************************************************************************

Note: Use the same command options for Oracle Cloud Infrastructure Compute environments.

Review all warnings and resolve all errors. Re-run the script to verify all errors have been resolved. Do not run noncdb_to_pdb.sql as that will be run by txkCreatePDB.pl in the next step.

 

d) Create the PDB

Load the environment variables by running the following commands.

Make sure to extend tablespaces on CDB to have sufficient space.

$ cd $ORACLE_HOME/appsutil

$ . ./txkSetCfgCDB.env dboraclehome=<full path of ORACLE_HOME>

$ cd $ORACLE_HOME/appsutil/bin

$ perl txkCreatePDB.pl -dboraclehome=<ORACLE_HOME> -outdir=<ORACLE_HOME>/appsutil/log

-cdbsid=<CDB SID> -pdbsid=<source SID> -dbuniquename=<CDB SID> -servicetype=onpremise

Note: Use the same command options for Oracle Cloud Infrastructure Compute environments.

The PDB datafile location can be the same as the source datafile location.

[oracle@test1 bin]$ cd $ORACLE_HOME/appsutil

[oracle@test1 appsutil]$ . ./txkSetCfgCDB.env dboraclehome=$ORACLE_HOME

Oracle Home being passed: /u01/oracle/PROD/19.0.0

[oracle@test1 appsutil]$ cd $ORACLE_HOME/appsutil/bin

[oracle@test1 bin]$ perl txkCreatePDB.pl -dboraclehome=$ORACLE_HOME -outdir=$ORACLE_HOME/appsutil/log -cdbsid=prodcdb -pdbsid=PROD -dbuniquename=prodcdb -servicetype=onpremise

============================

Inside promptDataTopDir()…

============================

Number of DATA_TOPs: 1

DATA_TOP_1

===========

Enter the non-CDB data top [/u01/oracle/PROD/data]:

Enter the corresponding PDB data top [/u01/oracle/PROD/data]:

The PDB datafile location can be the same as the source datafile location.

 

e) Run the post-PDB script

Source 19c Environment

[oracle@test1 ~]$ . ./19c.env

[oracle@test1 ~]$ export ORACLE_SID=PROD

change CDB system password

[oracle@test1 ~]$ sqlplus / as sysdba

SQL> alter user system identified by oracle#123;

User altered.

Use the following commands to run the txkPostPDBCreationTasks.pl script. This updates the PDB configuration.

$ cd $ORACLE_HOME/appsutil

$ . ./txkSetCfgCDB.env dboraclehome=<full path of ORACLE_HOME>

$ perl $ORACLE_HOME/appsutil/bin/txkPostPDBCreationTasks.pl -dboraclehome=<ORACLE_HOME>

-outdir=<ORACLE_HOME>/appsutil/log -cdbsid=<CDB SID> -pdbsid=<PDB SID>

-appsuser=apps -dbport=<CDB TNS port number> -servicetype=onpremise

[oracle@test1 bin]$ cd $ORACLE_HOME/appsutil

[oracle@test1 appsutil]$ . ./txkSetCfgCDB.env dboraclehome=$ORACLE_HOME

Oracle Home being passed: /u01/oracle/PROD/19.0.0

[oracle@test1 appsutil]$ cd $ORACLE_HOME/appsutil/bin

[oracle@test1 appsutil perl $ORACLE_HOME/appsutil/bin/txkPostPDBCreationTasks.pl -dboraclehome=$ORACLE_HOME -outdir=$ORACLE_HOME/appsutil/log -cdbsid=prodcdb -pdbsid=PROD -appsuser=apps -dbport=1522 -servicetype=onpremise

Enter the APPS Password:

Enter the CDB SYSTEM Password:

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

#                    I M P O R T A N T    N O T E                   #

#                                                                   #

#   EBS_SYSTEM credentials are set to same value as that of SYSTEM  #

Note: Use the same command options for Oracle Cloud Infrastructure Compute environments.

This step also runs the autoconfig at DB level.

SQL> show pdbs

 

    CON_ID CON_NAME                           OPEN MODE  RESTRICTED

———- —————————— ———- ———-

           2 PDB$SEED                         READ ONLY  NO

           3 PROD                             READ WRITE NO

 

f) Change Initialization Parameters

Use the following sections in My Oracle Support Knowledge Document 396009.1, Database Initialization Parameter Settings for Oracle E-Business Suite Release 12, as a guideline in modifying your initialization parameters.

           

[oracle@test1 appsutil]$ export ORACLE_SID=prodcdb

[oracle@test1 appsutil]$ sqlplus / as sysdba

SQL> alter system set event=’10946 trace name context forever, level 8454144′ scope=spfile;

System altered.

SQL> alter system set sec_case_sensitive_logon=FALSE scope=spfile;

System altered.

 

Step 12. Run Autoconfig on the Application tier

Add the CDB entry in tnsnames.ora of Application

<TWO_TASK> =

 (DESCRIPTION =

  (ADDRESS = (PROTOCOL=tcp)(HOST=<hostname>.<domain>)(PORT=<port number>))

  (CONNECT_DATA = (SERVICE_NAME=ebs_<PDB SID>)(INSTANCE_NAME=<CDB SID>))

 )

As the user of the applications server node, on both the Patch and Run APPL_TOP, modify the $TNS_ADMIN/tnsnames.ora file to specify the CDB instance name. The following shows the format of the new TNS entry.

[oracle@test1 ~]$ . ./EBSapps.env run

 E-Business Suite Environment Information

  —————————————-

  RUN File System           : /u01/oracle/PROD/fs1/EBSapps/appl

  PATCH File System         : /u01/oracle/PROD/fs2/EBSapps/appl

  Non-Editioned File System : /u01/oracle/PROD/fs_ne

  DB Host: test1.example.com  Service/SID: PROD

  Sourcing the RUN File System …

[oracle@test1 ~]$ cd $TNS_ADMIN

[oracle@test1 admin]$ pwd

/u01/oracle/PROD/fs1/inst/apps/PROD_test1/ora/10.1.2/network/admin

[oracle@test1 admin]$ vi tnsnames.ora

prodcdb =

 (DESCRIPTION =

  (ADDRESS = (PROTOCOL=tcp)(HOST= test1.example.com)(PORT=1522))

  (CONNECT_DATA = (SERVICE_NAME=ebs_PROD)(INSTANCE_NAME=prodcdb))

 )

 

  • Edit the same in Patch File System

[oracle@test1 ~]$ . ./EBSapps.env patch

 E-Business Suite Environment Information

  —————————————-

  RUN File System           : /u01/oracle/PROD/fs1/EBSapps/appl

  PATCH File System         : /u01/oracle/PROD/fs2/EBSapps/appl

  Non-Editioned File System : /u01/oracle/PROD/fs_ne

  DB Host: test1.example.com  Service/SID: PROD

  Sourcing the PATCH File System …

[oracle@test1 ~]$ cd $TNS_ADMIN

[oracle@test1 admin]$ vi tnsnames.ora

 

Update the following values in the context file of every Applications tier server node.

Variable Name         Value

s_dbport         New database port

s_apps_jdbc_connect_descriptor   NULL

s_applptmp    Directory (not /usr/tmp) defined in UTL_FILE_DIR

[oracle@test1 admin]$ grep s_dbport $CONTEXT_FILE

      <dbport oa_var=”s_dbport” oa_type=”EXT_PORT” base=”1521″ step=”1″ range=”-1″ label=”Database Port”>1521</dbport>

[oracle@test1 admin]$ grep s_apps_jdbc_connect_descriptor $CONTEXT_FILE

         <jdbc_url oa_var=”s_apps_jdbc_connect_descriptor”>jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(LOAD_BALANCE=YES)(FAILOVER=YES)(ADDRESS=(PROTOCOL=tcp)(HOST=test1.example.com)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=PROD)))</jdbc_url>

[oracle@test1 admin]$ grep s_applptmp $CONTEXT_FILE

         <APPLPTMP oa_var=”s_applptmp” osd=”UNIX”>/usr/tmp</APPLPTMP>

To identify the allowable directories for s_applptmp use, connect to the Oracle E-Business Suite database instance as the app’s user (on PDB)and run the following query:

[oracle@test1 appsutil]$ sqlplus apps/apps@PROD

SQL> select value from v$parameter where name=’utl_file_dir’;

VALUE

——————————————————————————–

/u01/oracle/PROD/temp/PROD,/u01/oracle/PROD/temp/PROD,/u01/oracle/PROD/19.0.0/ap

psutil/outbound/PROD_test1,/u01/oracle/PROD/temp/PROD

/u01/oracle/PROD/temp/PROD

/u01/oracle/PROD/temp/PROD

/u01/oracle/PROD/19.0.0/appsutil/outbound/PROD_test1

[oracle@test1 admin]$ vi $CONTEXT_FILE

Enter the values of s_applptmp and save

[oracle@test1 admin]$ grep s_applptmp $CONTEXT_FILE

         <APPLPTMP oa_var=”s_applptmp” osd=”UNIX”>/u01/oracle/PROD/19.0.0/appsutil/outbound/PROD_test1</APPLPTMP>

Edit the same in Patch file System

[oracle@test1 admin]$ vi $CONTEXT_FILE

Enter the values of s_applptmp and save

[oracle@test1 admin]$ grep s_applptmp $CONTEXT_FILE

         <APPLPTMP oa_var=”s_applptmp” osd=”UNIX”>/u01/oracle/PROD/19.0.0/appsutil/outbound/PROD_test1</APPLPTMP>

 

Now, Run AutoConfig on both ‘PATCH’ and ‘RUN’ APPL_TOPs using the following command.

  • Running On Run File System

[oracle@test1 admin]$ $INST_TOP/admin/scripts/adautocfg.sh

  • Running On Patch File System

[oracle@test1 admin]$ $INST_TOP/admin/scripts/adautocfg.sh

Note: When running AutoConfig on the patch file system APPL_TOP, ignore all errors.

 

Step 13. Start Application Services and Validate the Database Version

[oracle@test1 ~]$. ./EBSapps.env run

 E-Business Suite Environment Information

  —————————————-

  RUN File System           : /u01/oracle/PROD/fs1/EBSapps/appl

  PATCH File System         : /u01/oracle/PROD/fs2/EBSapps/appl

  Non-Editioned File System : /u01/oracle/PROD/fs_ne

  DB Host: test1.example.com  Service/SID: PROD

  Sourcing the RUN File System …

[oracle@test1 ~]$ cd $ADMIN_SCRIPTS_HOME

[oracle@test1 scripts]$ ./adstrtal.sh apps/apps

 

Thank you all for accompanying us on this journey of upgrading the EBS Apps Database from version12.1.0.2 to 19.19. I sincerely appreciate your time and interest. Please stay tuned for more informative content and updates. We look forward to welcoming you back soon. 

If you have not yet explored the blog on Oracle Apps R12.2.12 Installation Steps, we kindly encourage you to follow the provided link.

Oracle Apps R12.2.12 on Oracle Linux OEL 7.9 using Oracle VirtualBox

 

 

Contact

Get in Touch
  • Address: Karachi, PAKISTAN
  • Email: askme@SyedSaadAli.com
  • Phone: +92-300-026-5668
  • Freelance: Available
Contact Form