Sunday, 23 September 2018

Concurrent Managers are down error insert_fcp failed due to ORA-01403 no data found, ORA-06512

Hey DBA-Mates, Recently we faced this below error: ORA-01403: no data found
Scenario:
We are doing cloning and after all we started Application but we found that all Concurrent Manager is down except ICM.
We checked the Manager log under $ cd $APPLCSF/log then we found the error as shown below:

Error in CM :
The SQL statement being executed at the time of the error was:  and was executed from the file &ERRFILE.
Could not initialize the Service Manager FNDSM_host_SID. Verify that host has been registered for concurrent processing.

An error occured in client-side routine afpsmcsm for Service Manager FNDSM_host_SID.  The routine returned code 126.

Check for preceding errors and as well as the service manager log file for further details."
Routine AFPEIM encountered an error while starting concurrent manager POMGR with library /apps/sku/apps/apps_st/appl/fnd/12.0.0/bin/FNDLIBR.
Check that your system has enough resources to start a concurrent manager process. Contact your system admin : 17-AUG-2018 04:43:39
Starting OAMCOLMGR Concurrent Manager              : 17-AUG-2018 04:43:39

ORACLE error 1403 in insert_fcp
Cause: insert_fcp failed due to ORA-01403: no data found
ORA-06512: at "APPS.FND_CP_FNDSM", line 177
ORA-06512: at line 1.

The SQL statement being executed at the time of the error was:  and was executed from the file &ERRFILE.
Could not initialize the Service Manager FNDSM_ora-data_sku. Verify that ora-data has been registered for concurrent processing.

An error occured in client-side routine afpsmcsm for Service Manager FNDSM_ora-data_sku.  The routine returned code 126.

Check for preceding errors and as well as the service manager log file for further details."
Routine AFPEIM encountered an error while starting concurrent manager OAMCOLMGR with library /apps/sku/apps/apps_st/appl/fnd/12.0.0/bin/FNDLIBR.

Work-around/Solution:

1. We logged in to front end and we noticed that Host name for ICM is in "Caps letters" like HOSTNAME and for others CM hostname was like hostname.

2. Executed
SQL> EXEC FND_CONC_CLONE.SETUP_CLEAN;

SQL>update fnd_concurrent_queues set NODE_NAME='HOSTNAME' where ENABLED_FLAG='Y';

SQL>update fnd_concurrent_queues set TARGET_NAME='HOSTNAME' where ENABLED_FLAG='Y';
SQL> commit;
Commit complete.
SQL> exit

3. Run autoconfig on DB tier.
# pwd
$ORACLE_HOME/appsutil/scripts/SID_hostname
# ls -ltr adautocfg.sh
-rwx------   1 oracle   dba         1570 Aug 12  2017 adautocfg.sh
#

4. Run autoconfig on APPS tier.
$cd $APPL_TOP
$ . ./APPSSID_hostname.env
$ cd $ADMIN_SCRIPTS_HOME
$ ls -ltr adautocfg.sh
-rwx------   1 applmgr  oinstall    1564 Sep 17 08:03 adautocfg.sh
$

5. Start the application.
$cd $ADMIN_SCRIPTS_HOME
$ ls -ltr adstrtal.sh
-rwx------   1 applmgr  oinstall    8393 Sep 17 08:03 adstrtal.sh
$

Some more useful links:
Regards,
Ora-data Team

Friday, 7 September 2018

Why we enable Maintenance Mode in R12.1.3

Hey DBA-Mates, Good to know you all are doing Well !!!
Many of us are not clear about that why we enable Maintenance Mode even though our Application is stopped/down.

Almost people still know that only to inform users that Application is under Maintenance for Patching or any other task but this is partially true.
Almost 90% of interviewers will ask these Questions and we answers only Half-cooked answers as mentioned above.
We got this questions from many users then thought to share with you all because we didn't found google where clearly mentioned these reasons.
So, we collected the information and tried to make it simple and share with you all here.

Maintenance Mode was introduced in Release 11.5.10, in which users are not allowing to login any responsibility.
In Maintenance mode the Oracle Applications system is made accessible only for patching activities.

