Wednesday 23 December 2015

Oracle Application DBA 11i Interview Questions - II

Oracle Application DBA 11i Interview Questions - II


1)I am applying a patch , can I open another session and run adadmin ?
Ans:
Yes, unless you are running a process where workers are involved


2)I am applying a patch , can I open another session in another node and run adpatch?
Ans:
No




3)Output & logfiles for requests executed on source instance not working on cloned
instance??
Ans:
Check whether apps listener is running




4)What happens if you don't give cache size while defining concurrent manager?
Ans:
Most often when a request goes "inactive/no manager" and is then processed a short time
later, the solution is to either increase the cache size for your Standard manger, or increase the actual number of Standard Manager processes that can run. Cache Size is set in the Concurrent/Manager/Define form. Basically, this regulates how many requests a manager will pick up for each sleep cycle.




5)Why should Apps & Applsys passwords always be the same?
Ans:
The need to have the same password for Apps and Applsys is because when you sign on
to apps, intially it connects to a public schema called APPLSYSPUB. This validates
AOL username and password that we enter (operations/welcome using guest user
account. Once this is verified we select responsibility, this is validated by APPLSYS
schema and then it connects to APPS schema.


 Since it uses both applsys and apps during signon process this expects both the password
to be identical. Try changing apps password to something else and try to login, the
validation at the last stage would fail. This would result in failure of application login.
Apps is a universal schema has synonyms to all base product tables and sequences. This
also has code objects for all products (triggers, views, packages, synonyms etc.).
Applsys schema has applications technology layer products like FND and AD etc.




6)How to Complie Invalid Objects?
Ans:


alter package <package_name> compile ;alter package <packae_ame> compile body;alter view <view_name> compile;




SQL>EXEC UTL_RECOMP.RECOMP_PARALLEL(4);




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




7)Why DB-CM-ADMIN are always insatlled on the same machine in Oracle Applications in Multi Node Installation ?
Ans:
There is no restriction to install all of them on a single machine,but if we install them on 3 different machines then when we will run any AD utility on admin node or perform any upgradation it needs to access the database so there will be lot of overhead in accessing the database node on network so to avoid this overhead we install them on same machine. Similar is the case when we run any concurrent request on the CM node as Concurrent manager also updates the database objects.




8)What URL you use to access Disco viewer & Disco plus .
Ans:
http://hostname.domain/discoverer4i/viewer
http://hostname.domainname:port/discoverer/viewer (10gAS)
http://hostname.domainname:http_port/discoverer/viewer ( R12)
http://hostname.domainname:port/discoverer/plus (10gAS)
9)What is Yellow Bar Warning?
Ans:
Oracle Applications Release 11.5.1 (11i) requires that its code run in a trusted mode, and
uses J-Initiator to run Java applets on a desktop client. If an applet is "trusted," however,
Java will extend the privileges of the applet. The Yellow Warning Bar is a warning that
your applet is not running in a trusted mode. To indicate that an applet is trusted, it must
be digitally signed using a digital Certificate, so Oracle Applications requires that all Java
archive files must be digitally signed.




10) How to find if any service is listening on particular port or not ?
Ans:
netstat -an | grep {port no}




11)How can u change the logfiles location suppose CM logfile location is APPLCSF
Ans: Change the Configuration File parameters
change s_applcsf,s_appllog,s_applout variables in XML file and run the autoconfig.




12) Conflict resolution managers resolves the conflicts yes , but hw it knows tht there are conficts?why conflicts occur?
Ans:
Concurrent managers read request to start concurrent programs running. The Conflict Resolution Manager checks concurrent program definitions for incompatibility rules.


 If a program is identified as Run Alone, then the Conflict Resolution Manager prevents the concurrent managers from starting other programs in the same conflict domain.


When a program lists other programs as being incompatible with it, the Conflict Resolution Manager prevents the program from starting until any incompatible programs in the same domain have completed running.


13)What is adovars.env file ?
Ans:
The adovars.env file, located in $APPL_TOP/admin, specifies the location of variousfiles such as Java files, HTML files, and JRE (Java Runtime Environment) files. It is called from the main applications environment file.




14) How to find the wordsize (32-bit or 64-bit) of Oracle Database
Ans:
$cd $ORACLE_HOME/rdbms/bin
$file oracle




15)How to Compile JSP's without using ADADMIN
perl -x $JTF_TOP/admin/scripts/ojspCompile.pl --compile




16)What is wdbsvr.app file used for? What's full path of this file? What's significance of this file ?
Ans:
$IAS_ORACLE_HOME/Apache/modplsql/cfg
This file is used by mod_plsql component of Apache to connect to database. So when you type url http://hostname:port/pls/SID , whenever Apache(11i Web Server) finds that request is for /pls/ then Apache delegates this request to mod_pls component which in turn pick this file & check if there is any DAD with name SID




17)Whats main concurrent Manager types.
Ans:


ICM - Internal Concurrent Manager which manages concurrent ManagersStandard Managers - Which Manage processesing of requests.


CRM - Conflict Resolution Managers , resolve conflicts in case of incompatibility.Transactions Managers - These managers are process for particler business Applications.Custom Concurrent Managers - The managers defined by the users.




18)what are .rf9 files?
Ans:
These files are used during restart of patch in case of patch failure because of some reason.


Located in $APPL_TOP/admin/<SID>/restart this folder also contains .bak ,.bk2 filesSAMPLE FILE (adwork012.rf9)
%%% restart file format 11.5.A
Location: $APPL_TOP/admin/<SID>/log contains .req files




19)Where is appsweb.cfg or appsweb_$CONTEXT.cfg stored & why its used ?
Ans:
This file is defined by environment variable FORMS60_WEB_CONFIG_FILE This is usually in directory $OA_HTML/bin or $FNS_TOP/Resource on forms tier. This file is used by any forms client session. When a user try to access forms , f60webmx picks up this file and based on this configuration file creates a forms session to user/client.




20)Can you clone from multi node system to single node system & vice versa ?
Ans:
Yes, This is now supported via Rapid Clone




21)Does rapid clone takes care of oraInventory after clone?
Ans:
Yes, Rapid Clone will automatically Update Global oraInventory during configuration phase.




22)What is .dbc file , where its stored , whats use of .dbc file ?
Ans:
dbc file called as database connect descriptor file which stores database connection information used by application tier to connect to database. This file is in directory
$FND_TOP/secure also called as FND_SECURE




23)What are the ways to reduce patch timing?
Ans:
    Merging patches via admrgpch
    Use various adpatch options like nocompiledb or nocompilejsp
    Use defaults file
    Staged APPL_TOP during upgrades
    Increase batch size (Might result into negative )
   
24)How you put Applications 11i in Maintenance mode ?
Ans:
Use adadmin to change Maintenance mode is Oracle Apps. With AD.I you need to enable maintenance mode in order to apply apps patch via adpatch utility. If you don't want to put apps in maintenance mode you can use adpatch options=hotpatch feature.
Also you can use the script $AD_TOP/patch/115/sql/ adsetmmd.sql




25)What are various options available with adpatch ?
Ans:
Various options available with adpatch depending on your AD version are
autoconfig, check_exclusive, checkfile, compiledb, compilejsp, copyportion, databaseprtion,generateportion, hotpatch, integrity, maintainmrc, parallel, prereq, validate




26)adident utility is used for what ?
Ans:
adident utility in oracle apps is used to find version of any file . AD Identification.
for ex. "adident Header <filename>




27)What is adsplice utility ?
Ans:
adsplice in oracle apps is utility to add a new product.




28)How can you licence a product after installation ?
Ans:
You can use ad utility adlicmgr to licence product in Oracle Apps.




29)What is MRC ? What you do as Apps DBA for MRC ?
Ans:
MRC also called as Multiple Reporting Currency in oracle Apps. Default you have currency in US Dollars but if your organization operating books are in other currency then you as apps dba need to enable MRC in Apps. How to enable MRC coming soon...




30)Whats is JVM(Java Virtual Machine) and which component uses JVM ?
Ans:
JVM stands for Java Virtual Machine, JVM acronym for Java Virtual Machine which executes instructions generated by Java compiler. So user click on any Self Service Request or any program which uses Java, then Apache forwards this request to mod_jserv (mod_oc4j in 10g AS) & mod_jserv caters this request with help of JVM.




31)Where to find Apps 11i JVM logs ?
Ans:
JVM log location is defined in java.sh ( found in $IAS_ORACLE_HOME/Apache/Apache/bin) Oracle Apps 11i JVM log file directory is defined by parameter JVMLOGDIR ($IAS_ORACLE_HOME/Apache/Jserv/logs/jvm ) and log file are defined by STDOUTLOG &
STDERRLOG. Example of JVM log files are OACoreGroup.0.stderr ,OACoreGroup.0.stdout, DiscoGroup.0.stdout, DiscoGroup.0.stderr,XmlSvcsGrp.0.stderr, XmlSvcsGrp.0.stdout
where 0 denotes first JVM & 1 denotes second JVM. stderr records error encountered in JVM & stdout records other information like GC ..




32)How to check JDBC Connection ?
select count(*),module from v$session where program like '%JDBC%' group




33)What is error_log in Apache,what entries are recored in access_log ? Where is default location of this file ?
Error_log will contain all the errors/warnings faced Apache web server in Oracle Apps 11i.
This file location is defined in httpd.conf with default location at $IAS_ORACLE_HOME/Apache/Apache/logs.




34)What is access_log in apache , what entries are recored in access_log ? Where is default location of this file ?
Ans:
access_log in Oracle Application Server records all users accessing oracle applications 11i.
This file location is defined in httpd.conf with default location at $IAS_ORACLE_HOME/Apache/Apache/logs.




35)Where is Jserv configuration files stored ?
Ans:
Jserv configuration files are stored in $IAS_ORACLE_HOME/Apache/Jserv/etc




36)What are main configuration files in Web Server (Apache) ?
Main configuration files in Oracle Apps Web Server are
httpd.conf,
httpd_pls.conf,
jserv.conf,
jserv.properties,
zone.properties




37)What is session time out parameter & where all you define these values ?
Ans:
In Apps there are two broad categories of session
- Self Service Application Session ( Server by Web Server iAS Apache & Jserv, like iRecruitment,iProcurement)
- Forms session ( served by your form session, like system Administrator)


