Friday, 28 February 2025

EBS R12.1 Cross Platform Migration to Cloud - some Errors and solutions

Dear All,

In this post i am sharing EBS R12.1 Cross Platform Migration to Cloud - some Errors and solutions.

 Issue / Error no 1 :

 

Error:

 

Can't locate strict.pm in @INC (@INC contains: /ade/smayer_perl58_main_linux/perl58/bin/Linux/Opt/lib/5.8.3/i686-linux-thread-multi /ade/smayer_perl58_main_linux/perl58/bin/Linux/Opt/lib/5.8.3 /ade/smayer_perl58_main_linux/perl58/bin/Linux/Opt/lib/site_perl/5.8.3/i686-linux-thread-multi /ade/smayer_perl58_main_linux/perl58/bin/Linux/Opt/lib/site_perl/5.8.3 /ade/smayer_perl58_main_linux/perl58/bin/Linux/Opt/lib/site_perl .) at adclonectx.pl line 29.

BEGIN failed--compilation aborted at adclonectx.pl line 29.

 

Fix:

Set PERL path

 

export PATH=/apps/TEST/apps/tech_st/10.1.3/perl/bin:$PATH

export PERL5LIB=/apps/TEST/apps/tech_st/10.1.3/perl/bin/perl

 

Rapid Clone "adpreclone.pl" Fails with "Can't Find Strict.PM" on the Database Tier (Doc ID 1139403.1)

 


 Issue / Error no 2: 

 

Error:

g++: /apps/TEST/apps/apps_st/appl/sht/12.0.0/lib/stubs/libstdc++.so: No such file or directory

g++: /apps/TEST/apps/apps_st/appl/sht/12.0.0/lib/stubs/libgcc_s.so.1: No such file or directory

make: *** [/apps/TEST/apps/apps_st/appl/wip/12.0.0/bin/WICMLX] Error 1

Done with link of wip executable 'WICMLX' on Wed Oct 17 03:09:38 PDT 2018

 

Relink of module "WICMLX" failed.

 

 

g++: /apps/TEST/apps/apps_st/appl/sht/12.0.0/lib/stubs/libstdc++.so: No such file or directory

g++: /apps/TEST/apps/apps_st/appl/sht/12.0.0/lib/stubs/libgcc_s.so.1: No such file or directory

make: *** [/apps/TEST/apps/apps_st/appl/wip/12.0.0/bin/WICMLX] Error 1

Done with link of wip executable 'WICMLX' on Wed Oct 17 03:09:38 PDT 2018

 

Relink of module "WICMLX" failed.

 

Fix:

 

-   Login to application node

-   If $SHT_TOP/lib/stubs already exists backup any files in it

      Unzip the stubslib.zip located in $SHT_TOP/lib directory. 

      This will create the stubs/LINUX subdirectory if it doesn't already      exist

-   Move the library files from $SHT_TOP/lib/stubs/LINUX to $SHT_TOP/lib/stubs directory. The files are:

  libstdc++-2.3.2-stub.so

  libstdc++.so

  libstdc++.so.5

  libgcc_s.so.1

  libgcc_s.so.1-2.3.2-stub.so

 

Relinking WICDOL WICMEX WICMLX after a Windows to Linux migration failed (Doc ID 1425094.1)

 

  Issue / Error no 3:

 

Issue:

Errors while executing adlnktools.sh

 

/usr/lib/libXi.so.6: undefined reference to `__printf_chk@GLIBC_2.3.4'

/usr/lib/libXtst.so.6: undefined reference to `__snprintf_chk@GLIBC_2.3.4'

/usr/lib/libXtst.so.6: undefined reference to `_XEatDataWords'

/usr/lib/libXtst.so.6: undefined reference to `_XGetRequest'

/usr/lib/libXtst.so.6: undefined reference to `__stack_chk_fail@GLIBC_2.4'

/usr/lib/libXi.so.6: undefined reference to `XESetWireToEventCookie'

/usr/lib/libXtst.so.6: undefined reference to `__fprintf_chk@GLIBC_2.3.4'

/usr/lib/libXi.so.6: undefined reference to `XESetCopyEventCookie'

 

Fix:

Login as root

cd /usr/lib

rm libXtst.so.6

ln -s /usr/X11R6/lib/libXtst.so.6.1 /usr/lib/libXtst.so.6

 