Why we need to enable Maintenance Mode and their Advantages:
As we know that there are several practical points relating to the use of Maintenance Mode:

We can toggle Maintenance Mode between Enabled and Disabled using the new Change Maintenance Mode menu in AD Administration (Adadmin), or the equivalent function in Oracle Applications Manager.

Although we can run AutoPatch (Adpatch) without enabling Maintenance Mode but noted there will be a significant degradation in performance.
As we know that while the application is in Maintenance Mode there is a separate login page for Restricted Mode access.

Here, restricted Mode allows administrators access to specific privileged functionality in OAM, for example to view the timing report that shows the progress of a patching session.

In Restricted Mode, only valid database users are allowed to login into OAM via a special URL and are allowed to access a limited set of features.
The database role AD_MONITOR_ROLE has access to all the required database objects for Restricted Mode features.
Or the OAM Online Help (OAM->Patches and Utilities -> Managing Downtime Schedules -> Restricted Mode)

Conclusion:
1. To ensure optimal performance and reduce downtime during patching sessions.

2. Maintenance Mode shutdown the Workflow Business Events System (oracle application services).

3. Setup a function security so that Oracle Applications functions are unavailable to users.

4. Provide a clear visibility/information to user that System/Application is down for patching purpose.

Easy/short-cut steps to Enabling and Disabling Maintenance Mode:

This is also same as ADADMIN because when we Enable or Disable 'Maintenance Mode', adadmin will also execute the below script:

$AD_TOP/patch/115/sql/adsetmmd.sql    ####sending the parameter 'ENABLE' or 'DISABLE' as shown below as example:

SQL>@$AD_TOP/patch/115/sql/adsetmmd.sql ENABLE    ##### For ENABLE
SQL>@$AD_TOP/patch/115/sql/adsetmmd.sql DISABLE   ##### For DISABLE

Real-time scenario:
SQL> show user
USER is "APPS"
SQL>
SQL> select fnd_profile.value('APPS_MAINTENANCE_MODE') from dual;
FND_PROFILE.VALUE('APPS_MAINTENANCE_MODE')
--------------------------------------------------------------------------------
MAINT
SQL>

SQL> @$AD_TOP/patch/115/sql/adsetmmd.sql DISABLE
PL/SQL procedure successfully completed.
Commit complete.
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Data Mining
and Real Application Testing options
$
SQL> select fnd_profile.value('APPS_MAINTENANCE_MODE') from dual;
FND_PROFILE.VALUE('APPS_MAINTENANCE_MODE')
--------------------------------------------------------------------------------
NORMAL
SQL>

If MAINT ==> Maintenance Mode is Enabled.
If NORMAL ==> Maintenance Mode is Disabled.
Regards,

Tuesday, 4 September 2018

ORACLE SRVCTL COMMANDS SYNTAX

Dear DBA-Mates,
Hope you all are enjoying the DBA-life. As in our last post ORACLE APPS DBA INTERVIEW QUESTIONS AND ANSWERS LATEST ON 31stAug2018
it was asked by interviewers the uses of SRVCTL in which one of our candidate replied as some of the uses as regular activities but he was not happy and asking more and more, So we decided to update you all here about srvctl command and syntax which we ran the help command on server in Categories by.
It may not very useful but for future reference it will be very to get help from here either in real time scenario or for interviews. After telling these Headings only will be enough for anyone. We have highlighted the main things.

$srvctl -h
Usage: srvctl [-V]
Usage: srvctl add database -d <db_unique_name> -o <oracle_home> [-c {RACONENODE | RAC | SINGLE} [-e <server_list>] [-i <inst_name>] [-w <timeout>]] [-m <domain_name>] [-p <spfile>] [-r {PRIMARY | PHYSICAL_STANDBY | LOGICAL_STANDBY | SNAPSHOT_STANDBY}] [-s <start_options>] [-t <stop_options>] [-n <db_name>] [-y {AUTOMATIC | MANUAL | NORESTART}] [-g "<serverpool_list>"] [-x <node_name>] [-a "<diskgroup_list>"] [-j "<acfs_path_list>"]