What is Session Idle time ?
If Oracle Apps client is not doing any activity for some time session during that time is called as Idle Session & because of security reason, performance issues and to free up system resource Oracle Applications terminates client session( both forms & self service) after idle time value is reached to the one mentioned in configuration file.
From FND.G or 11.5.9 or with introduction of AppsLocalLogin.jsp to enter into application, profile option "ICX Session Timeout" is used only to determine Forms Session Idle timeout value .
This might be confusing as earlier this profile option used to control forms as well as self service application(with session.timeout) session.timeout is used to control Idle session timeout for Self Service Applications ( Served by Jserv via JVM )
From where ICX : Session Timeout & session.timeout get values ?
Autoconfig determines value for profile option "ICX: Session Timeout" and "session.timeout" from entry in context file ( $APPL_TOP/admin/SID_hostname.xml ) with parameter s_sesstimeout
where value mentioned is in milliseconds so profile option ICX: Session Timeout value should be s_sesstimeout/ (1000 * 60) which means here its 10 Minutes. This value is also set in
zone.properties in $IAS_ORACLE_HOME/Apache/Jserv/etc where number mentioned is in milli second i.e. 600000 ( equal to 10 Minutes)session.timeout = 600000 session.timeout mentioned in zone.properties is in milli secondsICX Session Time out mentioned in profile option ICX: Session Timeout is in minutes so ICX session timeout=30 & session.timeout= 1800,000 are same 30 minutes




38)What is your Oracle Apps 11i Webserver Version and how to find it ?
Ans:
cd $IAS_ORACLE_HOME/Apache/Apache/bin
./httpd -version
Server version: Oracle HTTP Server Powered by Apache/1.3.19
Server built: Dec 1- 2010 14:59:13 (iAS 1.0.2.2.2 rollup 5)




39)How to determine Oracle Apps 11i Version ?
Ans:




SQL>select RELEASE_NAME from fnd_product_groups;




40)What is content of dbc file & why its important ?
Ans:
DBC file is quite important as whenever Java or any other program like forms want to connect to database it uses dbc file. Typical entry in dbc file is GUEST_USER_PWD ,APPS_JDBC_URL ,DB_HOST




41)There are lot of dbc file under $FND_SECURE, How its determined that which dbc file to use from $FND_SECURE ?
Ans:
This value is determined from profile option "Applications Database ID"




42)What is RRA/FNDFS ?
Ans:
Report Review Agent(RRA) also referred by executable FNDFS is default text viewer in Oracle Applications 11i for viewing output files & log files.




43)What is PCP is Oracle Applications 11i ?




PCP is acronym for Parallel Concurrurent Processing. Usually you have one Concurrent Manager executing your requests but if you can configure Concurrent Manager running on two machines (Yes you need to do some additional steps in order to configure Parallel Concurrent Processing) .So for some of your requests primary CM Node is on machine1 and secondary CM node on machine2 and for some requests primary CM is on machine2 & secondary CM on machine1.




44)What is use of Apps listener ?
Ans:
Apps Listener usually running on All Oracle Applications 11i Nodes with listener alias as APPS_$SID is mainly used for listening requests for services like FNDFS & FNDSM.
FNDFS - FND File Server also known as RRA Reports Review Agent is used to view text files in Oracle 11i.
FNDSM - FND Service Manager is a concurrent manager in GSM, and serves requests like CM's




45)How will you find Invalid Objects in database ?
Ans:
sql>select count(*) from dba_objects where status like 'INVALID';




46)What is difference between adpatch & opatch ?
Ans:
adpatch is utility to apply oracle applications patches whereas opatch is utility to apply database patches




47)What is forms server executable Name ?
Ans:
f60srvm




48)What are different modes of forms in which you can start Forms Server and which one is default ?
Ans:
You can start forms server in SOCKET or SERVLET by defualt Forms are configured to start in socket mode
http://www.dbatutor.com/2010/12/forms-servlet-or-socket-mode-which-is.html




49)Where is HTML Cache stored in Oracle Apps Server ?
Ans:
Oracle HTML Cache is available at $COMMON_TOP/_pages for some previous versions you might find it in $OA_HTML/_pages




50)What is 0 & Y in FNDCPASS, FNDLOAD or WFLOAD ?
Ans:
0 & Y are flags for FND Executable like FNDCPASS & FNDLOAD where
0 is request id (request ID 0 is assigned to request ID's which are not submitted via Submit Concurrent Request Form.
'Y' indicates the method of invocation. i.e. it is directly invoked from the command-line not from the Submit Request Form.




51)Whats is TWO_TASK in Oracle Database ?
Ans:
TWO_TASK mocks your tns alias which you are going to use to connect to database. Lets assume you have database client with tns alias defined as PROD to connect to Database PROD on machine teachmeoracle.com listening on port 1521. Then usual way to connect is sqlplus username/passwd@PROD ; now if you don't want to use @PROD then you set
TWO_TASK=PROD and then can simply use sqlplus username/passwd then sql will check that it has to connect to tnsalias define by value PROD i.e. TWO_TASK




52)What is GWYUID ?
Ans:
GWYUID , stands for Gateway User ID and password. Usually like APPLSYSPUB/PUB




53)Where GWYUID defined & what is its used in Oracle Applications ?
Ans:
GWYUID is defined in dbc i.e. Database Connect Descriptor file . It is used to connect to database by thin clients.




54)How to check number of forms users at any time ?
Ans:
Forms Connections initiate f60webmx connections so you can use
ps -ef | grep f60webmx | wc -l




55)What is FNDLOAD and what it is used for ?
http://www.dbatutor.com/2010/12/what-is-fndload.html




56)How can you check which node is running what service?
Ans:
select * from fnd_nodes;




57)What is difference between Socket & Servlet Mode in Apps Forms ?
http://www.dbatutor.com/2010/12/forms-servlet-or-socket-mode-which-is.html




58) What is make program in Unix ?
Ans:
make is utility in Unix/Linux to maintain , update & generate an file mainly executable.




59)What are .ldt & .lct files which you see in apps patch or with FNDLOAD ?
http://www.dbatutor.com/2010/12/what-is-fndload.html




60)What are .odf file in apps patch ?
odf stands for Object Description Files used to create tables & other database objects.

---------------------------------------------

Apps DBA 11i interview question

Apps DBA 11i interview question



1. How to determine Oracle Apps 11i Version ?
Ans : select RELEASE_NAME from fnd_product_groups;
You should see output like
RELEASE_NAME-----------------------11.5.10.2

2. How to find Database version ?
Ans :

SQL> select * from v$version;
The command returns the release information, such as the following:Oracle9i Enterprise Edition Release 9.2.0.7.0 - ProductionPL/SQL Release 9.2.0.7.0 - ProductionCORE 9.2.0.7.0 ProductionTNS for 32-bit Windows: Version 9.2.0.7.0 - ProductionNLSRTL Version 9.2.0.7.0 - Production

3. How to find opatch Version ?
Ans : opatch is utility to apply database patch , In order to find opatch version execute"$ORACLE_HOME/OPatch/opatch version"

4. How to find out invalid objects in the database
Ans : select count(*) from dba_objects where status ='INVALID'

5. How you will see hidden files in linux/solaris?
Ans : ls -la

6. How to find that the database is 64-bit/32-bit?
Ans : $RDBMS_ORACLE_HOME/bin/file oracle

7. What is top command?
Ans : top is a operating system command, it will display top 10 processes which are taking high cpu and memory. 8. What is a patch?Ans : A patch can be a solution for a bug/it can be a new feature.
9. What are the different types of patches?

Ans : oneoff, mini packs, family packs, maintanance packs, rollup pathches, colsolidated patches.

8. What is a oneoff patch?

Ans : An oneoff patch is a small patch of (20-90K size) without any pre-req’s

9. What is a mini pack ?

Ans : A mini pack is one which will upgrade any product patchset level to next level like AD.H to AD.I
10. What is Family pack ?

Ans : A Family pack is one which will upgade the patchset level of all the products in that family to perticular patchsetlevel.

11. What is Maintanance pack ?

Ans : A maintanance pack will upgrade applications from one version to another like 11.5.8 to 11.5.9
12. What is a Rollup patch?

Ans : A rollup patch is one which will deliver bug fixes identified after the release of any major application versions like 11.5.8/11.5.9

13. What is consilidated patch?

Ans: Consolidated patches will come into pictures after upgrades from one version of applications to anoter, all post upgrade patches will a consolidated and given as consolidated patch.

14. How u will find whether a patch is applied/not?

Ans : Query ad_bugs.
15. What is the other table where u can query what are the patches applied?

Ans : Ad_applied_patches

16. What is the difference between ad_bugs and ad_applied_patches?

Ans: A patch can deliver solution for more than one bug, so ad_applied_patches may not give u the perfect information as in case of ad_bugs.

17. How u apply a patch?

Ans : adpatch
18. What inputs you need to apply a patch other than driver name and etc?

Ans : apps and system passwords
19. What are the table u r adpatch will create and when?

Ans : Adpatch will create FND_INSTALL_PROCESSES and AD_DEFERRED_JOBS table when it will apply d,g and u drivers

20. What is the significance of FND_INSTALL_PROCESSES and AD_DEFERRED_JOBS table?Ans: FND_INSTALL_PROCESSES table will store the worker information like what job is assigned to which worker and its status. AD_DEFERRED_JOBS will come into picture when some worker is failed, it will be moved to AD_DEFERRED_JOBS table, from where again adpatch will take that job and try to resign, after doing this 3 times if still that worker is failing, then adpatch will stop patching and throw the error that perticular worker has failed. We need to trouble shoot and restrart the worker.

21. If it is a multinode installation which driver we need to apply on which node?

Ans: c,d,g on concurrent node and c, g on web node. If it is u-driver we need to apply on all nodes.

22.While applying a application patch is that necessary that u r database and listener should be up?

Ans: Yes . why because adpatch will connect to database and update so many tables etc…..

23. While applying a patch if that patch is failing because of a pre-req then how you will apply that pre-req patch and resume with the current patch?

Ans: We need to take the backup of FND_INSTALL_PROCESSES and AD_DEFERRED_JOBS tables and restart directory at APPL_TOP/amdin/SID and then use adctrl to quit all the workers. Then apply the pre-req patch , after that rename u r restart directory to its original name and create FND_INSTALL_PROCESSES and AD_DEFERRED_JOBS tables from the bcakup tables. Start adpatch session and take the options want to continue previous session.

24. What is adctrl?
Ans: Adctrl is one of the adutilities, which is used to check the status of workers and to manage the workers.

25. Can u name some of the menu options in adctrl?
Ans: Check the status of workers, tell manager that worker has quited, restart a failed worker etc….

26. How to skip a worker and why?

Ans: We can skip a worker using option 8 in adctrl which is hidden. We will go for skipping a worker when we have executed the job which the worker is supposed to do.