Oracle Forms Upgrade to 10.1.2.3 fails with error /usr/lib/libXtst.so.6: undefined reference (Doc ID 1120527.1)

 

Issue 3.2:

/usr/bin/ld: cannot find -ljava

 

make: *** [/apps/TEST/apps/tech_st/10.1.2/sysman/lib/nmocat] Error 1

make: *** [/apps/TEST/apps/tech_st/10.1.2/sysman/lib/emagtm] Error 1

 

Fix:

$ find $ORACLE_HOME -name "*libjava*" -exec ls -lart {} \;

 

replace JRE_LIB_DIR with correct location in

 

$ORACLE_HOME/sysman/lib/env_sysman.mk

 

JRE_LIB_DIR=/apps/TEST/apps/tech_st/10.1.2/jdk/jre/lib/i386

 

ld: 0706-006 Cannot find or open library file: -l java or -l jvm While Relinking In A Cloned Environment (Doc ID 1386496.1)

 

 

 Issue / Error no 4:

 

Errors in manager logfile

Routine AFPCSQ cannot set profile option value for USER_ID. ORACLE error 376 in get_responsibility_data

Cause: get_responsibility_data

 failed due to ORA-00376: file 219 cannot be read at this time

ORA-01110: data file 219: '+DATA/TESTEBS_PHX28F/77508D5

Errors in Database alert log

kkzifr3g: Encountered error ORA-12008

ORA-00376: file 228 cannot be read at this time

ORA-01110: data file 228: '+DATA/TESTEBS_PHX28F/77508D547BC4F995E053164B740A7B54/DATAFILE/a_txn_data01.dbf'

Fix:

Tablespaces are offline

select tablespace_name,status from dba_tablespaces;

alter tablespace APPS_TS_TX_DATA online;

 

  Issue / Error no 5:

 

Error:

opmn id=racsebdapp02:6200

    0 of 1 processes started.

ias-instance id=TEST_racsebdapp02.racsebdapp02.racsebsprodap.racsebsprodvc.oraclevcn.com

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

-------------------------------------------------------------------------ias-component/process-type/process-set:

    HTTP_Server/HTTP_Server/HTTP_Server/

 

Error

--> Process (index=1,uid=530148963,pid=28342)

    failed to start a managed process after the maximum retry limit

    Log:

    /inst/apps/TEST_racsebdapp02/logs/ora/10.1.3/opmn/HTTP_Server~1.log

 

Error in log file:

apachectl hardstop: httpd (pid ) not running

Kill if any stale processes