Usage: srvctl config database [-d <db_unique_name> [-a] ] [-v]
Usage: srvctl start database -d <db_unique_name> [-o <start_options>] [-n <node>]

Usage: srvctl stop database -d <db_unique_name> [-o <stop_options>] [-f]
Usage: srvctl status database -d <db_unique_name> [-f] [-v]
Usage: srvctl enable database -d <db_unique_name> [-n <node_name>]
Usage: srvctl disable database -d <db_unique_name> [-n <node_name>]
Usage: srvctl modify database -d <db_unique_name> [-n <db_name>] [-o <oracle_home>] [-u <oracle_user>] [-e <server_list>] [-w <timeout>] [-m <domain>] [-p <spfile>] [-r {PRIMARY | PHYSICAL_STANDBY | LOGICAL_STANDBY | SNAPSHOT_STANDBY}] [-s <start_options>] [-t <stop_options>] [-y {AUTOMATIC | MANUAL | NORESTART}] [-g "<serverpool_list>" [-x <node_name>]] [-a "<diskgroup_list>"|-z] [-j "<acfs_path_list>"] [-f]

Usage: srvctl remove database -d <db_unique_name> [-f] [-y]
Usage: srvctl getenv database -d <db_unique_name> [-t "<name_list>"]
Usage: srvctl setenv database -d <db_unique_name> {-t <name>=<val>[,<name>=<val>,...] | -T <name>=<val>}
Usage: srvctl unsetenv database -d <db_unique_name> -t "<name_list>"
Usage: srvctl convert database -d <db_unique_name> -c RAC [-n <node>]
Usage: srvctl convert database -d <db_unique_name> -c RACONENODE [-i <inst_name>] [-w <timeout>]

Usage: srvctl relocate database -d <db_unique_name> {[-n <target>] [-w <timeout>] [-o <stop_option>] | -a [-r]} [-v]
Usage: srvctl upgrade database -d <db_unique_name> -o <oracle_home>
Usage: srvctl downgrade database -d <db_unique_name> -o <oracle_home> -t <to_version>

Usage: srvctl add instance -d <db_unique_name> -i <inst_name> -n <node_name> [-f]
Usage: srvctl start instance -d <db_unique_name> {-n <node_name> [-i <inst_name>] | -i <inst_name_list>} [-o <start_options>]
Usage: srvctl stop instance -d <db_unique_name> {-n <node_name> | -i <inst_name_list>}  [-o <stop_options>] [-f]
Usage: srvctl status instance -d <db_unique_name> {-n <node_name> | -i <inst_name_list>} [-f] [-v]
Usage: srvctl enable instance -d <db_unique_name> -i "<inst_name_list>"
Usage: srvctl disable instance -d <db_unique_name> -i "<inst_name_list>"
Usage: srvctl modify instance -d <db_unique_name> -i <inst_name> { -n <node_name> | -z }
Usage: srvctl remove instance -d <db_unique_name> -i <inst_name> [-f] [-y]

Usage: srvctl add service -d <db_unique_name> -s <service_name> {-r "<preferred_list>" [-a "<available_list>"] [-P {BASIC | NONE | PRECONNECT}] | -g <pool_name> [-c {UNIFORM | SINGLETON}] } [-k   <net_num>] [-l [PRIMARY][,PHYSICAL_STANDBY][,LOGICAL_STANDBY][,SNAPSHOT_STANDBY]] [-y {AUTOMATIC | MANUAL}] [-q {TRUE|FALSE}] [-x {TRUE|FALSE}] [-j {SHORT|LONG}] [-B {NONE|SERVICE_TIME|THROUGHPUT}] [-e {NONE|SESSION|SELECT}] [-m {NONE|BASIC}] [-z <failover_retries>] [-w <failover_delay>] [-t <edition>] [-f]
Usage: srvctl add service -d <db_unique_name> -s <service_name> -u {-r "<new_pref_inst>" | -a "<new_avail_inst>"} [-f]
Usage: srvctl config service -d <db_unique_name> [-s <service_name>] [-v]
Usage: srvctl enable service -d <db_unique_name> -s "<service_name_list>" [-i <inst_name> | -n <node_name>]
Usage: srvctl disable service -d <db_unique_name> -s "<service_name_list>" [-i <inst_name> | -n <node_name>]
Usage: srvctl status service -d <db_unique_name> [-s "<service_name_list>"] [-f] [-v]
Usage: srvctl modify service -d <db_unique_name> -s <service_name> -i <old_inst_name> -t <new_inst_name> [-f]
Usage: srvctl modify service -d <db_unique_name> -s <service_name> -i <avail_inst_name> -r [-f]
Usage: srvctl modify service -d <db_unique_name> -s <service_name> -n -i "<preferred_list>" [-a "<available_list>"] [-f]