27. How adpatch knows what are the pre-req’s for the patch which it is applying?

Ans: With every patch a file called b.ldt file will be delivered which contain the pre-req information. adpatch load this into databse using FNDLOAD and check , whether those pre-req patches were applied or not.

28. What is FNDLOAD ?
Ans: FNDLOAD is a utility which is similar to sqlloder but loads code objects into database, where as SQLLOADER loads data objects into database.

29. What c-driver will do?
Ans:

C-drive copies the files from patch unzipped directory to required location in u r application file system. Before copying it will check the file version of the existing file at the file system with the file version of the file in the patch. If the patch file version is higher than what it is at file system level then only c-driver will copy that files.

30. How adpatch will know the file versions of the patch delivered files?
Ans:

With each patch a file with name f.ldt is delivered , which contain the file versions of the files dilivered with the patch. Adpatch will use this file to compare the file versions of files its delivering with the file on file system.

31. What is the adpatch log file location?
Ans : APPL_TOP/admin/SID/log

32. What is the worker log file name and its location?
Ans : adwork01,adwork02…… and location is APPL_TOP/admin/SID/log

33. How u will know what are the files the patch is going to change just my unzipping the patch?
Ans:

When u unzip a patch it will keep all the files related to a particular product under that directory inside u r patch directory for example if the patch delivering files related to FND product then it will create a sub directory under the patch directory with the name FND in which it will put all related files to that product

34. What is the significance of backup directory under u r patch directory?
Ans:

When we apply a patch it will keep the copy of the files which its going to change in file system.

35. What are the different modes you can run your adpatch?
Ans :

1.Interactive – default mode

2.Non interactive – Use defaults files to store prompt values

(adpatch defaultsfile= interactive=no)

3. Test – Without actually applying a patch just to check what doing.(adpatch apply=no)

4. Pre-install – (adpatch preinstall=y)

This mode will be usefull to discrease upgrade downtime as its applies bus fixes without running SQL,EXEC and generate portion of patch.

36. How u will monitor u r applications as well as database?
Ans:

We have our custom scripts which is sheduled to run at a specific time which will monitor whether applications and databases are up/not. And it will mail us if some processes is not running. And we have one script which will check database alert log for ORA errors and mails it to us . Based on this we will react.

37. What are the latest ORA errors u have encountered?
Ans:

Useually we will get the ORA errors like unable to extend the tablespace by so and so size. And we will check those tablespaces for space, if space is not there we will resize the datafile and add one more datafile.

38. Which table u will query to check the tablespace space issues?
Ans : bytes column in dba_free_spaces and dba_data_files

39. Which table u will query to check the temp tablespace space issues?
Ans : dba_temp_files

40. What is temp tablespace? And what is the size of temp tablespace in u r instances?
Ans : Temp tablespace is used by so many application programs for sorting and other stuff. Its size is between 3 to 10 GB.

41. What is autoconfig?
Ans : Autoconfig is an adutility which is used to main application environment and configuration files.

42. What are the parameter autoconfig will ask for?
Ans : Context file name and apps password

43. What is context file?
Ans : Context file is a central repositary, which stores all application configuration information. The name is like _ .xml

44. How you will find autoconfig is enabled/not for u r applications?
Ans: 1. Open any env / configuration files, the first few lines will tell u that this files are maintained by autoconfig.2. If contextname.xml file is there in APPL_TOP/admin

45. How autoconfig will create env and configuration files?
Ans: Autoconfig will go to each and every top template directory take the templates from there and fill the values from xml file and create the required files.

46. In how many phases autoconfig will run?
Ans : Autoconfig will run in 3 phases.

1.INIT – Instantiate the drivers and templates

2.SETUP – Fill the templated with values from xml and create files

3.PROFILE – Update the profile values in database.

47. What is the location of adconfig log file?
Ans : APPL_TOP/admin//log/

48. Is it possiable to restore a autoconfig run?
Ans :

Partially. Adconfig will create a restore.sh script at $APPL_TOP/admin//out/. This restore.sh will copy the backed up files before autoconfig run to its original locations. But the profile values updated in the database can’t be restored back.

49. How to run autoconfig in test mode?
Ans :

adchkcfg.sh script at AD_TOP/bin. This script will run autoconfig in test mode and create the difference file which tells us what is going to change , when u actually run autoconfig.

50. How to find autoconfig is enabled or not for database?
Ans:

If we have appsutil directory under RDBMS_ORACLE_HOME

51. When a patch delivers java files what extra file u will get when u unzip the patch, other then u r dirver and readme files?
Ans : j.zip52.

52.What is apps.zip/appsbrog2.zip file?
Ans : apps.zip/appsbrog2.zip is the patchable archive of all java class files required for oracle application.Apps.zip was used to old application version, but from 11.5.8 onwards its appsbrog2.zip

53. What is the location of apps.zip/appsbrog2.zip?
Ans : AU_TOP/java and JAVA_TOP

54. What is for “validating apps schema” option in adadmin?
Ans: It will check for the corrupted objects in apps schema

55. What is “compile apps schema” option in adadmin?
Ans : It will compile the invalid database objects.

56. How to find invalid objects in database?
Ans : select count(*) from dba_objects where status=’INVALID’;

57. How to find MRC is enabled or not?
Ans: In adadmin if covert to MRC options is there , then MRC is not enabled,If maintain MRC options is there , then MRC is enabled.


58. How to find Multi-Org is enabled or not?
Ans : In adadmin if covert to Multi org option is there, then Multi-org is not enabled. If maintain multi-org options is there, then Multi-org is enabled.

59. What is mean by MRC?
Ans: MRC stands for Multiple reporting Currency, this should be enabled to see the reports in different currencies like (rupees,yaans etc).

60. What is Multi-Org?
Ans: If this is enabled we can store multiple organization information in a single oracle application instance.

61. What is the configuration file for adutilities (like adadmin,adconfig etc)?
Ans: adconfig.txt @APPL_TOP/admin

62. What is adrelink?
Ans : adrelink will relink the executables with the libraries. Generally we will go for adrelink when some patch delivers some library files, or when executables were corrupted.

63. How to find the version of a file?
Ans : 1. adident Header 2. strings -a filename grep Header

64. What is adodfcmp utility?
Ans : This utility is used to recreate/repair corrupted database objects from odf(object defination files) files.

65. How you will change apps password?
Ans: FNDCPASS 0 y apps/ system/ SYSTEM APPLSYS

66. What if apps password is changed with alter command?
Ans : Applications won’t work.

66. What is the difference between alter and FNDCPASS in changing apps password?
Ans : FNDCPASS will update some fnd tables other than standard tables.

67. Where the FNDCPASS utility is located?
Ans : Concurrent node @FND_TOP/bin

68. How to find out what component of u r oracle applications were installed on which node?
Ans : Xml file (context file)

69. How to find the version of httpd/Apache web server?
Ans : $IAS_ORACLE_HOME/Apache/bin/httpd –version

70. What is the configuration file for httpd and what is the location of it ?
Ans : httpd.conf @IAS_ORACLE_HOME/Apache/Apache/conf

71. Where you will see when you have some problem with u r webserver(httpd/Apache)?
Ans : access_log & error_log @IAS_ORACLE_HOME/Apache/Apache/logs

72. When Apache starts what other components its start ?
Ans : PL/SQL Listener, Servlet Engine, OJSP Engine

73. What is jserv?

Ans : jserv is nothing but servlet engine which will run u r servlets. It’s a module of apache which supports servlets.

74. What is self service application?
Ans : Whatever part of u r oracle application u r able to see through web browser is self service.

75. Where u will see when u r not able to get self service applications?
Ans : access_log,error_log, error_pls, jserv.log, wdbsvr.app(for apps password)

76. What is the location of jserv.log?
Ans : IAS_ORACLE_HOME/Apache/Jserv/log

77. What is the location of wdbsvr.app ?
Ans : IAS_ORACLE_HOME/Apache/modplsql/cfg

78. What are jserv.conf and jserv.properties files?
Ans : These are the configuration files which were used to start jvm’s(servlet engine) by apache.

79. What is mean by clearing cache and bouncing apache?
Ans :

1. Stop apache (adapcctl.sh stop apps)

2. Clear cache – Go to $COMMON_TOP/html/_pages and delete _oa_html directory

(rm –r _oa__html)

3. Start apache (adapcctl.sh start apps)

80. What is forms configuration file and its location?
Ans : appsweb_contextname.cfg @$COMMON_TOP/html/bin

81. What are the different modes u can start u r form server?
Ans : socket and servlet

82. What is the difference beween socket and servlet mode?
Ans :

In socket mode forms sessions are represented by f60webmx

In servlet mode forms sessions are represented by apache processes.

83. What is forms metric server and client?
Ans : When there are more than one form sever instances then forms metric server and clinet will be used to load balance.

84. Where the forms server related errors will be logged?
Ans : access_log and error_log

85. What is report server configuration and log file name and its location?
Ans : Configuration file – REP_.ora

Log file – REP_.log @806_ORACLE_HOME/reports60/server

86. What is CGIcmd.dat file and its location?
Ans : CGIcmd.dat file is the run time parameter file the report server located @ 806_ORACLE_HOME/reports60/server

87. What is the significance of DISPLAY variable?
Ans : Vnc server should be up and running at the specified port value in DISPLAY variable, otherwise reportserver may not able to show the graphics in Reports.

88. Where is the concurrent manager log file located?
Ans : $COMMON_TOP/admin//log or $APPLCSF/$APPLLOG

89. Is apps password necessary to start all the components of oracle application?
Ans : No. Only to start/stop concurrent managers apps password is needed.

90. What is a concurrent manager?
Ans : A concurrent manager is one which runs concurrent requests.

91. What are the different types of concurrent managers?
Ans :

1. Internal concurrent manager – Will start all other managers and monitor

2. Standard Manager – All concurrent request by default will to go this

3. Conflict resolution manager – Concurrent programs with incompatabilites will be handled by this

4. Transaction manager – Handle all transaction requests

92. What are actual and target count in ‘Adminster Concurrent Managers form’?

Ans : Target is the no. of concurrent processes a manager is supposed to start(specified in the defination of concurrent manager).Actual is the no. of processes a manager started actually.
Target and Actual should be always same.

93. What if Target and Actual are not same?
Ans : It means at operating system level resources are low to accomidate the required processes for concurrent managers.

94. What are work shifts?
Ans : Work shifts are nothing but timings at which the concurrent manager is supposed to run.