rm -fr $INST_TOP/ora/10.1.3/j2ee/oacore/persistence/*

rm -fr $INST_TOP/ora/10.1.3/j2ee/oafm/persistence/*

rm -fr $INST_TOP/ora/10.1.3/j2ee/forms/persistence/*

rm $ORA_CONFIG_HOME/10.1.3/opmn/logs/states/*

 

Run autoconfig

Make sure mount point is mounted with nolock option(if it is NFS)           

OHS: HTTP_Server Fails to Start Using "opmnctl startall" with Error "mod_oc4j: Error happened while finalizing configuration and OC4J Plugin will not work. Is about to exit" from ORACLE_HOME/Apache/Apache/logs/error_log (Doc ID 2236181.1)

 

Solution 1:

1. $ORACLE_HOME is located at mount point /app. Mount /app with no lock option to remove NFS locks.

2. Remove or Move $ORACLE_HOME/opmn/logs/states

Start OAS using <ORACLE_HOME>/bin/opmnctl startall

 

umount -l /apps

vi /etc/fstab

mount /apps

mount /inst

 

 

Happy learning ... 


Thanks,

Srini

Cross-Platform Database Migration (across same endian) using RMAN backupset in 12c

 Hi All,

In this post i have shared Cross-Platform Database Migration (across same endian) using RMAN backupset in 12C 

High level steps : 


      Step 1:  Connect to Source database and open it read only
 Step2:  Take backup of the Source database :
 Step 3:  On the destination server (Windows) create the pfile and the oracle service
 Step 4:  Restore the database from the backup
 Step 5: Get the controlfile recreation script from the source database Solaris taken in step 2
 Step 6:  Alter the database open resetlogs

Pre-requisite:

  • To perform cross-platform data transport using backup sets, the version of the destination database must be Oracle Database 12c Release 1 (12.1) or later.
  • The COMPATIBLE parameter in the server parameter file of the source database and the destination database must be set to 12.0.0 or higher.
  • The source database must be open in read-only mode.
  • The DBMS_TDB.CHECK_DB procedure must run successfully.
  • When you transport entire database the source platform and the destination platform must use the same endian format.
  • When endian formats are different format you can transport tablespace/datafiles.
  • TO PLATFORM and FOR TRANSPORT clauses are not supported in Oracle Database 10g Release 2 (10.2) or Oracle Database 11g, you can transport data from these versions of the database to Oracle Database 12c Release 1 (12.1).
    Please refer Note 1644693.1 How to restore a pre-12c backup to a cross-platform, Cross-endian 12c database

This new 12c functionality uses different keyword used in the backup command:

TO PLATFORM:  Perform  conversion on the source database.

FOR TRANSPORT:  Performs conversion on the destination database so offloads the load from source database.

In the below example:

Source database :- Solaris Operating System (x86-64) (Little Endian format)
Source database name : Source
Destination database :- Microsoft Windows x86 64-bit (Little Endian format)
User test1 is created and is granted SYSBACKUP privilege. 

Step 1:  Connect to Source database and open it read only


The source database is the database that contains the data that needs to be transported to a different platform.

In this example, the test1 user is granted the SYSBACKUP privilege in the source database, prod_source.
   

$ RMAN
RMAN> Connect target "test1 AS SYSBACKUP";

    target database Password:
    connected to target database: source (DBID=2390246677)
    using target database control file instead of recovery catalog

RMAN> Shutdown immediate

      database closed
      database dismounted
      Oracle instance shut down

RMAN> Startup mount;

      connected to target database (not started)
      Oracle instance started
      database mounted

RMAN> Alter database open read only ;
Statement processed  

Step2:  Take backup of the Source database :

To Take advantage of parallelism you can configure parallelism in RMAN configuration. Otherwise, by default one channel would be used to take the backup.

RMAN> Configure device type disk parallelism 5;

In the Below example we are using FOR TRANSPORT Instead of TO PLATFORM. So the conversion would be done on destination database during restore.

RMAN> BACKUP
 FOR TRANSPORT
 FORMAT '/u01/app/oracle/oradata/source/%U'
 database ;


Finished backup at 23-Feb-25

   
Copy the backuppiece created to the destination server.  The backuppieces created in the above example are: 

/u01/app/oracle/oradata/source/04q7kr31_1_1
/u01/app/oracle/oradata/source/03q7kr31_1_1
/u01/app/oracle/oradata/source/02q7kr31_1_1
/u01/app/oracle/oradata/source/01q7kr31_1_1 

Take a controlfile backup to trace which would be used in step 5 to recreate the controlfile on destination server

SQL>Alter session set tracefile_identifier='create';

SQL>Alter database backup controlfile to trace resetlogs;

SQL>Show parameter user_dump 

Go to this location

ls -lrt *create.trc

Copy this trace to Destination database 

Step 3:  On the destination server (Windows) create the pfile and the oracle service


1.  Create the Oracle service and the pfile to be used.

   Pfile should have below value
  
 

   db_name=<same as Source db>
   Control_files=<new location on destination database>
   compatible=<same as source>
   DB_CREATE_FILE_DEST=<Location where you want your datafiles to be restored>
  
  Add other parameters as per your environment    

2.  Connect to the destination database, to which the database must be transported, as TARGET.

    Please ensure DB_CREATE_FILE_DEST is set in the init.ora else you would get error  

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 08/05/2015 10:12:45
RMAN-05088: DB_CREATE_FILE_DEST is not set

  

C:\app>  set oracle_sid=source

RMAN> CONNECT TARGET /;

RMAN> Startup nomount; 

Step 4:  Restore the database from the backup

The restore phase will restore only the datafile and not the controlfile.

RMAN>

RESTORE
FROM PLATFORM 'Solaris Operating System (x86-64)'
FOREIGN DATABASE TO NEW
FROM BACKUPSET 'D:\04q7kr31_1_1'
   BACKUPSET 'D:\03q7kr31_1_1'
   BACKUPSET 'D:\02q7kr31_1_1'
   BACKUPSET 'D:\01q7kr31_1_1' ;  

Sample output: 


Finished restore at 23-Feb-25  

Step 5: Get the controlfile recreation script from the source database Solaris taken in step 2

Since destination database is already in no mounted state.  Just run the script to recreate controlfile.
Change the path of the redo log to specify the path that exist on destination server.
Change the path of the datafile to the path they were restored to in step 4.

Here is a sample script

CREATE CONTROLFILE REUSE DATABASE "SOURCE" RESETLOGS  ARCHIVELOG
    MAXLOGFILES 50
    MAXLOGMEMBERS 5
    MAXDATAFILES 100
    MAXINSTANCES 1
    MAXLOGHISTORY 292
LOGFILE
  GROUP 1 'D:\SOURCE\DATAFILE\redo01.log'  SIZE 100M BLOCKSIZE 512,     ==============>ModifIed as per destination location
  GROUP 2 'D:\SOURCE\DATAFILE\redo02.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 3 'D:\SOURCE\DATAFILE\redo03.log'  SIZE 100M BLOCKSIZE 512
-- STANDBY LOGFILE
DATAFILE
'D:\SOURCE\DATAFILE\O1_MF_SYSTEM_BW38QPT8_.DBF',                     ==============>Modified as per the restore on destination in step 4
'D:\SOURCE\DATAFILE\O1_MF_SYSAUX_BW38QPTG_.DBF',
'D:\SOURCE\DATAFILE\O1_MF_UNDOTBS1_BW38QPTP_.DBF',
'D:\SOURCE\DATAFILE\O1_MF_USERS_BW38QPTY_.DBF'
 CHARACTER SET WE8MSWIN1252;

 

SQL>Connect target /

Run the create controlfile script 

SQL>Alter database mount ; 

SQL>Select name from v$datafile :

Should show all the datafiles in correct path where they were restored on destination

SQL>Select member from v$logfile ;

Ensure this path exist

Step 6:  Alter the database open resetlogs

RMAN> Alter database open resetlogs  ;

Statement processed 

 
Add temp file

SQL> alter tablespace temp add tempfile size 100M;

Thanks,
Srini

Wednesday, 5 February 2025

Oracle RAC DBA Online Training - 15th Feb 2025

 Dear All,

Those who want to learn Oracle 19C RAC DBA online training from starting to Expert level follow the below course content.

Course Duration:  7 weekends ( Sat & Sun)  3 hours / per day ( 42 hours )

 

Staring the training from 15th Feb 2025 to 30th Mar 2025 (Total 7 weekends)

Weekend sessions: Saturday: 8:00 AM to 11 AM IST , 10:30 PM to 1:30AM ET

                                     Sunday:  8:00 AM to 11 AM IST , 10:30 PM to 1:30AM ET

 

Demo Session :   Oracle RAC DBA Demo session Weekend batch

Time: 15th Feb 2025 08:00 AM IST

Join Zoom Meeting :: will share on request those who are interested to join Oracle RAC DBA online training .

 

Course Content:

 

WhatsApp group:

https://chat.whatsapp.com/JTC9OhT5Aq1ETTuByC3MEr

 

Contact no:  +91 9392634440 ( whatsapp) , mail id :  racsinfotech@gmail.com

Registration Form :: https://docs.google.com/forms/d/1L8gWNTCP3WvOlklR62oag3XGXCPqd_CBjbDl2AtsK1s/viewform

 

 

RAC Course Contents:

1. Introduction to Oracle Custer ware / Cluster ware Architecture

>> Standalone Vs RAC

>> What is Oracle Cluster ware

>> Oracle Cluster ware Architecture and Cluster Services

>> RAC One Node Vs RAC database

>> Online Relocation

>> Networking in Cluster ware

>> Cluster ware services Start-up and shutdown Sequences

>> what are OCR and Voting disk

 

2. Linux Installation and Configuration step by step on Oracle VM.

>> Oracle Virtual box 7 version setup on windows.

>> Installation of Linux OS (7.x)

>> OS Post Installation checks and Tasks

>> Node1 VM to Node2 VM Clone .

 

3. Network Setting and Configuration setup.

>> Public IP, Private IP , VIP and Scan IP Configuration

>> DNS Server Configuration

>> VM Shared Disk Creation process

>> how to create ASM Disks using VM shared disk's.

 

4. Cluster Installation and Configuration steps.

>> Custer Pre-installation Tasks

   > System requirements Checks

   > Kernel parameters checks

   > Create required directory ,groups and users for grid & db install

   > Execute the ./runcluvfy from any one of the nodes using below command

     ex: ./runcluvfy.sh stage -pre crsinst -n racnode1,racnode2 -verbose)

>> ssh user password less /equivalence configuration on cluster nodes.

>> Start the Oracle Cluster Installation and Configuration steps using ./gridSetup.sh

>> Cluster Post Installation checks

ex:: ./cluvfy stage -post crsinst -n racnode1,racnode2 -verbose

 

5. Oracle RAC DB Installation and Configuration steps

>> Pre-installation tasks

   > System requirements Checks

   > Kernel parameters checks

   > Create required directory ,groups and users for db install

   > ssh user password less connection  setup / equivalence configuration

>> Installation and Configuration RAC DB.

>> RAC DB software Post Installation Tasks

 

6. Create Oracle ASM Disk groups >> +OCR,+DATA & +ARCH etc disk groups.

 

7. Oracle RAC Database Creation and Configuration

>> Pre-installation for Oracle RAC DB Configuration

./cluvfy stage -pre dbcfg -n racnode1,racnode2 -d Oracle_home -verbose

./cluvfy stage -pre dbinst -n node_list [-r {11gR1 | 11gR2 | 12cR1 | 12cR2}]  [-osdba osdba_group] [-d Oracle_home] [-fixup [-fixupdir fixup_dir] [-verbose]

 

>> Oracle RAC Database Creation and Configuration using dbca / command line using response file.

>> Post Installation Tasks for Oracle RAC DB Configuration

 

8. Oracle ASM Introduction & Architecture

>> Oracle ASM Storage Components.

>> what is Mirroring and Stripping in ASM.

>> what are the ASM instance parameters.

>> Oracle ASM Administration process / steps.

 

9. Oracle ASM Disk Groups Administering

>> How to Administering Oracle ASM Disk Groups.

>> How to Preform Adding Disk to Disk group and Dropping Disks from disk groups.

>> How to Preform Disk group Rebalance and Rebalance Power limit in ASM.

 

10. RAC Database Administration and Oracle Cluster ware Administration

 

##Oracle Cluster ware Administration

>> What are OCR and Voting Disks in Cluster.

>> What are the Cluster Resource and Services

>> What are crsctl vs srvctl utilities / tools.

>> How to Restarting Oracle Cluster ware and Services.

>> How to Restarting Oracle Cluster Databases.

>> How to Rebooting Cluster Nodes.

>> what is VIP, SCAN IP , Private and Public IP In RAC.

 

11. RAC Database Administration

>> Oracle RAC specific parameters In Init/spfile.

>> Difference between pfile and spfile in RAC database

>> Use of password file for RAC database

>> How to manage the Redo Log Files and Control file.

>> UNDO & TEMP Tablespaces use cases.

 

12. Backup and Recovery in Oracle RAC Database

>> Backup strategy Understanding in RAC.

>> Types of Backups in RAC.

>> Recoveries scenarios in RAC.

 

13. Networking setup in RAC ( Listeners in Cluster ware / Local )

>> Grid / ASM Listeners.

>> Remote / SCAN Listeners (Remote Listeners).

>> Local Database Listeners (Local Listeners).

 

14. RAC Database Multitenant Architecture vs Non Multitenant Architecture

>> Oracle Multitenant Architecture In-detail.

>> what are CDB and PDB databases.

>> How to Install the Pluggable database(PDB).

>> How to Clone Pluggable Database(PDB).

 

15. ASM Cluster Filesystem (ACFS) Configuration and Administration

>> How to Configure ACFS in Linux.

>> How to Administering & Managing ACFS.

 

16. Patching Oracle RAC and RAC Databases

>> What are the OPatch Vs opatchauto utilities.

>> How to Patch Oracle Cluster ware.

>> How to Patch RAC Oracle Home.

>> How to Patch RAC Databases.

>> what is Datapatch.

 

17. Oracle Cluster/Grid and Database Upgradation from lower version to Higher

>> Pre-Upgrade steps.

>> How many ways we can perform db and grid  upgrade.

>> Post-upgrade steps.

 

18. How to perform Node Addition and Deletion in RAC

>> Pre-requisites for node addition.

>> Node addition steps

>> post node addition steps.

>> Pre-requisites for node deletion.

>> Node deletion steps

>> post node deletion steps.

 

19. How to Convert the Single Instance to RAC using DBCA / OEM / RCONFIG etc.

 

**20. Interview Preparation Tips and Mock Interviews to crack Realtime Interviews.

**21. Resume / CV Preparation Tips and suggestions.


Thanks,

Srini