Usage: srvctl modify service -d <db_unique_name> -s <service_name> [-g <pool_name>] [-c {UNIFORM | SINGLETON}] [-P {BASIC|NONE}] [-l [PRIMARY][,PHYSICAL_STANDBY][,LOGICAL_STANDBY][,SNAPSHOT_STANDBY]] [-y {AUTOMATIC | MANUAL}][-q {true|false}] [-x {true|false}] [-j {SHORT|LONG}] [-B {NONE|SERVICE_TIME|THROUGHPUT}] [-e {NONE|SESSION|SELECT}] [-m {NONE|BASIC}] [-z <integer>] [-w <integer>] [-t <edition>]

Usage: srvctl relocate service -d <db_unique_name> -s <service_name> {-i <old_inst_name> -t <new_inst_name> | -c <current_node> -n <target_node>} [-f]
Usage: srvctl remove service -d <db_unique_name> -s <service_name> [-i <inst_name>] [-f]
Usage: srvctl start service -d <db_unique_name> [-s "<service_name_list>" [-n <node_name> | -i <inst_name>] ] [-o <start_options>]
Usage: srvctl stop service -d <db_unique_name> [-s "<service_name_list>" [-n <node_name> | -i <inst_name>] ] [-f]
Usage: srvctl add nodeapps { { -n <node_name> -A <name|ip>/<netmask>/[if1[|if2...]] } | { -S <subnet>/<netmask>/[if1[|if2...]] } } [-e <em-port>] [-l <ons-local-port>]  [-r <ons-remote-port>] [-t <host>[:<port>][,<host>[:<port>]...]] [-v]
Usage: srvctl config nodeapps [-a] [-g] [-s]
Usage: srvctl modify nodeapps {[-n <node_name> -A <new_vip_address>/<netmask>[/if1[|if2|...]]] | [-S <subnet>/<netmask>[/if1[|if2|...]]]} [-u {static|dhcp|mixed}] [-e <em-port>] [ -l <ons-local-port> ] [-r <ons-remote-port> ] [-t <host>[:<port>][,<host>[:<port>]...]] [-v]

Usage: srvctl start nodeapps [-n <node_name>] [-g] [-v]
Usage: srvctl stop nodeapps [-n <node_name>] [-g] [-f] [-r] [-v]
Usage: srvctl status nodeapps
Usage: srvctl enable nodeapps [-g] [-v]
Usage: srvctl disable nodeapps [-g] [-v]
Usage: srvctl remove nodeapps [-f] [-y] [-v]
Usage: srvctl getenv nodeapps [-a] [-g] [-s] [-t "<name_list>"]
Usage: srvctl setenv nodeapps {-t "<name>=<val>[,<name>=<val>,...]" | -T "<name>=<val>"} [-v]
Usage: srvctl unsetenv nodeapps -t "<name_list>" [-v]
Usage: srvctl add vip -n <node_name> -k <network_number> -A <name|ip>/<netmask>/[if1[|if2...]] [-v]