95. What if internal concurrent manager target and actual are not same?
Ans : we need to bounce the concurrent manager using adcmctl.sh

96. How to bounce a single concurrent manager?
Ans : From frontend using ‘Administer Concurrent Manager form’.

97. When we change apps password , is it necessary to bounce application?
Ans : Only we need to bounce concurrent managers.

98. What is dbc file and its location?
Ans : dbc file contain database connection information. DBC file is used by oracle applications to connect to database. Its location is $FND_TOP/secure

99. What is the other script by which u can start apache other than adapcctl.sh?
Ans : apachectl @IAS_ORACLE_HOME/Apache/bin

100. What is the configuration file for PL/SQL listener?
Ans : httpd_pls.conf @IAS_ORACLE_HOME/Apache/Apache/conf

101. How to skip copy portion while applying a patch?
Ans : Adpatch options=nocopyportion

102. How to merge patches and what type of patches can be merged?
Ans : admrgpch. We can merge any kind of application patches, if any of the patch contain a u-driver then merged patch will contain u_merged.drv otherwise c_merged.drv, d_merged.drv and g_merged.drv

103. What is the Tiered architecture of u r instance?
Ans : Two Tier: Web and Forms on one node and Conc, admin and report on other node.

104. How to find formserver version?
Ans: f60gen and press enter, it will tell u the formserver version or we can find out from the frondend using help menu.

105. What is RRA?
Ans : RRA stands for Report Review Agent. RRA is nothing but FNDFS which is part of apps listener. RRA job is to pick the log/out file from the file system and show on the editor when u press view log/out button in ‘View concurrent request form’.

106. What is apps listener?
Ans : Apps lintener is the combination of FNDFS and FNDSM. FNDSM is service manager which will monitor application services on that node when GSM:enable profile value is ‘Y’.

107. What is GSM?
Ans : GSM stands for Generic service Manager, which will monitor application processes like web, forms etc and restarts any of this processes if goes down.

108. How to find the application version like 11.5.8/11.5.9….?
Ans : select release_name from fnd_product_groups;

109. How to find the database/sqlplus version?
Ans : select banner from v$version;

110. How to find out what are the languages enabled in u r applications?
Ans : Query fnd_languages

111. What is the size of u r database?
Ans : 200 to 500 GB

112. How to find operating system version?
Ans : uname –a

113. What are the problems u have faced while shutting down applications?

Ans : While shutting down application generally concurrent manager won’t go down because some or the other request may be running. We will see what are the concurrent requests running by querying fnd_concurrent_requests, fnd_concurrent_program_vl, v$session,v$process and v$sqltext. If that request is only doing some select statement then we will kill those requests, otherwise we will check what time it will take to complete by querying the previous runs of that request and then we will decide what to do.

114. What are the problems u have faced while starting up applications?
Ans : Most of the time we will encounter problem with starting up concurrent managers. Reasons , database listener may be down or FNDSM entries are wrong in tnsnames.ora of 806_ORACLE_HOME.

115. How to find the locks and what is the resolution?
Ans : we can find general locks with the following query:

select * from sys.dba_dml_locks order by session_id.

We can find the dead locks with the following query:

select * from v$lock where lmode > 0 and id1 in (select distinct id1 from v$lock where request > 0)
If it’s a dead lock, we need to kill that session.

116. How to kill a database session?
Ans : alter system kill session '&sid,&sno';

117. How to find adconfig is enabled for oracle operating system user/database?
Ans : If appsutil directory is there in RDBMS_ORACLE_HOME

118. Which files tell u the database helath?
Ans : alert log file @RDBMS_ORACLE_HOME/admin//bdump

119. How to apply a rdbms patch?
Ans : Using opatch

120. How to find opatch is enabled or not for u r database?
Ans : If Opatch directory exists under RDBMS_ORACLE_HOME.

121. What is the pre-req for applying a rdbms patch?
Ans : Inventory should be set in file oraInst.loc @/var/opt/oracle or /etc

122. What is Inventroy?

Ans: The oraInventory is the location for the OUI (Oracle Universal Installer)'s bookkeeping. The inventory stores information about: All Oracle software products installed in all ORACLE_HOMES on a machine Other non-Oracle products, such as the Java Runtime Environment (JRE)

In a 11i Application system the RDBMS and iAS ORACLE_HOMEs are registered in the oraInventory. The 806 ORACLE_HOME, which is not managed through OUI, is not.

123. What are different types of inventories?
Ans:

The Global inventory (or Central inventory) The Local inventory (or Home inventory)

124. What is Global inventory?

Ans : The Global Inventory is the part of the XML inventory that contains the high level list of all oracle products installed on a machine. There should therefore be only one per machine. Its location is defined by the content of oraInst.loc.The Global Inventory records the physical location of Oracle products installed on the machine, such as ORACLE_HOMES (RDBMS and IAS) or JRE. It does not have any information about the detail of patches applied to each ORACLE_HOMEs.The Global Inventory gets updated every time you install or de-install an ORACLE_HOME on the machine, be it through OUI Installer, Rapid Install, or Rapid Clone.
Note: If you need to delete an ORACLE_HOME, you should always do it through the OUI de-installer in order to keep the Global Inventory synchronized.

125. What is local inventory?

Ans : There is one Local Inventory per ORACLE_HOME. It is physically located inside the ORACLE_HOME at $ORACLE_HOME/inventory and contains the detail of the patch level for that ORACLE_HOME.The Local Inventory gets updated whenever a patch is applied to the ORACLE_HOME, using OUI.

126. What is rapid clone?
Ans : Rapid Clone is the new cloning utility introduced in Release 11.5.8. Rapid Clone leverages the new installation and configuration technology utilized by Rapid Install

127. How do I determine if my system is rapid clone enabled?
Ans : First, verify that your system is AutoConfig enabled. Then, verify that you have applied the latest Rapid Clone patch.

128. Explain the cloning process?

Ans :
1. Run adpreclone as applmgr and oracle user on source Perl adpreclone.pl dbTier as oracle user Perl adpreclone.pl appsTier as applmgr user

2. Take the cold/hotbackup of source database

3. Copy the five directories appl,comn,ora , db,data to target

4. Rename the directories, and change the permisssion

5. Set the inventory in oraInst.loc

6. Run perl adcfgclone.pl dbTier as oracle user,if the backup type is cold

7. If the backup type is hotbackup then Perl adcfgclone.pl dbTechStack. Create the control file on target from the control script trace file from source Recover the database Alter database open resetlogs

8. Run autoconfig with the ports changed as per requirement in xml.

9. Run perl adcfgclone.pl appsTier as applmgr

10. Run autoconfig with the ports changed as per requirement in xml.

129. What is the location of adpreclone.pl for oracle user?
Ans : RDBMS_ORACLE_HOME/appsutil/scripts/

130. What is the location of adpreclone.pl for applmgr user?
Ans : $COMMON_TOP/admin/scripts/

131. What is the location of adcfgclone.pl for oracle user?
Ans : $RDBMS_ORACLE_HOME/appsutil/clone/bin

132. What is the location of adcfgclone.pl for applmgr user?
Ans : $COMMON_TOP/clone/bin

133. What is statspack?
Ans : Statspack is a database utility to gather database and session level performance information.

134. How to install statspack?
Ans : Run the script spcreate.sql @RDBMS_ORACLE_HOME/rdbms/admin
Note more details on statspack refer metalink noteid: 149113.1

135. How to enable trace at database level?
Ans : set init.ora parameter sql_trace

136. How to enable trace for a session?
Ans: Alter system set sql_trace=true;

Execute the sql query

Alter system set sql_trace=false;

This will create a trace file at

$RDBMS_ORACLE_HOME/admin/contextname/udump with the spid of the current sql session.

137. How to enable trace for other session?
Ans : exec sys.dbms_system.set_sql_trace_in_session(sid,serial#,true/false)
Eg: To enable trace for sql session with sid 8SQL> exec sys.dbms_system.set_sql_trace_in_session(8,121,true);

PL/SQL procedure successfully completed.
To disable trace

SQL> exec sys.dbms_system.set_sql_trace_in_session(8,121,false);

138.What is the location of inint.ora ?
Ans : $RDBMS_ORACLE_HOME/dbs
139. What is that trace files contains and the utiliy used to read them?

Ans : Trace file contains the detail diagnostics of a sql statement like explain plan, physical reads, logical reads, buffer gets etc. Tkprof utility is used to convert trace file into readable format.

140. What is the syntax for tkprof?
Ans: tkprof explain=apps/ sys=no

141.How do we find adpreclone is run in source or not ?
Ans : If clone directory exists under RDBMS_ORACLE_HOME/appsutil for oracle user and $COMMON_TOP for applmgr user.

143. How to find trace file for a given concurrent request id?
Ans : Go to $RDBMS_ORACLE_HOME/admin//udump

grep “ “ *

144. What is a database link? How to create it?

Ans : If we want to access objects of another database from this database then we need a database link from this database to the other.
1.Login as oracle user

2.sqlplus “/as sysdba”

3. create database link connect to identified by using '';
Ex
SQL> create database link TEST1_TO_TEST2 connect to apps identified by apps using 'TEST2';
Database link created.
SQL> select name from v$database@ TEST1_TO_TEST2;
NAME

---------

TEST2

SQL>select db_link from dba_db_links;

4. Add destination database tns entry in tnsnames.ora

145. How many clonings u have done?
Ans : If u r very much confident on cloning processes then say 5 to 8 otherwise just 2 or 3.

146. What u know abt RMAN?
Ans : If u r good at RMAN then say yes, otherwise say we are not using RMAN for backup/recovery , why because we are using netapp snap technology for backups.

147. What is netapp?
Ans : Netapp is a storage technology.

148. What is formserver url?
Ans :http://hostname.domain:/dev60cgi/f60cgi

149. What is jinitiator?
Ans : Oracle jinitiator is the one which provide the required jvm to run forms interface/applet. When we access forms applet first time , oracle jinitiator will be installed automatically.

150. What is discoverer server?
Ans : Discoverer server is reporting tools which allows novoice user to use oracle application reports. Discoverer will come along with oracle applications when installed.

151. What is discoverer viewer url?
Ans: /discoverer4i/viewer152. What is discoverer plus url?
Ans : Ans : Aoljtest is a web based utility to test the availability of the different components of oracle applications like jserv,modplsql,jsp,forms etc
URL: /OA_HTML/jsp/fnd/aoljtest.jsp


154. What is adsplicer?
Ans : Adsplicer is a uitility used to register off cycle products.


155. What is licence manager?
Ans : Licence manager(adlicmgr) utility is used to licence/unlicence , enable new languages,enbale country specific functionality.


156. What is tnsping?


Ans : tnsping is command used to check the connectivity to the database server node from other nodes.
Ex: tnsping
Note: Tns entry should be there in tnsnames.ora for the database we are trying to work this command.


158. How to compile a form using f60gen?Ans :
f60gen module=/TEST/testappl/au/11.5.0/forms/F/ARXTWMAI.fmb userid=APPS/APPS output_file=/TEST/testappl/ar/11.5.0/forms/F/ARXTWMAI.fmx module_type=form batch=yes compile_all=special


160. What is APPLPTMP environment variable?


Ans : This is the temporary file location for the pl/sql temp files. If this variable was not set then the concurrent programs may errored out. 161. What is mean by enabling maintanance mode?
Ans : Maintanance mode is the adadmin option introduced from AD.I. When maintanance mode is enabled user may able to login to application but they only get profile option in the frontend navigation menu.


162. Is that necessary to enable maintanance mode while applying a patch?


Ans : We can even apply a patch without enabling maintanance mode with the following option
Adpatch options=hotpatch


163. How to find out oracle application framework version?


Ans : 1. Through aoljtest2. cd $COMMON_TOP/html/3. adident Header OA.jsp


164. How to find out what are the rdbms patches applied to an oracle home?
Ans :

1. opatch lsinventory

2. $RDBMS_ORACLE_HOME/.patch_storage directory contains the directories with the rdbms patch number, which are applied to this oracle home.


165. Is that necessary to shutdown database while applying a database patch?
Ans : Yes.


166. What is the command line utility to submit a concurrent request?
Ans : CONSUB


167. What is the significance of utl_file_dir parameter in init.ora file?


Ans : The value of this parameter is the group of directories to which u r database can write, means u r database packages have permission to write to flat files in these directories.


168. How you will find out discoverer version?
Ans : cd $806_ORACLE_HOME/discwb4/lib strings libd* grep 'Version:'


169. While applying a rdbms patch using opatch you are getting the error, unable to read inventory/inventory is corrupted/ORACLE_HOME is not not registered, what you will do, and how you will apply the patch?


Ans: We will check the inventory directory permission, try to apply the patch after giving 777 permissions to that inventory directory. If still it won’t work we will apply patch with the following command:
Opatch apply no_inventory


172. Have you applied rdbms patches and for what?

Ans : We got ORA-7445 error in alert log, for which oracle recommended to apply a rdbms patch.


173. What are the patch errors , you have encountered?
Ans :

1)Patch fails with the error, unable to generate perticular form, do u want to continue. We continue patching by saying “yes”, then we manually regenarate the form using f60gen utility.


