HAPPY NEW YEAR 2021

For Any queries, please mail us at support@funoracleapps.com

Enterprise Manager 11g FMW Console Hangs While Showing Loading Animation in Oracle Apps R12.2

Enterprise Manager 11g FMW Console Hangs While Showing Loading Animation in Oracle Apps R12.2


When login to em for Oracle Apps R12.2 the animation screen is stuck and not progressing.



Solution:



Run the JVM in Headless mode.It removes the dependency on X-windows access and has rendering performed by JVM code. Perform the following steps to add this parameter to the Java startup parameters for the WLS Admin Server:

  • Navigate to the Context Editor in Oracle Applications Manager or edit context file .
  • Locate the setting for s_nm_jvm_startup_properties.
  • Add the end of the value add the following: -Djava.awt.headless=true.
  • Save the changes.
  • Run Autoconfig
  • Bounce the WLS Admin Server using adadminsrvctl.sh script.
  • Connect to Oracle Enterprise Manager 11g FMW console to confirm this not proceeds to expected page.



If you like please follow and comment

How to Mount AWS S3 Bucket on Linux (OEL/Centos/Ubuntu)

How to Mount AWS S3 Bucket on Linux (OEL/Centos/Ubuntu)

I am going to use  S3FS solution which is FUSE (File System in User Space). Using this we can use commands like cp, mv on the system. It will be a normal mount on the Linux system.

Prerequisites:

 You must create s3 bucket in AWS console. I created a folder funmount.

Steps:

 

1: Remove Existing Packages

Login to your Linux instance. 

First of all, check whether you have already installed any existing fuse or S3FS on your server. In case it exists, then remove it to avoid conflicts on the server.

For CentOS OR RHEL Users:

 # yum remove fuse fuse-s3fs

For Ubuntu Users:

 $ sudo apt-get remove fuse

 

2: Install dependency Packages.

Now you must install packages that are required for fuse and s3cmd.

For CentOS or RHEL users:

#  yum install openssl-devel gcc libstdc++-devel gcc-c++ fuse fuse-devel curl-devel libxml2-devel mailcap git automake

For Ubuntu Users:

# apt-get install build-essential libcurl4-openssl-dev libxml2-dev mime-support

 

3: Download and Compile Latest Fuse.

Change your directory location to /usr/src using cd command then download and compile fuse source code. After compiling, add fuse to the kernel. In our example we are using fuse version 3.0.1.

#cd /usr/src/

#wget https://github.com/libfuse/libfuse/releases/download/fuse-3.0.1/fuse-3.0.1.tar.gz

#tar xzf fuse-3.0.1.tar.gz

#cd fuse-3.0.1

#./configure --prefix=/usr/local

#make && make install

#export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

#ldconfig

#modprobe fuse

 

4: Download and Compile Latest S3FS

To download the latest version of s3FS change your directory to “/usr/src/” along with below list of commands.

#cd /usr/src/

#wget https://github.com/s3fs-fuse/s3fs-fuse/archive/v1.82.tar.gz

#tar xzf  v1.82.tar.gz

#cd s3fs-fuse-1.82

#./autogen.sh

#./configure --prefix=/usr --with-openssl

#make

#make install

 

5:Setup Access Key

To configure s3fs you need both access key and secret key of your s3 AWS account  I am using root account to do the setup.

NOTE: Kindly replace the AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY with your actual key values.

 

# echo AWS_ACCESS_KEY_ID:AWS_SECRET_ACCESS_KEY > ~/.passwd-s3fs

# chmod 600 ~/.passwd-s3fs

 

6:Mount S3 Bucket on Linux

The final step would be to mount the s3 bucket on Linux flavors such as CentOS, RHEL and Ubuntu.

For this example, we are using s3 bucket name as “funmount“ and mount point as /s3mnt_pt.

# mkdir /tmp/cache

# mkdir /s3mount

# chmod 777 /tmp/cache /s3mount

# s3fs -o use_cache=/tmp/cache funmount /s3mount


Add below entry in fstab to automatically mount after reboot.