Usage: srvctl config vip { -n <node_name> | -i <vip_name> }
Usage: srvctl disable vip -i <vip_name> [-v]
Usage: srvctl enable vip -i <vip_name> [-v]
Usage: srvctl remove vip -i "<vip_name_list>" [-f] [-y] [-v]
Usage: srvctl getenv vip -i <vip_name> [-t "<name_list>"]
Usage: srvctl start vip { -n <node_name> | -i <vip_name> } [-v]
Usage: srvctl stop vip { -n <node_name>  | -i <vip_name> } [-f] [-r] [-v]
Usage: srvctl relocate vip -i <vip_name> [-n <node_name>] [-f] [-v]
Usage: srvctl status vip { -n <node_name> | -i <vip_name> } [-v]
Usage: srvctl setenv vip -i <vip_name> {-t "<name>=<val>[,<name>=<val>,...]" | -T "<name>=<val>"} [-v]
Usage: srvctl unsetenv vip -i <vip_name> -t "<name_list>" [-v]

Usage: srvctl add network [-k <net_num>] -S <subnet>/<netmask>/[if1[|if2...]] [-w <network_type>] [-v]
Usage: srvctl config network [-k <network_number>]
Usage: srvctl modify network [-k <network_number>] [-S <subnet>/<netmask>[/if1[|if2...]]] [-w <network_type>] [-v]
Usage: srvctl remove network {-k <network_number> | -a} [-f] [-v]

Usage: srvctl add asm [-l <lsnr_name>]
Usage: srvctl start asm [-n <node_name>] [-o <start_options>]
Usage: srvctl stop asm [-n <node_name>] [-o <stop_options>] [-f]
Usage: srvctl config asm [-a]
Usage: srvctl status asm [-n <node_name>] [-a] [-v]
Usage: srvctl enable asm [-n <node_name>]
Usage: srvctl disable asm [-n <node_name>]
Usage: srvctl modify asm [-l <lsnr_name>]
Usage: srvctl remove asm [-f]
Usage: srvctl getenv asm [-t <name>[, ...]]
Usage: srvctl setenv asm -t "<name>=<val> [,...]" | -T "<name>=<value>"
Usage: srvctl unsetenv asm -t "<name>[, ...]"

Usage: srvctl start diskgroup -g <dg_name> [-n "<node_list>"]
Usage: srvctl stop diskgroup -g <dg_name> [-n "<node_list>"] [-f]
Usage: srvctl status diskgroup -g <dg_name> [-n "<node_list>"] [-a] [-v]
Usage: srvctl enable diskgroup -g <dg_name> [-n "<node_list>"]
Usage: srvctl disable diskgroup -g <dg_name> [-n "<node_list>"]
Usage: srvctl remove diskgroup -g <dg_name> [-f]

Usage: srvctl add listener [-l <lsnr_name>] [-s] [-p "[TCP:]<port>[, ...][/IPC:<key>][/NMP:<pipe_name>][/TCPS:<s_port>] [/SDP:<port>]"] [-o <oracle_home>] [-k <net_num>]
Usage: srvctl config listener [-l <lsnr_name>] [-a]
Usage: srvctl start listener [-l <lsnr_name>] [-n <node_name>]
Usage: srvctl stop listener [-l <lsnr_name>] [-n <node_name>] [-f]
Usage: srvctl status listener [-l <lsnr_name>] [-n <node_name>] [-v]
Usage: srvctl enable listener [-l <lsnr_name>] [-n <node_name>]
Usage: srvctl disable listener [-l <lsnr_name>] [-n <node_name>]
Usage: srvctl modify listener [-l <lsnr_name>] [-o <oracle_home>] [-p "[TCP:]<port>[, ...][/IPC:<key>][/NMP:<pipe_name>][/TCPS:<s_port>] [/SDP:<port>]"] [-u <oracle_user>] [-k <net_num>]
Usage: srvctl remove listener [-l <lsnr_name> | -a] [-f]
Usage: srvctl getenv listener [-l <lsnr_name>] [-t <name>[, ...]]
Usage: srvctl setenv listener [-l <lsnr_name>] -t "<name>=<val> [,...]" | -T "<name>=<value>"
Usage: srvctl unsetenv listener [-l <lsnr_name>] -t "<name>[, ...]"
Usage: srvctl add scan -n <scan_name> [-k <network_number>] [-S <subnet>/<netmask>[/if1[|if2|...]]]