2) Unable to generate jar files under JAVA_TOP AutoPatch error: Failed to generate the product JAR files Solution:Run adjkey -initialize -----------to creat identitydb.obj file which will beused by adjava to sign jar files.


174. What is adjkey? What files it will create?
Ans : adjkey is an adutility which will create digital signature, which will be used to sign all t" admin? mailto:adsign.txt@APPL_TOP>adsign.txt@APPL_TOP/adminappltop.cer@APPL_TOP/adminidentitydb.obj@applmgr home


175. What are the post installation task?
Ans : Running adjkey –initialize and then runnning adadmin to regerate jar files.

177. What are the clone errors, you have encountered?

Ans : Error:
RC-50013: Fatal: Failed to instantiate driver/u01/fms2c/appfms2c/fms2cora/iAS/appsutil/driver/instconf.drvCauseThe source instance has files that adpreclone flags as 'autoconfigable' but in reality they are not. So adpreclone.pl adds these files into the instconf.drv. Then when adcfgclone.pl is run on target it looks for the template file to instantiate for these files and since there isn't a template file adcfgclone.pl fails. SolutionModify the target's instconf.drv and remove the offending lines. Then rerun adcfgclone.pl

178. What are the real time problems you have encountered and how you trouble shooted that?

Ans:1. Concurrent Program is erroing out with snapshot too old error. To resolve this we have added space to temp tablespace.2. Concurrent Program is erroing out with unable to extent a perticular tablespace by so and so extents. To resolve this we have added on more data file to that tablespace.3. When we are trying to start apache with adapcctl.sh script after a autoconfig run, its saying that “node id is not matching with the application server id”. To resolve this we have updated the server id column in fnd_nodes table with the server id value in dbc file.

179. How you will find workflow version?
Ans : Run wfver.sql@FND_TOP/sql script as apps user

180 . When forms are running in servlet mode then the environment variables required for forms must be defined in what file and its location?
Ans : formsservlet.ini@$APACHE_TOP/Jserv/etc.

181. How to find out which patch driver is applied(like c,d,g or u)?
Ans: query ad_patch_drivers.

182. How to find out whether a language patch is applied for a perticular patch?
Ans : Query ad_patch_driver_langs.

183. How to validate that sysadmin password is correct or not from backend?
Ans: select fnd_web_sec.validate_login('SYSADMIN','Qwert8765') from dual;

184. How to compile jsp's(other than from adadmin)?

Ans: Force compilation of all jsps using the following command ojspCompile.pl --compile --flush

185. How to rotate logs for apache logs?

Ans: Using rotatelogs executable in httpd.conf file. Use Errorlog for error_log file rotation. Transferlog for other log files.

186. Other way of checking whether MRC is enabled or not besides using adadmin?

Ans : select multi_currency_flag from fnd_product_groups;

187. How to compile rdf?
Ans: Either using adadmin or rwcon60

189. How to change file/directory owner in linux/solaris?
Ans : chown - R :
Ex: chown - R applmgr:dba testappl

190. How to change the permission of file/directory in linux/solaris?
Ans : chmod –R
Ex : chmod –R 755 testappl

191. What are the files which contain apps password?
Ans :

1. wdbsrv.app@IAS_ORACLE_HOME/Apache/modplsql/cfg

2. CGIcmd.dat@806_ORACLE_HOME/reports60/server

3. wfmail.cfg@FND_TOP/resource - optional

4. CatalogLoader.conf@OA_JAVA - optional

5. CatalogLoader.xml@OA_HTML - optional

192. What is the script to find out ICM status?
Ans : afimchk.sql@FND_TOP/sql

193. What is the script to list the concurrent request status?
Ans: afrqrun.sql@FND_TOP/sql

194. What is the script that Lists managers that currently are running a request?
Ans : afcmrrq.sql@FND_TOP/sql

195) How can I determine whether a template is customizable or non-customizable?

Ans : If a keyword "LOCK" is present at the end of the file entry in the respective driver, then it is a non-customizable template. If the "LOCK" keyword is not seen, then that template can be customized.
196) How to find out JDBC version :

Ans : In the middle tier, edit the jserv.properties file located in the IAS_ORACLE_HOME/Apache/Jserv/etc directory- Locate the wrapper.classpath that is pointing to the jdbc zip file/opt/oracle/apps/$TWO_TASK/comn/java/jdbc14.zip

197)How to findout XML Parser Version

Ans : SQL> select WF_EVENT_XML.XMLVersion() XML_VERSION from sys.dual;

198)How to find out WorkFlow Version

Ans :

SQL> select TEXT Version from WF_RESOURCES where TYPE = 'WFTKN' and NAME = 'WF_VERSION';

199) How to find a file version in Application DB:
select v.version,v.CREATION_DATE,c.CREATION_DATE from AD_FILES c,AD_FILE_VERSIONS v where c.FILENAME like 'ARPURGEB.pls' AND c.file_id = v.file_id AND c.app_short_name = 'AR';

When a copy driver (C) or the copy portion of a unified driver (U) are aborted for any reason, upon reapplying, the CREATION_DATE and/or LAST_UPDATE_DATE columns in the patching history tables (Ex: AD_FILE_VERSIONS)are not updated to show the proper installation date but are left with the 01-01-1950 date. you can resolve the issuse by applying the latest ad.I patch.

200) How to check whether the product is install,shared and Not installed in Apps.?
Ans :