s3fs#funmount /s3mount fuse _netdev,rw,nosuid,nodev,allow_other,nonempty,use_cache=/tmp/cache 0 0 

How to access your s3 bucket just use normal cd , ls command.

# cd /s3mount

# ll

total 1

d---------. 1 root root 0 Jan 12 10:37 myfolder

# cd myfolder

# ll

total 1

----------. 1 root root root an 12 10:39 bucket.rtf

# pwd

/s3mount/myfolder




If you like please follow and comment

How to run Opatch in Silent mode without User Interaction

How to run Opatch in Silent mode without User Interaction


In this post, I am going to share the steps on how to run the Opatch in Silent mode. This is helpful when you want to automate Opatch utility and don't want any user interaction.


Steps:

1)Download and install the latest opatch tool.
Patch # 6880880
Select a Release: 10.2  -OR-  11.1 -OR-  11.2 -OR-  12.1 

2)Create a response file and copy the created response file at any required location.

Syntax :
export ORACLE_HOME=<my_oracle_home_path>
$ORACLE_HOME/OPatch/ocm/bin/emocmrsp  -no_banner -output <specify_the_location>/file.rsp

* creates the response in location specified by the parameter "-output"
* running without "-output <specify_the_location>/file.rsp"  creates the file in current directory with default name(ocm.rsp)

I don't want to provide any email address to just hit enter and y to stay uninformed.

[oracle@ebs122 ~]$/oracleapps/DATABASE/GOLD/12.1.0/OPatch/ocm/bin/emocmrsp

OCM Installation Response Generator 10.3.7.0.0 - Production
Copyright (c) 2005, 2012, Oracle and/or its affiliates.  All rights reserved.

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
The OCM configuration response file (ocm.rsp) was successfully created.


ocm.rsp file can be also used with other OH - like, GRID, CRS, ORACLE_HOME, make sure this file is placed in an accessible path and have 775 file permission (i.e $chmod  775 ocm.rsp)


3) Use the response file to apply any patch in the silent mode now.

cd 22496904
opatch apply -silent -ocmrf $ORACLE_HOME/OPatch/ocm.rsp

Examples (Showing command usage for  CPU/SPU/PSU/ "opatch auto" )

1) User below for CPU/SPU apply
opatch napply -silent -ocmrf <ORACLE_HOME>/ocm.rsp

2)Use below for  PSU apply
opatch apply -silent -ocmrf <ORACLE_HOME>/ocm.rsp
3)GRID patching command changed sightly as below 
opatch auto -ocmrf <ORACLE_HOME>/ocm.rsp


Note:- Starting with OPatch version  12.2.0.1.5  and higher,opatchauto execution doesn't require ocm.rsp






If you like please follow and comment

Understanding Hard Link and Soft Link in Linux

Understanding Hard Link and Soft Link in Linux

To understand the hard link and soft link you must first know What is an inode.

Everything in Linux is considered as a  file.
An inode is a data structure that stores various information about a file in Linux, such as the access mode (read, write, execute permissions), ownership, file type, file size, group, number of links, etc. Each inode is identified by an integer number. An inode is assigned to a file when it is created.
A file system is divided into two parts – data blocks and inodes. The number of blocks is fixed once created, and can’t be changed. The name, path, location, links and other file attributes are not located in the directory. Directories are simply tables that contain the names of the files with the matching inode number.

To view, a file’s inode number use the below command

root@fundb:/HS# ls -li
total 10
865675319 -rwxrwxrwx 1 root root 1782 Aug 25 15:19 file_password_update.sh
865675318 -rwxrwxrwx 1 root root  365 Aug 25 15:19 tmpwatch


Hardlink|Softlink

















Hard Link and Soft Link

Hard Links

It is termed a mirror copy of the file. 
Hard Links have the same inodes number.
ls -l command shows all the links with the link column showing the number of links.
Links have actual file contents
Removing any link, just reduces the link count but doesn't affect the other links.
You cannot create a Hard Link for a directory.
Even if the original file is removed, the link will still show you the contents of the file.
It works within the same filesystem.
It has the same inode number and permissions as the original file