Usage: srvctl config scan [-i <ordinal_number>]
Usage: srvctl start scan [-i <ordinal_number>] [-n <node_name>]
Usage: srvctl stop scan [-i <ordinal_number>] [-f]
Usage: srvctl relocate scan -i <ordinal_number> [-n <node_name>]
Usage: srvctl status scan [-i <ordinal_number>] [-v]
Usage: srvctl enable scan [-i <ordinal_number>]
Usage: srvctl disable scan [-i <ordinal_number>]
Usage: srvctl modify scan -n <scan_name>
Usage: srvctl remove scan [-f] [-y]

Usage: srvctl add scan_listener [-l <lsnr_name_prefix>] [-s] [-p [TCP:]<port>[/IPC:<key>][/NMP:<pipe_name>][/TCPS:<s_port>] [/SDP:<port>]]
Usage: srvctl config scan_listener [-i <ordinal_number>]
Usage: srvctl start scan_listener [-n <node_name>] [-i <ordinal_number>]
Usage: srvctl stop scan_listener [-i <ordinal_number>] [-f]
Usage: srvctl relocate scan_listener -i <ordinal_number> [-n <node_name>]
Usage: srvctl status scan_listener [-i <ordinal_number>] [-v]
Usage: srvctl enable scan_listener [-i <ordinal_number>]
Usage: srvctl disable scan_listener [-i <ordinal_number>]
Usage: srvctl modify scan_listener {-u|-p [TCP:]<port>[/IPC:<key>][/NMP:<pipe_name>][/TCPS:<s_port>] [/SDP:<port>]}
Usage: srvctl remove scan_listener [-f] [-y]

Usage: srvctl add srvpool -g <pool_name> [-l <min>] [-u <max>] [-i <importance>] [-n "<server_list>"] [-f]
Usage: srvctl config srvpool [-g <pool_name>]
Usage: srvctl status srvpool [-g <pool_name>] [-a]
Usage: srvctl status server -n "<server_list>" [-a]
Usage: srvctl relocate server -n "<server_list>" -g <pool_name> [-f]
Usage: srvctl modify srvpool -g <pool_name> [-l <min>] [-u <max>] [-i <importance>] [-n "<server_list>"] [-f]
Usage: srvctl remove srvpool -g <pool_name>

Usage: srvctl add oc4j [-v]
Usage: srvctl config oc4j
Usage: srvctl start oc4j [-v]
Usage: srvctl stop oc4j [-f] [-v]
Usage: srvctl relocate oc4j [-n <node_name>] [-v]
Usage: srvctl status oc4j [-n <node_name>] [-v]
Usage: srvctl enable oc4j [-n <node_name>] [-v]
Usage: srvctl disable oc4j [-n <node_name>] [-v]
Usage: srvctl modify oc4j -p <oc4j_rmi_port> [-v] [-f]
Usage: srvctl remove oc4j [-f] [-v]

Usage: srvctl start home -o <oracle_home> -s <state_file> -n <node_name>
Usage: srvctl stop home -o <oracle_home> -s <state_file> -n <node_name> [-t <stop_options>] [-f]
Usage: srvctl status home -o <oracle_home> -s <state_file> -n <node_name>
Usage: srvctl add filesystem -d <volume_device> -v <volume_name> -g <dg_name> [-m <mountpoint_path>] [-u <user>]

Usage: srvctl config filesystem -d <volume_device>
Usage: srvctl start filesystem -d <volume_device> [-n <node_name>]
Usage: srvctl stop filesystem -d <volume_device> [-n <node_name>] [-f]
Usage: srvctl status filesystem -d <volume_device> [-v]
Usage: srvctl enable filesystem -d <volume_device>
Usage: srvctl disable filesystem -d <volume_device>
Usage: srvctl modify filesystem -d <volume_device> -u <user>
Usage: srvctl remove filesystem -d <volume_device> [-f]