SQL>select t.application_name, t.application_id, i.patch_level, decode(i.status,’I',’Fully Installed’,‘N’,'Not Installed’,'S’,'Shared’,'Undetermined’) statusfrom fnd_product_installations i, fnd_application_vl twhere i.application_id = t.application_idorder by t.application_id;


----------------------------------------

Database Interview Questions - Basics I

Database Interview Questions - Basics I
Database

Q 1: What are the steps involved in database startup?
Ans: Start an Instance, Mount the database and Open the Database.

Q2: What are the steps involved in database shutdown?
Ans : Close the database ; Dismount the database and Shutdown the instance.

Q3: What is Archived Redo log?
Ans: Acrhived Redo Log consists of Redo Log files that have archived before being reused

Q4: What is a temporary segment?
Ans: Temporary segments are created by ORACLE when a sql statement needs a temporary work area to complete execution. When the statement finishes execution , the temporary segment extents are released to the system for future use.

Q5: What does a control file contain?
Ans: A control file records the physical structure of the database, database name,time stamp of database creation,max datafile limit,max redo log group,max log file members, database archive information,backup information..

Q6:What is a Tablespace?
Ans: A database is divided into Logical storage unit called tablespace. A tablespace used to grouped related logical structures together

Q7: Explain the relation ship among the database,tablespace and datafiles?
Ans: Each database logically divided in to one or more tablespaces. One or more datafiles are explicitly created for each tablespace.

Q8:What is Logical structure of the database?
Ans: Database àTablespacesàsegmentsàExtentsàOracle Blocks

Q9: What is the physical structure of the database?
Ans: Datafiles,Control File and redo log files.

Q10: What are Different types of segments?
Ans: Temp Segement, Undo Segment, Table Segment and Index Segment.

Q11: Can you name few DBMS Package names and their use?
Ans: DBMS_JOBS, DBMS_STATS,DBMS_SQLTUNE..

Q12: How Do you find whether the instance was started with PFILE or SPFILE?
Ans: Sho parameter spfile or query from v$parameter.

Q13: What Column differentiates the v$views to the gv$views and how?
Ans: The INST_ID Column which indicates the instance in a RAC environment the information came from ..

Q14: Explain an Ora -1555
Ans: You get this error when you get a snap shot too old within roolback.It can usually be solved by increasing the undo retention or increasing the size of rollbacks

Q15:What is Diffeernce between a temporary tablespace and a permanent tablespace?
Ans: A temporary tablespace is used for Sort Oprations of no sufficient space found in PGA. Permanent tablespace stores the true objects of dataase ..

Q16:How Do you add a datafile to a tablespace?
Ans: alter tablespace add datafile size ;

Q17: How Do you resize a datafile?
Ans: alter database datafile resize ;

Q18: What view Would you use to look at th size of a datafile?
Ans: dba_data_files,V$datafile

Q19: What view Would you use to determine free space in a tablespace?
Ans: dba_free_space

Q20: How can you gather statistics on a table?
Ans: The analyze command or using DBMS_STATS package.

Q21: List out the views names we can use to find about undo usage?
Ans: V$undostat,dba_undo_segs

Q22: What is view we can use to find out database locks?
Ans: v$lock

Q23: Using which view will check for session and process details?
Ans: V$session,v$process

Q24: Using which view will you find out , how much % Operation or job completed sofar it is running in database?
Ans: v$session_longops

Q25: How will you find out running job names from database?
Ans: Querying from dba_jobs,Dba_jobs_running views

Q26:How will find out Database creation time details? What is the column name?
Ans: v$database; created is column

Q27: How will you find out instance startup time?
Ans: v$instance,startup_time

Q28: How do you find archive is enabled for database?
Ans: archive log list or v$database ,log_mode Cloumn

Q29: How will you find active/inactive session count from database?
Ans: select status,count(*) from v$session group by status;

Q30: explain about temporary tablespace groups?
Ans: It is 10g new feature . it is a group of temporary tablespaces. We can get more details from dba_tablespace_groups if it is enabled.

Q31: What is undo_retention?
Ans : Time specification for undo segments hold the data ..and these reusable are reusable..

Q32: How will you find undo management is auto or manual?
Ans : Sho parameter undo_management

Q33: If your database contain 4 undo tablespaces..how will you find out which undo tablespace is used by database?
Ans: Sho parameter undo_tablespace

Q34: If you database contain 5 temporary tablespaces how will you find out what is default temporary tablespace to databse?
Ans: By querying database_properties

Q35. What is alert log file and how will you find out the location of file from database?
Ans : Sho parameter dump

UNIX:

Q36: How can you determine if an Oracle Instance is up from the Operating system level?
Ans: ps –efgrep smon/pmon

Q37: How can u find dead processes?
Ans: ps –efgrep zombie or who –d or ps –efgrep defunc

Q38: Give the command to display space usage on the UNIX File system?
Ans: df –lk or df –lh or df –k/h

Q39: Explain sar and vmstat?
Ans: sar used for to get system activity report and Vmstat reports on virtuval memory statistics for processes .

Q40: How do you find the Load average of a server?
Ans: using uptime command.

Q41: How do you find out swap usage on a server?
Ans: free –g

Q42: How will you kill a process id at OS level ?
Ans: kill -9

Q43: How will you find out the count of Oracle processes running on server?
Ans: ps –efgrep wc –l

Q44: How will you check if any Rman backup is running?
Ans: ps –efgrep rman

Q45: How will check cron schedule job details?
Ans: Crontab –l

Q46 : How will find ASM instance is running on server?
Ans : ps –efgrep +ASM

Q47 : I have a very big file at OS and I want see last 50 lines of the file only..Which command will you use?
Ans : tail -50

Q48: How can you find , file last accessed ( modified )date?
Ans : ls –l Q49: How will you find out howmany instances are running on a server?
Ans : ps –efgrep smon (gives all instance names which are running)

Q50 : What is the command we can use to find trace of process at OS level?(means what process is doing)
And : strace –p
----------------------------------------------------

Oracle DBA Interview Questions - Part 1

Oracle DBA Interview Questions - Part 1

------------------------------------------------

Below are the few of Oracle database interview questions, Watch this space for more questions & answers.

Please provide your comments, Feedback welcome.


1) List components of an Oracle instance?

Ans:

An Oracle instance is comprised of memory structures and background processes.
The Systems Global Area (SGA) and shared pool are memory structures. The process monitor is a background process (DBWn, LGWR, ARCn, and PMON). The Oracle database consists of the physical components such as data files; redo log files, and the control file.

2)Which background process and associated database component guarantees that committed data is saved even when the changes have not been recorded in the data files?

Ans:

LGWR (log writer) and online redo log files. The log writer process writes data to the buffers when a transaction is committed. LGWR writes to the redo log files in the order of events (sequential order) in case of a failure.

3)What is the maximum number of database writer processes allowed in an Oracle instance?

Ans:

The maximum is ten. Every Oracle instance begins with only one database writer process, DBW0. Additional writer processes may be started by setting the initialization parameter DB_WRITER_PROCESSES (DBW1 through DBW9).

4)Which background process is not started by default when you start up the Oracle instance?

Ans:

ARCn. The ARCn process is available only when the archive log is running (LOG_ARCHIVE_START initialization parameter set to true). DBWn, LGWR, CKPT, SMON, and PMON are the default processes associated with all instances (start by default).

5)Describe a parallel server configuration?

Ans:

In a parallel server configuration multiple instances known as nodes can mount one database. In other words, the parallel server option lets you mount the same database for multiple instances. In a multithreaded configuration, one shared server process takes requests from multiple user processes.

6)Choose the right hierarchy, from largest to smallest, from this list of logical database structures?

Ans:

Database, tablespace, segment, extent, data blocks.

7)Which background process is responsible for writing the dirty buffers to the database files?

Ans:

The purpose if the DBWn is to write the contents of the dirty buffer to the database file.
This occurs under two circumstances – when a checkpoint occurs or when the server process searches the buffer cache for a set threshold.

8)Which component in the SGA has the dictionary cache?

Ans:

The dictionary cache is part of the shared pool. The shared pool also contains the library cache and control structures.

10)When a server process is terminated abnormally, which background process is responsible for releasing the locks held by the user?

Ans:

The process monitor (PMON) releases the locks on tables and rows held by the user during failed processes and it reclaims all resources held by the user. PMON cleans up after failed user processes.


11)What is a dirty buffer?

Ans:

A dirty buffer refers to blocks in the database buffer cache that are changed, but are not yet written to the disk.

12)If you are updating one row in a table using the ROWID in the WHERE clause (assume that the row is not already in the buffer cache), what will be the minimum amount of information read to the database buffer cache?

Ans:

The block is the minimum amount of information read/copied to the database buffer cache.

13)What happens next when a server process is not able to find enough free buffers to copy the blocks from disk?

Ans:

To reduce I/O contention, the DBWn process does not write the changed buffers immediately to the disk. They are written only when the dirty buffers reach a threshold or when there are not enough free buffers available or when the checkpoint occurs.

14)Which memory structures are shared? Name two.

Ans:

The library cache contains the shared SQL areas, private SQL areas, PL/SQL procedures, and packages, and control structures. The large pool is an optional area in the SGA.

15)When a SELECT statement is issued, which stage checks the user’s privileges?

Ans:

Parse checks the user’s privileges, syntax correctness, and the column names against the dictionary. Parse also determines the optional execution plan and finds a shared SQL area for the statement.

16)Which memory structure records all database changes made to the instance?

Ans:

The redo log files holds information on the changes made to the database data. Changes are made to the database through insert, update, delete, create, alter, or drop commands.

17)What is the minimum number of redo log files required in a database?

Ans:

The minimum number of redo log files required in a database is two because the LGWR (log writer) process writes to the redo log files in a circular manner.

18)When is the system change numbers assigned?

Ans:

System changed numbers (SCN) are assigned when a transaction is committed. The SCN is a unique number acting as an internal timestamp, used for recovery and read-consistent queries. In other words, the SCN number is assigned to the rollback statement to mark it as a transaction committed.

19)Name the parts of the database buffer pool?

Ans:

The database buffer pool consists of the keep buffer pool; recycle buffer pool, and the default buffer pool.
The keep buffer pool retains the data block in memory.
The recycle buffer pool removes the buffers from memory when it’s not needed.
The default buffer pool contains the blocks that are not assigned to the other pools.

20)List all the valid database start-up option?

Ans:

STARTUP MOUNT, STARTUP NOMOUNT, and STARTUP FORCE.
STARTUP NOMOUNT is used for creating a new database or for creating new control files. STARTUP MOUNT is used for performing specific maintenance operations such as renaming data files, enabling or disabling archive logging, renaming, adding or dropping redo log files, or for performing a full database recovery. Finally, STARTUP FORCE is used to start a database forcefully, (if you have problems starting up an instance.) STARTUP FORCE shuts down the instance if it is already running and then restarts it.


21)Which two values from the V$SESSION view are used to terminate a user session?

Ans:

The session identifier (SID) and the serial number (SERIAL #) uniquely identify each session and both are needed to kill a session. Ex. SQL > ALTER SYSTEM KILL SESSION ‘SID’,’ SERIAL #’;

22)To use operating system authentication to connect the database as an administrator, what should the value of the parameter REMOTE_LOGIN_PASSWORDFILE be set to?

Ans:

The value of the REMOTE_LOGIN_PASSWORDFILE parameter should be set to NONE to use OS authentication. To use password file authentication, the value should be either EXCLUSIVE or SHARED.

23)What information is available in the alert log files?

Ans:

The alert log store information about block corruption errors, internal errors, and the non-default initialization parameters used at instance start-up. The alert log also records information about database start-up, shutdown, archiving, recovery, tablespace modifications, rollback segment modifications, and the data file modifications.

24)Which parameter value is use to set the directory path where the alert log file is written?

Ans:

The alert log file is written in the BACKGROUND_DUMP_DEST directory. This directory also records the trace files generated by the background processes. The USER_DUMP_DEST directory has the trace files generated by user sessions. The CORE_DUMP_DEST directory is used primarily on UNIX platforms to save the core dump files. ALERT_DUMP_DEST is not a valid parameter.

25)Which SHUTDOWN option requires instance recovery when the database is started the next time?

Ans:

SHUTDOWN ABORT requires instance recovery when the database is started the next time. Oracle will also roll back uncommitted transactions during start-up. This option shuts down the instance without dismounting the database.

26)Which SHUTDOWN option will wait for the users to complete their uncommitted transactions?

Ans:

When SHUTDOWN TRANSACTIONAL is issued, Oracle waits for the users to either commit or roll back their pending transactions. Once all users have either rolled back or committed their transactions, the database is shut down. When using SHUTDOWN IMMEDIATE, the user sessions are disconnected and the changes are rolled back. SHUTDOWN NORMAL waits for the user sessions to disconnect from the database.

26)How do you make a database read-only?

Ans:

To put a database into read-only mode, you can mount the database and open the database in read-only mode. This can be accomplished in one step by using STARTUP OPEN READ ONLY.

27)Which role is created by default to administer databases?

Ans:

The DBA role is created when you create the database and is assigned to the SYS and SYSTEM users.


28)Which privilege do you need to connect to the database, if the database is started up by using STARTUP RESTRICT?

Ans:

RESTRICTED SESSION privilege is required to access a database that is in restrict mode. You can start up the database in restrict mode by using STARTUP RESTRICT, or change the database to restricted mode by using ALTER SYSTEM ENABLE RESTRICTED SESSION.

29)At which stage of the database start-up is the control file opened?

Ans:


The control file is opened when the instance mounts the database. The data files and redo log files are opened after the database is opened. When the instance is started, the background processes are started.


30)Which command will “bounce” the database-that is, shut down the database and start up the database in a single command?

Ans:

STARTUP FORCE will terminate the current instance and start up the database. It is equivalent to issuing SHUTDOWN ABORT and STARTUP OPEN.

31)When performing the command SHUTDOWN TRANASACTIONAL, what actions oracle performs internally?

Ans:

SHUTDOWN TRANSACTIONAL waits for all user transactions to complete. Once no transactions are pending, it disconnects all sessions and proceeds with the normal shutting down process. The normal shut down process performs a checkpoint, closes data files and redo log files, dismounts the database, and shuts down the instance.

32)When you issue the command ALTER SYSTEM ENABLE RESTRICTED SESSION, what happens to the users who are connected to the database?

Ans:

If you enable the RESTRICTED SESSION when users are connected, nothing happens to the already connected sessions. Future sessions are started only if the user has the RESTRICTED SESSION privilege.

33)Which view has information about users who are granted SYSDBA or SYSOPER privilege?

Ans:

A dynamic view of V$PWFILE_USERS has the username and a value of TRUE in column SYSDBA if the SYSDBA privilege is granted, or a value of TRUE in column SYSOPER if the SYSOPER privilege is granted.

34)What is the recommended configuration for control files?

Ans:

Oracle allows multiplexing of control files. If you have two control files on two disks, one disk failure will not damage both control files.

35)How many control files are required to create a database?

Ans:

You do not need any control files to create a database; the control files are created when you create a database, based on the filenames specified in the CONTROL_FILES parameter of the parameter file


36)Which environment variable or registry entry variable is used to represent the instance name?

Ans:

The Oracle_SID environment variable is used to represent the instance name. When you connect to the database without specifying a connect string, Oracle connects you to this instance.

37)Which initialization parameter cannot be changed after creating the database?

Ans:

The block size of the database cannot be changed after database creation. The database name can be changed after re-creating the control file with a new name, and the CONTROL_FILES parameter can be changed if the files are copied to a new location.

38)Which script creates the data dictionary views?

Ans:

The catalog.sql script creates the data dictionary views. The base tables for these views are created by the script sql.bsq, which is executed when you issue the CREATE DATABASE command.

39)How do you correct a procedure that has become invalid when one of the tables it is referring to was altered to drop a constraint?

Ans:

The invalid procedure, trigger, package, or view can be recompiled by using the ALTER COMPILE command.

40)How many data files can be specified in the DATAFILE clause when creating a database?

Ans:

You can specify more than one data file; the files will be used for the SYSTEM tablespace. The files specified cannot exceed the number of data files specified in the MAXDATAFILES clause.


41)Who owns the data dictionary?

Ans:

The SYS user owns the data dictionary. The SYS and SYSTEM users are created when the database is created.

42)

What is the default password for the SYS user?

The default password for the SYS user is CHANGE_ON_INSTALL, and for SYSTEM it is MANAGER. You should change these passwords once the database is created.


43)What is the prefix for dynamic performance views?

Ans:

The dynamic performance views have a prefix of V$. The actual views have the prefix of V_$, and the synonyms have a V$ prefix. The views are called dynamic performance views because they are continuously updated while the database is open and in use, and their contents related primarily to performance.

44)What piece of information is not available in the control file?

Ans:

The instance name is not available. The control files include the following:
Database name the control file belongs to, database creation timestamp, data files, redo log files, tablespace names, current log sequence number, most recent checkpoint information, and Recovery Manager’s backup information.

45)When you create a control file, the database has to be:

Ans:

Not mounted.


46)Which data dictionary view provides the names of the control files?

V$CONTROLFILES shows the names of the control files.

47)The initialization parameter file has LOG_CHECKPOINT_INTERVAL = 60; what does this mean?

Ans:

LOG_CHECKPOINT_INTERVAL ensures that no more than a specified number of redo log blocks (OS blocks) need to be read during instance recovery. LOG_CHECKPOINT_TIMEOUT ensures that no more than a specified number of seconds worth of redo log blocks need to be read during instance recovery.


48) What will happen if ARCn could not write to a mandatory archive destination?

Ans:

Oracle will write a message to the alert file and all database operations will be stopped. Database operation resumes automatically after successfully writing the archived log file. If the archive destination becomes full you can make room for archives either by deleting the archive log files after copying them to a different location, or by changing the parameter to point to a different archive location.


49What are the valid status codes in the V$LOGFILE view?

Ans:

Valid status codes V$LOGFILE views include STALE, INVALID, DELETED, or the status can be blank. STALE means the file contents are incomplete; INVALID means the file is not accessible; DELETED means the file is no longer used; and blank status means the file is in use.

50)If you have two redo log groups with four members each, how many disks does Oracle recommend to keep the redo log files?

Ans:

You should keep a minimum of two redo log groups, with a recommended two members in each group. Oracle recommends that you keep each member of a redo log group on a different disk. The maximum number of redo log groups is determined by the MAXLOGFILES database parameter. The MAXLOGMEMBERS database parameter specifies the maximum number of members per group.


51)When does the SMON process automatically coalesce the tablespaces?

Ans:

When the PCTINCREASE default storage of the tablespace is set to 0. You can manually coalesce a tablespace by using ALTER TABLESPACE COALESCE.


52)How would you drop a tablespace if the tablespace were not empty?

Ans:

Use DROP TABLESPACE INCLUDING CONTENTS.
The INCLUDING CONTENTS clause is used to drop a tablespace that is not empty. Oracle does not remove the data files that belong to the tablespace; you need to do it manually using an OS command. Oracle updates only the control file.


53)Which command is used to enable the auto-extensible feature for a file, if the file is already part of a tablespace?

Ans:

To enable auto=extension, use ALTER DATABASE DATAFILE AUTOEXTEND ON NEXT MAXSIZE .

54)How would you determine how much sort space is used by a user session?

Ans:

The V$SORT_USAGE shows the active sorts in the database; it shows the space used, username, SQL address, and hash value. It also provides the number of EXTENTS and number of BLOCKS used by each sort session, and the username. The V$SORT can be joined with V$SESSION or V$SQL to obtain more information on the session or the SQL statement causing the sort.

55)When a table is updated, where is the before image information (which can be used for undoing the changes) stored?

Ans:

Rollback segment. Before any DML operation, the undo information (before-image of data) is stored in the rollback segments. This information is used to undo the changes and to provide a read-consistent view of the data.

56)Which parameter specifies the number of transaction slots in a data block?
Ans:

INITRANS specifies the number of transaction slots in a data block. A transaction slot is used by Oracle when the data block is being modified. INITRANS reserves space for the transactions in the block.

57)Which data dictionary view would you query to see the free extents in a tablespace?

Ans:

DBA_FREE_SPACE shows the free extents in a tablespace. DBA_EXTENTS shows all the extents that are allocated to a segment.

58)Which portion of the data block stores information about the table having rows in this block?

Ans:

Row Data. The table directory portion of the block stores information about the table having rows in the block. The row directory stores information such as row address and size of the actual rows stored in the row data area.
------------------------------------------

Oracle Application DBA Interview Questions - III

Oracle Application DBA Interview Questions - III

Q)What is your day to day activity as an Apps DBA?
Ans: 
As an Apps DBA we monitor the system for different alerts (Entreprise Manager or third party tools used for configuring the Alerts) Tablespace Issues, CPU consuption
Database blocking sessions..etc
Regular maintanance activies like cloning,patching,custom code migrations (provided by developers) 
Working with user isses.

Q)How often Do you patch?
Ans: Usually for non-production the patching request comes aroung weekly 4-6 and the same patches will be applied to Production in the outage or maintanance window.
Production has weekly maintance window (Eg Sat 6PM to 9PM) where all the changes (patches) will applied on production.

Q)How often Do you clone?
Ans: Cloning happens biweekly or monthly depending on the organization requierement.

Q)What change control/management or CCB?
Ans: Every organization has change control process, Change control process is no change goes into production witout proir testing on non-production instance.
Eg: If a user encouters an issue in production instance and the fix for the issue is known, Still the fix should not be applied directly on production, as it is not tested.
The same fix need to be first applied on a non-prod instance where the similar issue is happening and test the issue and instance stability.
Once user is happy with the results the change or fix will be implemented to production with the approval from Change control Board, CCB is a managemant team who reviews all the changes being deployed to production,
Depending on the need and criticality and testing results they approve the change movement to production instance.

Q)How much time does it take to upgrade, clone ?
Ans: Clone usually takes around 48hrs to copy and configure and upgrade depends on the database size and module involved.
upgrade from 11.5.9 to 11.5.10.2 will take around 3-4 days and 11i to R12 upgrade will take around 4-5 days.

Q)What is the meaning QA,CRP,SIT,DEV,UAT,PRE-PROD,PROD Instance?
QA - Tesing Instance
CRP - Conference Room Pilot
SIT - System Integration Testing
DEV - Developement
UAT- User Acceptence Testing
STAGE - Pre-production Instance
Prod - Production/actuall instance where the business is running

Q)What do we have in FND_NODES?Ans:
FND_NODES table contains  information about node_names and services enabled on a node.
In multinode instance if you want to know which node is running what services, You can query the fnd_nodes and get that information.

Q)when do we run FND_CONC_CLONE.SETUP_CLEAN ?
Ans:
FND_NODES table contains node information, If you have cloned test instance from production still the node information of production will be present after clone in the test instance.
we use FND_CONC_CLONE.SETUP_CLEAN to cleanup FND_NODES table in the target to clear source node information as part of cloning.
Below syntax to execute:
SQL> sho user
USER is "APPS"
SQL> EXEC FND_CONC_CLONE.SETUP_CLEAN;
PL/SQL procedure successfully completed.
SQL> commit;
Commit complete.

This will delete all the entries in the fnd_nodes table, to populate it with target system node information, Run autoconfig on DB node and Applications node.