Soft Links

It is the actual link to the file.
Soft Links have different inodes numbers.
ls -l command shows all links with second column value 1 and the link points to the original file.
Soft Link contains the path for the original file and not the contents.
Removing a soft link doesn't affect anything but when the original file is removed, the link becomes a 'dangling' link that points to a nonexistent file.
A Soft Link can link to a directory.
It can work between multiple filesystems.
It has a different inode number and file permissions than the original file

Example:
Let's say I have a file test

To create a soft link we use the below command.

ln -s test test_soft

How to remove 

rm test_soft
or
unlink test_soft

To create a hard link we use the below command.

ln test test_hard

How to remove 

rm test_hard
or
unlink test_hard

See the image below and compare what has been explained earlier.

Hardlink










If you like please follow and comment

Trying to resume a failed cutover session giving Invalid Credentials in Oracle Apps R12.2

Trying to resume a failed cutover session giving Invalid Credentials in Oracle Apps R12.2


If you attempt to resume a failed session after cutover exits with cutover_status=3, I receive an 'Invalid Credentials' error.

This will be because the database patch edition has already been promoted to be the new run edition. To resume and complete cutover successfully, run the command:

$ adop phase=cutover action=nodb





If you like please follow and comment

Useful Scripts related to Editioned Database in Oracle Apps

Useful Scripts related to Editioned Database in Oracle Apps

There are a number of SQL*Plus scripts that can provide useful information about the state of your editioned database environment. All ADZD* scripts are found under $AD_TOP/sql.

ADZDDBCC - the database compliance checker, shows violations of the database object development standards. Warning: this script takes a long time to run.
ADZDSHOWED - Show database editions and current editions.
ADZDSHOWLOG - Show full diagnostic log for online patching infrastructure.
ADZDSHOWLOGEVT - Show only event and error messages from the online patching diagnostic log (a useful summary, without the detailed statement text).
ADZDSHOWLOGERR - Show only error messages from online patching diagnostic log.
ADZDSHOWEV TABLE_SYNONYM_NAME - Show editioning view column mapping for the table.
ADZDSHOWTAB TABLE_SYNONYM_NAME - Show table information and related objects.
ADZDSHOWMV MVIEW_NAME - Show materialized view information and related objects.
ADZDSHOWTS - Show important tablespace status. Ensure that you have enough SYSTEM tablespace.
ADZDCMPED - Compare Patch Edition with Run Edition. Warning: this script may take a long time to run.
ADZDSHOWDDLS - Show stored DDL summary by phase.
ADZDALLDDLS - Show stored DDL statement text.
ADZDDDLERROR - Show stored DDL execution errors and messages.
adutlrcmp - Recompile all objects, with before/after the status report. Warning: this script may take a long time to run.


ADZDSHOWOBJS - Show Object Summary per edition. Counts of actual and stub (inherited) editioned object per edition.
ADZDSHOWAOBJS - Show Actual Objects in the current edition. These are the editioned objects that have been changed by the patch.
ADZDSHOWIOBJS - Show Inherited Objects in the current edition. These are the editioned objects that remain untouched in the patch edition. This script is used to confirm that the adop actualize_all command has worked properly.
ADZDSHOWCOBJS - Show Covered Object Summary per edition. Count of objects in old editions that have a replacement in the run edition. This script is used to confirm that the adop cleanup command has worked properly.
ADZDSHOWCOBJX - Show Covered Object List. List of objects in old editions that have a replacement in the run edition.
ADZDSHOWSM - Show Seed Manager status.
ADZDSHOWTM - Show Table Manager status.
ADZDSHOWAD - AD (online patching) database object status
ADZDSHOWSES - Show sessions connected to the database (by edition).
ADZDSHOWDEP OBJECT_NAME - Show objects that OBJECT_NAME depends on.
ADZDSHOWDEPTREE OBJECT_NAME - Show the full dependency tree of objects that OBJECT_NAME depends on.




If you like please follow and comment

Different Status of Cutover and their Meaning on Oracle Apps R12.2

Different Status of Cutover and their Meaning on Oracle Apps R12.2