Usage: srvctl start gns [-l <log_level>] [-n <node_name>] [-v]
Usage: srvctl stop gns [-n <node_name>] [-f] [-v]
Usage: srvctl config gns [-a] [-d] [-k] [-m] [-n <node_name>] [-p] [-s] [-V] [-q <name>] [-l] [-v]
Usage: srvctl status gns [-n <node_name>] [-v]
Usage: srvctl enable gns [-n <node_name>] [-v]
Usage: srvctl disable gns [-n <node_name>] [-v]
Usage: srvctl relocate gns [-n <node_name>] [-v]
Usage: srvctl add gns -d <domain> -i <vip_name|ip> [-v]
Usage: srvctl modify gns {-l <log_level> | [-i <ip_address>] [-N <name> -A <address>] [-D <name> -A <address>] [-c <name> -a <alias>] [-u <alias>] [-r <address>] [-V <name>] [-p <parameter>:<value>[,<parameter>:<value>...]] [-F <forwarded_domains>] [-R <refused_domains>] [-X <excluded_interfaces>] [-v]}
Usage: srvctl remove gns [-f] [-v]

Usage: srvctl add cvu [-t <check_interval_in_minutes>]
Usage: srvctl config cvu
Usage: srvctl start cvu [-n <node_name>]
Usage: srvctl stop cvu [-f]
Usage: srvctl relocate cvu [-n <node_name>]
Usage: srvctl status cvu [-n <node_name>]
Usage: srvctl enable cvu [-n <node_name>]
Usage: srvctl disable cvu [-n <node_name>]
Usage: srvctl modify cvu -t <check_interval_in_minutes>
Usage: srvctl remove cvu [-f]

Regards,
ora-data Team

Saturday, 1 September 2018

ORACLE APPS DBA INTERVIEW QUESTIONS AND ANSWERS ON 31stAug2018

Hey DBA-Mates,
We are back again with some real time interviews Questions and Answers which are asked by DBA in one of top MNC Companies.
We can’t say they will ask the same questions because interviewers always changed. This is only for some ideas and references for interviews which may useful for you all here.

Note: These questions are for experienced Oracle Apps DBAs.

1. Introduction about your experiences.

2. Application Patching steps in R12.1.3.

Click here for Steps...

3. What is DB link and how to create it.

Click here for Steps...

4. What is SRVCTL.

Work-around:
srvctl  status instance -d <DB_name> -i <instance1>, <instance2>
srvctl status database -d <DB_name>
srvctl stop database -d <DB_name> -o immediate
srvctl start instance -d <DB_name> -i <instance_name>

We tried to categorized which easy to understand.
Fore more Help Click here

5. How to recover a table from full Database backup.

Work-around:
Either from FRA if enabled or from database backup(incomplete recovery) or export / import from clone instance.

6. How to recover a dropped table.

Work-around:
Either from FRA if enabled or from database backup(incomplete recovery) or export / import from clone instance.

7. What is ora-504.

8. what to do for timeout error in OPP.

9. What is difference between R12.1.3 and R12.2 patching process.

10. What is cleanup phase.

11. Can we use adpatch in R12.2.

Answer:
We use ADOP phases in R12.2, we can't use adpatch in R12.2 even though ADOP internally call adpatch.

12. Whats are the phases in R12.2.

Main phases are PAFCC i.e 
Prepare phase
Apply phase
Finalize phase
Cutover phase and 
Cleanup phase.

Also FS_clone, abort etc...

13. How to import a single table  from 4 tables dump file.

14. How to compile JSP manually.

Please check hereSteps to Compile JSP manually

15. How to Apply patch in RAC.

Work-around:
We can use Rolling process. i.e. stop one instance then apply patch then start it, 2nd again stop another instance , apply patch and start instance. etc...

16. How to apply Database patch.
Using Opatch . Please check here DATABASE OPATCH...

17. What is napply option.

Answer:
Opatch napply command to apply multiple patches to an Oracle Fusion Middleware Oracle home.

18. How to check database configurations.

19. What to do for long running program in R12.1.3.

20 How can we rollback apps patches.

If it is not mentioned in Readme.html then not possible to revert back the fully applied patch. Partially we can try as per my knowledge.

21. Why we use Rman duplicate , why not restore and recover manually.

22. How check FRA is enabled or not.

sqlplus '/ as sysdba'
SQL> select flashback_on from v$database;

We will keep post or update the Answers for these Questions. Please you all also requested to update/provide answers in comment box which will be useful to all us.

Some more important links:
Regards,
ora-data Team