Q)How verify the sysadmin password from command line?
Ans:
This utility can be used to verify the GUEST/ORACLE password
SQL>select fnd_web_sec.validate_login('SYSADMIN','<sysadmin_password>')from dual;
If it returns Y then sysadmin password is correct
If it returns N then sysadmin password that we are using
Eg:
SQL> select fnd_web_sec.validate_login('SYSADMIN','SYSADMIN123') from dual;
FND_WEB_SEC.VALIDATE_LOGIN('SYSADMIN','SYSADMIN123')
--------------------------------------------------------------------------------
N
SQL> select fnd_web_sec.validate_login('SYSADMIN','SYSADMIN') from dual; 
FND_WEB_SEC.VALIDATE_LOGIN('SYSADMIN','SYSADMIN')
--------------------------------------------------------------------------------
Y

Q)List out few Apps related tables ?
Ans:
CONCURRENT REQUEST/PROGRAM/MANAGERS
-------------------
FND_CONCURRENT_QUEUES 
FND_CONCURRENT_PROGRAMS 
FND_CONCURRENT_REQUESTS 
FND_CONCURRENT_PROCESSES 
FND_CONCURRENT_QUEUE_SIZE 

FND/AOL Tables
--------------
FND_APPL_TOPS 
FND_LOGINS 
FND_USER 
FND_DM_NODES 
FND_TNS_ALIASES 
FND_NODES 
FND_RESPONSIBILITY 
FND_DATABASES 
FND_UNSUCCESSFUL_LOGINS 
FND_LANGUAGES 
FND_APPLICATION 
FND_PROFILE_OPTION_VALUES 

AD/Patches
-------------
AD_APPLIED_PATCHES 
AD_PATCH_DRIVERS 
AD_BUGS 
AD_INSTALL_PROCESSES 
AD_SESSIONS 
AD_APPL_TOPS 

Q) How To find the latest application version 
select ARU_RELEASE_NAME||'.'||MINOR_VERSION||'.'||TAPE_VERSION version, START_DATE_ACTIVE updated,ROW_SOURCE_COMMENTS "how it is done",BASE_RELEASE_FLAG "Base version" FROM AD_RELEASES where END_DATE_ACTIVE IS NULL

Q) How to find out if any patch except localisation patch is applied or not, if applied, that what all drivers it contain and time of it's application 
select A.APPLIED_PATCH_ID, A.PATCH_NAME, A.PATCH_TYPE, B.PATCH_DRVIER_ID, B.DRIVER_FILE_NAME, B.ORIG_PATCH_NAME, B.CREATION_DATE, B.PLATFORM, B.SOURCE_CODE, B.CREATIONG_DATE, B.FILE_SIZE, B.MERGED_DRIVER_FLAG, B.MERGE_DATE from AD_APPLIED_PATCHES A, AD_PATCH_DRIVERS B where A.APPLIED_PATCH_ID = B.APPLIED_PATCH_ID and A.PATCH_NAME = '' 

Q) How to know that if the patch is applied successfully, applied on both node or not, start time of patch application and end time of patch application, patch top location , session id ... patch run id */ 
select D.PATCH_NAME, B.APPLICATIONS_SYSTEM_NAME, B.INSTANCE_NAME, B.NAME, C.DRIVER_FILE_NAME, A.PATCH_DRIVER_ID, A.PATCH_RUN_ID, A.SESSION_ID, A.PATCH_TOP, A.START_DATE, A.END_DATE, A.SUCCESS_FLAG, A.FAILURE_COMMENTS from AD_PATCH_RUNS A, AD_APPL_TOPS B, AD_PATCH_DRVIERS C, AD_APPLIED_PATCHES D where A.APPL_TOP_ID = B.APPL_TOP_ID AND A.PATCH_DRIVER_ID = C.PATCH_DRIVER_ID and C.APPLIED_PATCH_ID = D.APPLIED_PATCH_ID and A.PATCH_DRIVER_ID in (select PATCH_DRIVER_ID from AD_PATCH_DRIVERS where APPLIED_PATCH_ID in (select APPLIED_PATCH_ID from AD_APPLIED_PATCHES where PATCH_NAME = '')) ORDER BY 3; 

Q) Howto find the base application version 
select ARU_RELEASE_NAME||'.'||MINOR_VERSION||'.'||TAPE_VERSION version, START_DATE_ACTIVE when updated, ROW_SOURCE_COMMENTS "how it is done" from AD_RELEASES where BASE_RELEASE_FLAG = 'Y' 

Q) How To find all available application version 
select ARU_RELEASE_NAME||'.'||MINOR_VERSION||'.'||TAPE_VERSION version, START_DATE_ACTIVE when updated, END_DATE_ACTIVE "when lasted", CASE WHEN BASE_RELEASE_FLAG = 'Y' Then 'BASE VERSION' ELSE 'Upgrade' END "BASE/UPGRADE", ROW_SOURCE_COMMENTS "how it is done" from AD_RELEASES 

Q) How To get file version of any application file which is changed through patch application 
select A.FILE_ID, A.APP_SHORT_NAME, A.SUBDIR, A.FILENAME, max(B.VERSION) from AD_FILES A, AD_FILE_VERSIONS B where A.FILE_ID = B.FILE_ID and B.FILE_ID = 86291 group by A.FILE_ID, A.APP_SHORT_NAME, A.SUBDIR, A.FILENAME 

Q) How To get information related to how many time driver file is applied for bugs 
select * from AD_PATCH_RUN_BUGS where BUG_ID in (select BUG_ID from AD_BUGS where BUG_NUMBER = '' 

Q) How To find latest patchset level for module installed 
select APP_SHORT_NAME, max(PATCH_LEVEL) from AD_PATCH_DRIVER_MINIPKS GROUP BY APP_SHORT_NAME 

Q) How To find what is being done by the patch 
select A.BUG_NUMBER "Patch Number", B. PATCh_RUN_BUG_ID "Run Id",D.APP_SHORT_NAME appl_top, D.SUBDIR, D.FILENAME, max(F.VERSION) latest, E.ACTION_CODE action from AD_BUGS A, AD_PATCH_RUN_BUGS B, AD_PATCH_RUN_BUG_ACTIONS C, AD_FILES D, AD_PATCH_COMMON_ACTIONS E, AD_FILE_VERSIONS F where A.BUG_ID = B.BUG_ID and B.PATCH_RUN_BUG_ID = C.PATCH_RUN_BUG_ID and C.FILE_ID = D.FILE_ID and E.COMMON_ACTION_ID = C.COMMON_ACTION_ID and D.FILE_ID = F.FILE_ID and A.BUG_NUMBER = '' and B.PATCH_RUN_BUG_ID = ' < > ' and C.EXECUTED_FLAG = 'Y' GROUP BY A.BUG_NUMBER, B.PATCH_RUN_BUG_ID, D. APP_SHORT_NAME, D>SUBDIR, D.FILENAME, E.ACTION_CODE 

Q) How To find Merged patch Information from database in Oracle Applications 
select bug_number from ad_bugs where bug_id in ( select bug_id from ad_comprising_patches where patch_driver_id =(select patch_driver_id from ad_patch_drivers where applied_patch_id =&n) ); 
Q) How toto know, what all has been done during application of PATCH 
Select J.PATCh_NAME, H.APPLICATIONS_SYSTEM_NAME Instance_Name, H.NAME, I.DRIVER_FILE_NAME, D.APP_SHORT_NAME appl_top,D.SUBDIR, D.FILENAME, max(F.VERSION) latest, E.ACTION_CODE action from AD_BUGS A, AD_PATCH_RUN_BUGS B,AD_PATCH_RUN_BUG_ACTIONS C, AD_FILES D, AD_PATCH_COMMON_ACTIONS E, AD_FILE_VERSIONS F, AD_PATCH_RUNS G,
AD_APPL_TOPS H, AD_PATCH_DRIVERS I, AD_APPLIED_PATCHES J where A.BUG_ID = B.BUG_ID and 
B.PATCH_RUN_BUG_ID = C.PATCH_RUN_BUG_ID and C.FILE_ID = D.FILE_ID and E.COMMON_ACTION_ID = C.COMMON_ACTION_ID 
and D.FILE_ID = F.FILE_ID and G.APPL_TOP_ID = H.APPL_TOP_ID and G.PATCH_DRIVER_ID = I.PATCH_DRIVER_ID and 
I.APPLIED_PATCH_ID = J.APPLIED_PATCH_ID and B.PATCH_RUN_ID = G.PATCH_RUN_ID and C.EXECUTED_FLAG = 'Y' and 
G.PATCH_DRIVER_ID in (select PATCH_DRIVER_ID from AD_PATCH_DRIVERS where APPLIED_PATCH_ID
in (select APPLIED_PATCH_ID from AD_APPLIED_PATCHES where PATCH_NAME = 'merged'))
GROUP BY J.PATCH_NAME, H.APPLICATIONS_SYSTEM_NAME, H.NAME, I.DRIVER_FILE_NAME, D.APP_SHORT_NAME, D.SUBDIR, 
D.FILENAME, E.ACTION_CODE 

Q) How to find out Patch level of mini Pack 
Select product_version,patch_level from FND_PROUDCT_INSTALLATIONS where patch_level like '%&shortname%'; 
Replace short name by name of Oracle Apps Minipack for which you want to find out Patch level . ex. 
AD - for Applications DBA 
GL - for General Ledger 
PO - Purchase Order 

Q)List out Profile Options Useful for Oracle Apps DBA?
Here is the list of few profile options which Apps DBA use frequently. 
**It is not necessary that you as Apps DBA must know all profile options**
Applications Help Web Agent 
Applications Servlet Agent 
Applications Web Agent 
Concurrent: Active Request Limit 
Concurrent: Hold Requests 
Concurrent: Multiple Time Zones 
Concurrent: Report Access Level 
Concurrent: Report Copies 
Concurrent: Request priority 
Database Instance 
Enable Security Group
FND: Debug Log Filename 
FND: Debug Log Level 
Forms Runtime Parameters 
Gateway User ID
ICX: Discoverer Launcher
ICX: Forms Launcher
ICX: Report Launcher
ICX: Limit Connect
ICX: Limit time
ICX: Session Timeout
MO Operating Unit
Node Trust Level
RRA: Delete Temporary Files
RRA: Enabled
RRA: Service Prefix
RRA: Maximum Transfer Size
Self Service Personal Home Page Mode
Sign-On: Audit Level
Signon Password Failure Limit
Signon Password Hard to Guess
Signon Password Length
Signon Password No Reuse
Site Name
Socket Listener Port
TCF: Host
TCF: Port
TWO TASK
Viewer: Text