The cutover operation is the most critical phase of an online patching cycle. Although other adop operations can be left to run unattended, you should carefully monitor the progress of cutover, so that you can respond quickly in case of any issues. If cutover fails to complete, check log messages for any problems that may require correction. Then try executing the cutover command again. When cutover is re-executed after a previous failure, adop will restart cutover processing at the failure point for any nodes that did not complete, and the processing may be successful this time.

If we run the below script, we can see various status codes for cutover. These can be helpful if the cutover has failed and we need to perform the next steps to fix it.

Script

select NODE_NAME,ADOP_SESSION_ID, PREPARE_STATUS , APPLY_STATUS  ,CUTOVER_STATUS, CLEANUP_STATUS , ABORT_STATUS , STATUS
from AD_ADOP_SESSIONS
order by ADOP_SESSION_ID;


If we see CUTOVER_STATUS column the below will determine the code and status

-->='Y' 'COMPLETED'
--> not in ('N','Y','X') and status='F' 'FAILED'
-->='0' 'CUTOVER STARTED'
-->='1' 'SERVICES SHUTDOWN COMPLETED'
-->='3' 'DB CUTOVER COMPLETED'
-->='D' 'FLIP SNAPSHOTS COMPLETED'
-->='4' 'FS CUTOVER COMPLETED'
-->='5' 'ADMIN STARTUP COMPLETED'
-->='6' 'SERVICES STARTUP COMPLETED'
-->='N' 'NOT STARTED'
-->='X' 'NOT APPLICABLE'




If you like please follow and comment

How to execute an Empty Patching cycle in Oracle Apps R12.2

How to execute an Empty Patching cycle in Oracle Apps R12.2


In this post, I am going to share the way to run an empty patching cycle in Oracle Apps R12.2  without applying any patch.
This might be needed for testing purposes, switching the filesystem from fs1 to fs2, or vice versa.
In most interviews also you will see this question.

Simple Command

adop phase=prepare,finalize,cutover,cleanup


If you like please follow and comment

How to Install Apache (http) webserver on Linux 7

How to Install Apache (httpd) webserver on Linux 7


In post, I will how to install an apache webserver on OEL 7/oel7.

1)Install http package
[root@oel7 ~]# yum install httpd

2)Start httpd service
[root@oel7 ~]# service httpd start
Redirecting to /bin/systemctl start  httpd.service

3)Check the status of httpd service:
[root@oel7 ~]# service httpd status

4)Enable service to be started after reboot
[root@oel7 ~]#systemctl enable httpd

5)Add hostname:IP in http configuration 
[root@oel7 ~]# echo 'ServerName oel7.lab:80' >> /etc/httpd/conf/httpd.conf
[root@oel7 ~]# service httpd restart

6)Enable firewall
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload

7)Now try to access the IP or host name

http://oel7.lab:80
http://192.168.56.110

8)We can also create simple index page to test
[root@oel7 ~]# echo "APACHE Testing on oel7" > /var/www/html/index.html

Reload your browser to see your new index.html page


Note: Configuration file for Apache is /etc/httpd/conf/httpd.conf


If you like please follow and comment

Error: The certificate /usr/share/rhn/ULN-CA-CERT is expired on OEL

The certificate /usr/share/rhn/ULN-CA-CERT is expired.

Error:

On running yum command on Oracle Enterprise Linux 7(OEL), I was getting below error.

yum repolist
Loaded plugins: langpacks, ulninfo


The certificate /usr/share/rhn/ULN-CA-CERT is expired. Please ensure you have the correct certificate and your system time is correct.


Solution:

This is due to an expired certificate of the repository.

Manually replace the SSL certificate
To manually replace the client SSL certificate on an Oracle Linux machine, run the following steps as root on each server:


# cp /usr/share/rhn/ULN-CA-CERT /usr/share/rhn/ULN-CA-CERT.old
# wget https://linux-update.oracle.com/rpms/ULN-CA-CERT.sha2
# cp ULN-CA-CERT.sha2 /usr/share/rhn/ULN-CA-CERT


If you like please follow and comment