Drop Down MenusCSS Drop Down MenuPure CSS Dropdown Menu

Monday, June 20, 2022

OLSNODES command in RAC:

 The olsnodes command provides the list of nodes and other information for all nodes participating in the cluster.You can use this command to quickly check that your cluster is operational, and all nodes are registered as members of the cluster. This command also provides an easy method for obtaining the node numbers.

oracle@vgeb07hr:/dev/mapper [+ASM1]# olsnodes -h

Syntax:

olsnodes [[-n] [-i] [-s] [-t] [node_name | -l [-p]] | [-c]] [-g] [-v]

Command Description

-n Lists all nodes participating in the cluster and includes the assigned node numbers.

-i Lists all nodes participating in the cluster and includes the Virtual Internet Protocol (VIP) address assigned to each node.

-s Displays the status of the node: active or inactive.

-t Displays node type: pinned or unpinned.

node_name Displays information for a particular node.

-l [-p] Lists the local node and includes the private interconnect for the local node. The -p option is only valid when you specify along with the -l option.

-c Displays the name of the cluster.

-g Logs cluster verification information with more details.

-v Logs cluster verification information in verbose mode. Use in debug mode and only at the direction of My Oracle Support.

To find all node in clusters:

# olsnodes -i -n -s -t

To find local node name with private interconnect.

 olsnodes -l -p

To find cluster name:

olsnodes -c

Refrence:

http://oracle-help.com/oracle-rac/olsnodes-command-rac/

https://dbaclass.com/article/olsnodes-commands-rac/

Sunday, June 19, 2022

Interview Question/Answer-Application 11i/R12/R12.2:

 Why do you need GUEST/ORACLE To connect to database?

GUEST account is used to obtain the decrypted value of the apps password for internal processes (i.e. when there is a need to connect as apps internally).

when the account gets locked/end-dated then you will see a blank page when you try to login to the instance.In that scenario you will have to correct this situation from the back-end as you will not be able to login to the application.

*******

The GUEST user account is used in the application internally ( it is an application user). One of the major needs of this account is when there is a need to decrypt the APPS password (which is stored in an encrypted format in the apps tables). In order to decrypt the APPS password, the GUEST username/password is used to accomplish this task (using “Guest User Password” profile option).

GUEST account is used to obtain the decrypted value of the apps password for internal processes (i.e. when there is a need to connect as apps internally).

when the account gets locked/end-dated then you will see a blank page when you try to login to the instance.In that scenario you will have to correct this situation from the back-end as you will not be able to login to the application.

You will not find much details about the GUEST account documented anywhere ( may be coz of security reasons).

Key points :

s_guest_user is GUEST and s_guest_pwd is EXPORT in adconfig xml file.

select fnd_web_sec.validate_login(‘GUEST’,’ORACLE’) FROM DUAL;  ( to validate if guest user is corrrect)

select fnd_profile.value(‘GUEST_USER_PWD’) from dual; (to find the current guest user password)

Check the GUEST/ORACLE password is present in DBC file at $FND_TOP/secure directory as well as at $FND_TOP/secure/SID_hostname directory.

What happen if “alter user apps identified by password” is fired for apps user?

We cannot change apps password through alter user statement because Oracle Application use APPS PASSWORD to encrypt end users password in FND_USER and oracle users password in FND_ORACLE_USERID. So using FNDCPASS to change password of APPS, changes the column encrypted_oracle_password in these two tables, but alter dont do this actions. FNDCPASS update DBA_USERS table as well.While when you run alter user apps identified by password it will update only DBA_USERS.

If you have mistakenly did used alter user, you may see below error:

APP-FND-01496: Cannot access application ORACLE password

Cause: Application Object Library was unable access your ORACLE password.

It is very difficult to recover the application at this stage.

What is Actualize all, How it works?

When the number of old database editions reaches 25 or more, we should consider dropping all old database editions by running the adop actualize_all.

What is difference between finalize_mode=full & finalize_mode=quick ?

$ adop phase=finalize

$ adop phase=finalize finalize_mode=quick == This is Default Mode

$ adop phase=finalize finalize_mode=full    

Finalize can be run in 2 modes: “QUICK” or “FULL”

FULL gathers database dictionary statistics (not transaction tables statistics)

QUICK skips gathering database dictionary statistics.

How to change weblogic password from Backend in EBS 12.2.x?

On EBS 12.2.X environments , if you are on R12.AD.C.Delta.7 and R12.TXK.C.Delta.7 or later, we can change Weblogic admin server password using the below script.

1. Startup admin server. Do not start any other services

$. ./EBSapps.env RUN

$ cd $ADMIN_SCRIPTS_HOME

$adadminsrvctl.sh start

2. Run the below script  

perl $FND_TOP/patch/115/bin/txkUpdateEBSDomain.pl -action=updateAdminPassword

[The script will prompt for Current and New Weblogic Password and restarts Weblogic admin server using the new password.]

3. Run fs_clone to propagate the changes to the alternate file system (Patch File system).

How to Update APPS password in EBS Datasource (EBS 12.2.x)?

 From EBS 12.2.x versions, whenever we change apps password we need to update the new apps password in EBS Datasource.

Otherwise managed servers wont come up.

Steps to update apps password in Weblogic datasource for EBS 12.2x, post AD-TXK 7:

1. Start Only Admin server,Do not start any other services

$. ./EBSapps.env RUN

$ cd $ADMIN_SCRIPTS_HOME

$adadminsrvctl.sh start

2. Update apps password in Datasource from backend:

$perl $FND_TOP/patch/115/bin/txkManageDBConnectionPool.pl

When prompted select the "updateDSPassword" option.

Sample screen output:

perl $FND_TOP/patch/115/bin/txkManageDBConnectionPool.pl

Please select from list of valid options

        updateDSPassword - Update WebLogic Datasource Password

        updateDSJdbcUrl  - Update WebLogic Datasource Connection String

Enter Your Choice : updateDSPassword

Enter the full path of Applications Context File [DEFAULT -]:

Enter weblogic admin server password:

Enter the APPS user password:

Note: We can also update the apps password in EBS Datasource from Weblogic console. 


What if we missed to run adpreclone.pl and copy completed?

What will happened to scheduled request if submitted used end dated?

How to monitor CM with OEM?

What do do if patch fails in relinking?

what is batch size in adpatch?

While applying a patch, the patch may contain scripts that update data in batches. This prompt allows you to specify how many rows will be updated at a time. It is recommended that you accept the default unless you know your system well.If you enter a negative or an invalid number, adpatch will use the default value (in this case a value of 1000).

(Or)

The Batch Size refers to the number of rows to commit at a time when cerrtain scripts run.If we dno't enter a specific value, Auto Patch takes the default, Which is normall set to a relatively smaller value to accommodate systems with a small rollback segment.

+++++++++++++Doc ID 1311402.1+++++++++++

What is the difference between CPU patch and PSU patch.Can we apply CPU patch over psu patch?

patch conflict

Different types of Patch Conflicts - Superset/Subset/Duplicate/Bug/File [ID 563656.1]

Patch:

Patch is a piece of software or code designed to fix the problems of the existing software.  These fixes can be security vulnerability fixes or bug fixes.In certain cases the patches increases or enhances the functionality of the software as well

Interim patch:

Interim patches are also known as “one of patches”. Interim patches are released in between the release of CPU or PSU patch to fix a specific issue. These patches generally address specific bug’s fixes for a specific customer and should not be applied unless specified by Oracle support services.

Critical patch update (CPU):

These are the cumulative patches consisting of security fixes. 

Patch set update (PSU):

These are quarterly cumulative patches that contain security fixes as well as additional fixes sometimes, PSU includes feature enhancements as well.  So we can say that PSU includes the security fixes of the CPU plus additional fixes.PSUs contain CPUs plus other bug fixes. Which path your choose (CPUs only or PSUs only) depends on your requirements and needs. Systems that store sensitive information and/or are exposed to the internet (or are more susceptible to attack) will need to go the CPU route (where patches are released on a quarterly basis).

Once the PSU is applied only PSUs can be applied in future quarters until the database is upgraded to knew base version

Can we apply CPU patch over psu patch?

Depend.

But OPATCH ultilty handle with confilct of patchset installed.

Patch Conflicts

All patches may not be compatible with one another. For example, if a patch has been applied, all the bugs fixed by that patch could reappear after another patch is applied. This is called a conflict situation. OPatch detects such situations and raises an error when a it detects a conflict.

http://docs.oracle.com/cd/B19306_01/em.102/b16227/oui8_opatch.htm

Logo change in EBS:

https://www.funoracleapps.com/2023/01/how-to-changeadd-custom-logo-at-top-of.html

What are the high level steps for upgrading 11i to R12.1.3?

Restart the failed patch from place you left

adop phase=apply patches=patch restart=yes

Restart the failed patch from beginning

adop phase=apply patches=patch abandon=yes

Ignore Failed Patch and Apply New Patch

adop phase=apply patches=NewPatch abandon=yes

Reapply a previously applied Patch 

adop phase=apply options=forceapply patches=patch

How to abort a patching cycle

adop phase=abort

Post step run below command

adop phase=cleanup cleanup_mode=full

adop phase=fs_clone

If the system crashes and unable to proceed the patch then what to do

We will see error as 

Error: Unable to continue as already another user is using adzdoptl.pl.

Previous session exist, cannot continue as per user input

Steps:

➢ Run the following statement to find out the session that is in running state:

 select adop_session_id from ad_adop_sessions where status='R';

➢ Set the status to Completed 'C' for that session to re- try the phase that was interrupted

 update ad_adop_sessions set status='C' where status='R’

ADOP question : https://www.funoracleapps.com/2021/11/ebs-122-adop-interview-questions.html



Undo Tablespace/Undo Management in Oracle:

Oracle Database keeps records of actions of transactions, before they are committed and Oracle needs this information to rollback or undo the changes to the database. These records are called rollback or undo records.

These records are used to:

Rollback transactions - when a ROLLBACK statement is issued, undo records are used to undo changes that were made to the database by the uncommitted transaction.

Recover the database - during database recovery, undo records are used to undo any uncommitted changes applied from the redolog to the datafiles.

Provide read consistency - undo records provide read consistency by maintaining the before image of the data for users who are accessing the data at the same time that another user is changing it.

UNDO_RETENTION:

This value specifies the amount of time, undo is kept in the tablespace.The parameter undo_retention to set the amount of time you want undo information retained in the database.

The default value for the UNDO_RETENTION parameter is 900.

If an active transaction requires undo space and the undo tablespace does not have available space, then the system starts reusing unexpired undo space (if retention is not guaranteed). This action can potentially cause some queries to fail with the ORA-01555 "snapshot too old" error message.

UNDO_MANAGEMENT = AUTO