SlideShare a Scribd company logo
1 of 20
Download to read offline
Oracle DBA Interview Questions
Oracle DBA Interview Questions
1. How many memory layers are in the shared pool?
1. How many memory layers are in the shared pool?
Ans - a) library cache
Ans - a) library cache
b) Dictionary cache
b) Dictionary cache
c) SQL Area
c) SQL Area
2. How do you find out from the RMAN catalog if a particular archive log has been backed-up?
2. How do you find out from the RMAN catalog if a particular archive log has been backed-up?
Ans - LIST
Ans - LIST BACKUP OF ARCHIVELOG sequence=453;
BACKUP OF ARCHIVELOG sequence=453;
3. How can you tell how much space is left
3. How can you tell how much space is left on a given file system and how much space each of the
on a given file system and how much space each of the
file system's
file system's subdirector
subdirectories take-up?
ies take-up?
Ans – df -h
Ans – df -h
4. Define the SGA and:
4. Define the SGA and:
• How you would configure SGA for a mid-sized OLTP environment?
• How you would configure SGA for a mid-sized OLTP environment?
• What is involved in tuning the SGA?
• What is involved in tuning the SGA?
Ans - Generaly SGA will be configured as below.
Ans - Generaly SGA will be configured as below.
Size is determined based on several factors like following:-
Size is determined based on several factors like following:-
1-size of database (small, medium or large)
1-size of database (small, medium or large)
2-whether the application will be OLTP & DSS
2-whether the application will be OLTP & DSS
3-total memory on the server 
3-total memory on the server 
4-whether you have other applicatiions on the same server for example Oracle ERP
4-whether you have other applicatiions on the same server for example Oracle ERP
application server & db may
application server & db may be installed on SAME SERVER which require
be installed on SAME SERVER which require varying
varying
memory sizes
memory sizes
5-number of users expected to use application on the server 
5-number of users expected to use application on the server 
6-type of users (super users or light users or both)
6-type of users (super users or light users or both)
However, if the DB is dedicated to one server alone, and knowing the size of your DB,
However, if the DB is dedicated to one server alone, and knowing the size of your DB,
I would take defaults on the install manual & those of DBCA and play with SGA
I would take defaults on the install manual & those of DBCA and play with SGA
 parameter values in your tuning cycle.
 parameter values in your tuning cycle.
7. Type of conn
7. Type of connection of session (dedicated or multithreaded)
ection of session (dedicated or multithreaded)
For tuning the SGA involve Tuning the all
For tuning the SGA involve Tuning the all
the component of the SGA ie.
the component of the SGA ie.
a) Shared pool
a) Shared pool
b) Buffer Cache
b) Buffer Cache
c) Large Pool
c) Large Pool
d) Java Pool
d) Java Pool
5. What is the cache hit
5. What is the cache hit ratio, what impact does it have on performance of an Oracle database and
ratio, what impact does it have on performance of an Oracle database and
what is involved in tuning it?
what is involved in tuning it?
Ans - a)
Ans - a) Library cache HIT ratio by v$librarycache
Library cache HIT ratio by v$librarycache
b) Dictionary cache HIT ratio by v$rowcache
b) Dictionary cache HIT ratio by v$rowcache
a) Buffer cache HIT ratio should be more than 90% but at the same time Physical read and
a) Buffer cache HIT ratio should be more than 90% but at the same time Physical read and
write should also
write should also be considered. (V$SYSSTAT)
be considered. (V$SYSSTAT)
6. Other than
6. Other than making use of the statspack utility, what would you
making use of the statspack utility, what would you check when you are monitoring or
check when you are monitoring or
running a health check on an Oracle 8i or
running a health check on an Oracle 8i or 9i database?
9i database?
Ans – a) OEM
Ans – a) OEM
b) TKProf 
b) TKProf 
7. How do you tell what your machine name is and what is its
7. How do you tell what your machine name is and what is its IP address?
IP address?
Ans
Ans -
- Window
Window /
/ Linux
Linux
a)ipconfig / ifconfig
a)ipconfig / ifconfig
b)ner user / hostname
b)ner user / hostname
8. How would you go
8. How would you go about verifying the network name that the local_listener is currently using?
about verifying the network name that the local_listener is currently using?
Ans – LSNRCTL and check the listener.log file
Ans – LSNRCTL and check the listener.log file
1
1
9. You have 4
9. You have 4 instances running on the same UNIX
instances running on the same UNIX box. How can you determine which shared
box. How can you determine which shared
memory and semaphores are associated with which
memory and semaphores are associated with which instance?
instance?
Ans -
Ans - ipcs | grep oracle
ipcs | grep oracle
10. What view(s) do you use
10. What view(s) do you use to associate a user's SQLPLUS
to associate a user's SQLPLUS session with his o/s process?
session with his o/s process?
Ans – v$session and v$process.
Ans – v$session and v$process.
11. What is
11. What is the recommende
the recommended interval at which
d interval at which to run statspack snapshots, and why?
to run statspack snapshots, and why?
Ans – 1 Hour prefered
Ans – 1 Hour prefered
12. What spfile/init.ora file parameter exists to
12. What spfile/init.ora file parameter exists to force the CBO to make the
force the CBO to make the execution path of a given
execution path of a given
statement use an index, even if the index scan may appear to be calculated as more costly?
statement use an index, even if the index scan may appear to be calculated as more costly?
Ans -
Ans - optimizer_index_cost_adj
optimizer_index_cost_adj
13. Assuming today is Monday, how would you use the DBMS_JOB package to schedule the
13. Assuming today is Monday, how would you use the DBMS_JOB package to schedule the
execution of a given procedure owned by SCOTT to start Wednesday at 9AM and to run
execution of a given procedure owned by SCOTT to start Wednesday at 9AM and to run
subsequently every other day at
subsequently every other day at
2AM.
2AM.
Ans -
Ans - dbms_job.submit(
dbms_job.submit(
:jobno, 'statspack.snap;',
:jobno, 'statspack.snap;',
trunc(sysdate)+9/24,
trunc(sysdate)+9/24,
'trunc(SYSDATE+1/24,''HH'')',
'trunc(SYSDATE+1/24,''HH'')',
TRUE,
TRUE,
:instno);
:instno);
14. How would you edit
14. How would you edit your CRONTAB to schedule the running of /test/test.sh to run
your CRONTAB to schedule the running of /test/test.sh to run every other
every other
day at 2PM?
day at 2PM?
Ans -
Ans - Use vi to edit Crontab file append a line on
Use vi to edit Crontab file append a line on the file
the file
00 2 * *
00 2 * * * /test/test.sh
* /test/test.sh
15. What do the
15. What do the 9i dbms_standard.s
9i dbms_standard.sql_txt() and
ql_txt() and
dbms_standard.sql_text() procedures do?
dbms_standard.sql_text() procedures do?
Ans -
Ans - DBMS_STAN
DBMS_STANDARD package provides language
DARD package provides language facilities that help your
facilities that help your application interact
application interact
with Oracle.
with Oracle.
Function sql_txt (sql_text out
Function sql_txt (sql_text out ora_name_list_t) return binary_integer;
ora_name_list_t) return binary_integer;
16. In which dictionary table or view would you look to determine at which time a snapshot or
16. In which dictionary table or view would you look to determine at which time a snapshot or
MVIEW last successfully refreshed?
MVIEW last successfully refreshed?
17. How would you best determine why your MVIEW couldn't FAST REFRESH?
17. How would you best determine why your MVIEW couldn't FAST REFRESH?
Ans -
Ans - from dba_mview_refresh_times
from dba_mview_refresh_times
18. How does
18. How does propagatio
propagation differ
n differ between Advanced Replication and Snapshot Replication
between Advanced Replication and Snapshot Replication
(readonly)?
(readonly)?
19. Which dictionary view(s) would you first look at
19. Which dictionary view(s) would you first look at to
to
understand or get a high-level idea of
understand or get a high-level idea of a given Advanced Replication environmen
a given Advanced Replication environment?
t?
Ans -
Ans - dba_repcatlog ; dba_repsites_new ; dba_repextensions
dba_repcatlog ; dba_repsites_new ; dba_repextensions
20. How would you begin to
20. How would you begin to troubleshoo
troubleshoot an ORA-3113 error?
t an ORA-3113 error?
Ans – This is
Ans – This is End of File Communication ERROR , check the sga Memory at OS , increase it.
End of File Communication ERROR , check the sga Memory at OS , increase it.
21. Which dictionary tables and/or views would you look at
21. Which dictionary tables and/or views would you look at to diagnose a locking issue?
to diagnose a locking issue?
2
2
Ans - sys.v_$lock, sys.v_$session sys.obj$ , sys.user$ ,
sys.v_$process
22. An automatic job running via DBMS_JOB has failed. Knowing only that "it's failed", how do you
approach troubleshooting this issue?
Ans – check with dba_jobs and reschedule the job again.
23. How would you extract DDL of a table without using a GUI tool?
Ans - SELECT dbms_metadata.get_ddl('TABLE','DEPT','SCOTT') FROM DUAL;
24. You're getting high "busy buffer waits" - how can you find what's causing it?
Ans – check with STATSPACK then check for which section cause this data blocks, segment header,
free list block , Undo header.
25. What query tells you how much space a tablespace named "test" is taking up, and how much
space is remaining?
Ans – we can check it from dba_free_space.
26. Database is hung. Old and new user connections alike hang on impact. What do you do? Your
SYS SQLPLUS session IS able to connect.
Ans _ check the Alart.log file for error and check the memory of SGA.
27. Database crashes. Corruption is found scattered among the file system neither of your doing nor
of Oracle's. What database recovery options are available? Database is in archive log mode.
Ans – Complete Database Recovery.
28. Illustrate how to determine the amount of physical CPUs a Unix Box possesses (LINUX and/or
Solaris).
Ans – TOP command in Linux / VMSTAT 5 on Solaris
29. How do you increase the OS limitation for open files (LINUX and/or Solaris)?
Ans - echo 65536 > /proc/sys/fs/file-
30. Provide an example of a shell script which logs into SQLPLUS as SYS, determines the current
date, changes the date format to include minutes & seconds, issues a drop table command, displays
the date again, and finally exits.
31. Explain how you would restore a database using RMAN to Point in Time?
32. How does Oracle guarantee data integrity of data changes?
Ans – Using Constraints
33. Which environment variables are absolutely critical in order to run the OUI?
Ans - On UNIX: Oracle_Home , Path , ORA_NLS33 AND LD_LIBRARY_PATH
34. What SQL query from v$session can you run to show how many sessions are logged in as a
particular user account?
Ans – select count(*) from v$session , v$process
35. Why does Oracle not permit the use of PCTUSED with indexes?
Ans - This is similar to the setting for PCTUSED on Oracle indexes. Oracle doesn’t allow
you to set PCTUSED on an index because it has the ability to tell the optimal time to
relink the data block onto the freelist chain. Here’s what happens if you try to specify
PCTUSED for an index:
36. What would you use to improve performance on an insert statement that places millions of rows
into that table?
Ans – Disable all the constraints and drop the indexes.
3
37. What would you do with an "in-doubt" distributed transaction?
38. What are the commands you'd issue to show the explain plan for "select * from dual"?
39. In what script is "snap$" created? In what script is
the "scott/tiger" schema created?
40. If you're unsure in which script a sys or system-owned object is created, but you know it's in a
script from a specific directory, what UNIX command from that directory structure can you run to
find your answer?
Ans – pwd , find
41. How would you configure your networking files to connect to a database by the name of DSS
which resides in domain icallinc.com?
Ans - In tnsnames use host=DSS.icallinc.com
42. You create a private database link <link name> and upon
connection, fails with: ORA-2085: <Link name> connects to <fully qualified remote db name>.
What is the problem? How would you go about resolving this error?
Ans – check the Tnsnames.ora file for the correct entry
43. I have my backup RMAN script called "backup_rman.sh". I am on the target database. My
catalog username/password is rman/rman. My catalog db is called rman. How would you run this
shell script from the O/S such that it would run as a background process?
Ans - backup_rman.sh >&1&
44. Explain the concept of the DUAL table.
Ans – this is a system Table which has one column.
45. What are the ways tablespaces can be managed and how do they differ?
Ans - 2 ways Locally Managed or Managed in the dictionary
Locally-managed tablespaces have the following advantages over dictionary-managed
tablespaces:
Local management of extents avoids recursive space management operations, which can occur 
in dictionary-managed tablespaces if consuming or releasing space in an extent results in another 
operation that consumes or releases space in a rollback segment or data dictionary table.
Local management of extents automatically tracks adjacent free space, eliminating the need to
coalesce free extents.
46. From the database level, how can you tell under which time zone a database is operating?
Ans - select DBTIMEZONE from dual;
47. What's the benefit of "dbms_stats" over "analyze"?
Ans - Starting with the introduction of the dbms_stats package, Oracle provides a simple way for 
the Oracle professional to collect statistics for the CBO. The old-fashioned analyze table and
dbms_utility methods for generating CBO statistics are obsolete and somewhat dangerous to
SQL performance because they don't always capture high-quality information about tables and
indexes. The CBO uses object statistics to choose the best execution plan for all SQL
statements.
48. Typically, where is the conventional directory structure chosen for Oracle binaries to reside?
Ans – OracleHomebin
49. You have found corruption in a tablespace that contains static tables that are part of a database
that is in NOARCHIVE log mode. How would you restore the tablespace without losing new data in
the other tablespaces?
50. How do you recover a datafile that has not been physically been backed up since its creation
and has been deleted. Provide syntax example.
4
Another Set of Questions:
1. Data pump Advantage & Architecture.
Ans - New utilities in Oracle Database 10
 g take performance and versatility to new
levels. New import and export features introduced in Oracle Database 10
 g 
, called Oracle
Data Pump, represent a radical departure from the client/server approach to which
database users have grown accustomed over the past several generations of Oracle
Database. The server now runs export and import jobs. You can load or unload massive
amounts of data quickly using parallelization, and you can adjust the degree of 
 parallelism on the fly. Export and import jobs are now restartable, so a failure doesn't
necessarily mean starting over. The API is exposed and easy to use; it's simple to create
an import or export job from PL/SQL. And once started, such jobs run in the background,
 but you can check status and make modifications, from anywhere, using the client
utilities.
Describing the Oracle Export and Import utilities as slow is like saying the Titanic sprung
a small leak. Stories of Export and Import executions running for hours (and sometime
days) are commonplace. Oracle has finally created a new data movement utility, called
Data Pump, to increase the performance of data transfers. Oracle states that Data Pump’s
 performance on data retrieval is 60% faster than Export and 15 to 20 times faster on data
input than Import. In addition, Oracle states that Data Pump is able to take advantage of 
 parallel processing to increase performance. Hopefully, this will alleviate the
 performance issues related to transferring data between Oracle databases.
Architecture
Before Oracle Database 10
 g 
, (Oracle7 through Oracle9i) the import and export utilities
ran as clients and did the bulk of the work. Data being exported was read by the database
instance, passed over the connection to the export client, and then written to disk. All the
data was single-threaded through the one export process. Data volumes today are often
magnitudes larger than when this architecture was first put in place, making that single
export process a bottleneck because performance of an export job is limited by the
throughput that the export utility can sustain.
With Oracle Database 10
 g and the new Data Pump architecture, all the work is now done
 by the database instance, which can parallelize the work in two ways: by creating
multiple Data Pump worker-processes to read/write data being exported/imported, and by
creating parallel I/O server processes to more quickly SELECT or INSERT that data. Gone
is the single-process bottleneck.
2. What are the new parameters in Oracle10g.
Ans – db_recovery_file_dest
Db_unique_name
Sga_target
5
Skip_unusable_indexes
3. Physical Standby Database Vs Logical Standby Database.
Physical Standby Databases
A physical standby database is physically identical to the primary database, with on-
disk database structures that are identical to the primary database on a block-for-
block basis. The database schema, including indexes, must be the same.
Data Guard maintains a physical standby database by performing managed recovery
operations. When it is not performing recovery operations, a physical standby
database can be open for read-only operations.
* Managed recovery
The physical standby database is maintained by applying the archived redo logs on
the standby system using the Oracle recovery mechanism. The recovery operation
applies changes block-for-block using the physical row ID. The database cannot be
opened for read or read/write operations while redo data is being applied.
* Open read-only
The physical standby database can be open for read-only operations so that you can
execute queries on the database. While open for read-only operations, the standby
database can continue to receive redo logs but application of the data from the logs
is deferred until the database resumes managed recovery operations.
Although the physical standby database cannot perform both managed recovery and
read-only operations at the same time, you can switch between them. For example,
you can run a physical standby database to perform managed recovery operations,
then open it so applications can perform read-only operations to run reports, and
then change it back to perform managed recovery operations to apply outstanding
archived redo logs. You can repeat this cycle, alternating between managed recovery
and read-only operations, as necessary.
In either case, the physical standby database is available to perform backup
operations. Furthermore, the physical standby database will continue to receive redo
logs even if they are not being applied at that moment.
Benefits of a Physical Standby Database
A physical standby database provides the following benefits:
* Disaster recovery and high availability
A physical standby database enables a robust and efficient disaster recovery and
high availability solution. Easy-to-manage switchover and failover capabilities allow
easy role reversals between primary and physical standby databases, minimizing the
downtime of the primary database for planned and unplanned outages.
* Data protection
Using a physical standby database, Data Guard can ensure no data loss, even in the
6
face of unforeseen disasters. A physical standby database supports all datatypes,
and DDL and DML operations that the primary can support. It also provides
safeguard against data corruptions and user errors. Storage level physical
corruptions on the primary database do not propagate to the standby database.
Similarly, logical corruptions or user errors that cause the primary database to be
permanently damaged can be resolved. Finally, the redo data is validated when it is
applied to the standby database.
* Reduction in primary database workload
Oracle Recovery Manager (RMAN) can use physical standby databases to off-load
backups from the primary database saving valuable CPU and I/O cycles. The physical
standby database can also be opened in read-only mode to perform reporting and
queries.
* Performance
The redo apply technology used by the physical standby database applies changes
using low-level recovery mechanisms, which bypass all SQL level code layers and
therefore is the most efficient mechanism for applying changes. This makes the redo
apply technology a highly efficient mechanism to propagate changes among
databases.
Logical Standby Databases
A logical standby database is initially created as an identical copy of the primary
database, but it later can be altered to have a different structure. The logical standby
database is updated by applying SQL statements. The logical standby database uses
LogMiner technology to convert the log information received from the primary database
into SQL statements.This allows users to access the standby database for queries and
reporting purposes at any time. Thus, the logical standby database can be used
concurrently for data protection and reporting operations.
Data Guard automatically applies archived redo log information to the logical standby
database by transforming data in the redo logs into SQL statements and then
executing the SQL statements on the logical standby database. Because the logical
standby database is updated using SQL statements, it must remain open. Although
the logical standby database is open for read/write operations, its target tables for
the regenerated SQL are available only for read-only operations. While those tables
are being updated, they can be used simultaneously for other tasks such as
reporting, summations, and queries. Moreover, these tasks can be optimized by
creating additional indexes and materialized views on the maintained tables.
A logical standby database has some restrictions on datatypes, types of tables, and
types of data definition language (DDL) and data manipulation language (DML)
operations. Unsupported datatypes and tables are described in more detail in Section
4.1.4.
Benefits of a Logical Standby Database
A logical standby database provides similar disaster recovery, high availability, and
data protection benefits as a physical standby database. It also provides the
7
following specialized benefits:
* Efficient use of standby hardware resources
A logical standby database can be used for other business purposes in addition to
disaster recovery requirements. It can host additional databases schemas beyond
the ones that are protected in a Data Guard configuration, and users can perform
normal DDL or DML operations on those schemas any time. Because the logical
standby tables that are protected by Data Guard can be stored in a different physical
layout than on the primary database, additional indexes and materialized views can
be created to improve query performance and suit specific business requirements.
* Reduction in primary database workload
A logical standby database can remain open at the same time its tables are updated
from the primary database, and those tables are simultaneously available for read
access. This makes a logical standby database an excellent choice to do queries,
summations, and reporting activities, thereby off-loading the primary database from
those tasks and saving valuable CPU and I/O cycles.
you cannot have DataGuard with Oracle SE. Either you upgrade to EE or with or
without DataGuard (Enterprise Edition), you can implement manual (user-managed)
recovery for a physical standby. This means write your own scripts to copy archived
redo logs to the standby site and then recover the standby database using them.
This would only simulate "maximum performance" mode.
"maximum availability mode" and "open read only for reporting" are conflicting
goals. If you want to roll forward your physical standby manually say, once every 24
hours, and then open it for read-only reporting each day, that is very reasonable and
achievable with Standard Edition (assuming you can write good scripts).
4. Lost 1 table 2 days back how to recover that table explain.
Ans - There could be 4 Option
1. import the table from the dump file.
2. Recover from the Flash Recovery
3. Recover database Until time
4. Recover TSPITR
Case 1 : The current time is 12 p.m. on 9-Dec-97. Your training DBA just told you he dropped the
employee (EMP) table. The table was dropped around 11:45 a.m. Database activity is minimal because
most staff are currently in a meeting. The table must be recovered.
Steps Explanation and Commands
1 If the database is open, shut it down using either the “normal” or “immediate” options.
SVRMGR> Shutdown immediate
2 Restore all datafiles from backup (the most recent if possible):
$ cp /disk1/backup/*.dbf /disk1/data/
3 Mount the database.
SVRMGR> Startup mount
4 Recover the database:
SVRMGR> recover database until time ‘1997-12-09:11:44:00’;
5 To synchronize datafiles with control files and redo logs, open data-base using “resetlogs” option:
SVRMGR> alter database open resetlogs;
6 Perform a full database backup.
7 When recovery is successful and the backup has completed, notify users that the database is
8
available for use, and any data entered after the recovery time (11:44 a.m.) will need to be
reentered.
5. How to check / synchronize Primary Database with Standby database. (views)
Ans - You can verify archive logs and SCN’s on primary and standby databases
by comparing results for the two following queries.
Use this query to verify Log Apply services are functioning properly.
When APPLIED_SCN and NEWEST_SCN values are equal all available
changes are applied. If APPLIED_SCN is less than NEWEST_SCN then SQL
 Apply is currently not working. Obviously we can check archives on both
databases. On the primary run this query:
On the standby run this query:
This query can also be used to verify archives on the standby database and
Primary database you can run this query on both the servers.
6. What are the Modes of Materialize views?
Ans- In Oracle9i, if you specify REFRESH FAST for a single-table aggregate
materialized view, you must have created a materialized view log for the underlying
table, or the refresh command will fail. When creating a materialized view, you have the
option of specifying whether the refresh occurs manually (ON DEMAND) or 
automatically (ON COMMIT, DBMS_JOB). To use the fast warehouse refresh facility,
you must specify the ON DEMAND mode. To refresh the materialized view, call one of 
the procedures in DBMS_MVIEW.
7. Which permanent data file which store uncommitted data?
Ans - Uncommitted Data on the Data Files
If the user's server process is unable to find a free data buffer, DBWR is notified to flush
a section of changed data buffers to their corresponding data files. The section of data
 buffers being flushed may contain both committed and uncommitted changes.
This could result in Oracle having uncommitted and committed data blocks on the data
files. Oracle, for performance reasons, will not check each block in the section being
flushed to see if it contains uncommitted data. Oracle wants to write that section as
quickly as possible.
9
A key point is that before this "panic flush" of changed data buffers to disk occurs,
DBWR will signal LGWR to write all before images of uncommitted blocks in the
section being flushed. This process ensures that all before images of uncommitted data
changes can be retrieved from the redo log file during a recovery.
Committed Data Not On the Data Files
When a transaction commits, the server process places a commit record in the log buffer 
and tells LGWR to perform a contiguous write of all the redo log buffer entries up to and
including the commit record to the redo log files (not the data files!).
Oracle is now able to guarantee that the changes will not be lost even if there is an
instance failure. Please note that the flushing of dirty data buffers is performed
independently by DBWR and can occur either before or after the commit. This could
result in Oracle having committed data on the redo log files but not on the data files.
The Synchronization Process
If a failure occurs and the instance terminates abnormally, Oracle must restore the
database to a transaction consistent state just prior to the failure. The database must
remove all uncommitted data from the data files (because of "panic flushes") and replay
all changes committed and recorded in the redo log files but not recorded on the data files
(remember that a commit forces LGWR to flush, not DBWR). Oracle restores the
database to a transaction consistent state using roll forward and roll backward processes.
8. How to convert Dictionary Managed Table space to Locally Managed Table
space.
Ans - Convert between LMT and DMT:
The DBMS_SPACE_ADMIN package allows DBAs to quickly and easily
convert between LMT and DMT mode. Look at these examples:
Example :
SQL> exec dbms_space_admin.Tablespace_Migrate_TO_Local('ts1');
SQL> exec dbms_space_admin.Tablespace_Migrate_FROM_Local('ts2');
9. Control file lost how to recover. You don’t have any backup.
Ans _ Create Control file manually and recover database.
10. What is Data Guard what are the advantages.
Ans - Data Guard Broker
10
Oracle's Data Guard Broker is the management framework that is used to create,
configure, administer and monitor a Data Guard environment. The Data Guard Broker 
 provides the following benefits:
 Simplifies the creation of Data Guard environments by providing
wizards to create and configure physical or logical standby
databases. Data Guard is able to generate all of the files necessary
(parameter, tnsnames.ora, etc.) to establish the connectivity
 between the standby and primary database servers.
 Allows administrators to invoke a failover or switchover operation
with a single command and control complex role changes across
all systems in the configuration. A switchover is a planned transfer 
of control from the primary to the standby while a failover is an
unplanned transfer of control due to some unforeseen event. By
automating activities such as failover and switchover, the
 possibility of errors is reduced.
 Provides performance-monitoring tools to monitor log transport
and log apply times.
 Provides a GUI interface (Data Guard Manager) tool that allows
DBAs to administer a primary /multiple standby configuration with
a simple point-and-click interface.
 Administrators are able to manage all components of the
configuration, including primary and standby servers and
databases, log transport services, and log apply services.
 Is highly integrated with Oracle Enterprise Manager to provide e-
mail and paging capabilities
An Oracle background server process called DMON is started on every site that is
managed by the broker. The DMON process is created when the Data Guard Broker 
monitor is started on the primary or standby database servers. The DMON process is
responsible for interacting with the local instance and the DMON processes running on
the other servers to perform the functions requested by the Data Guard Manager or 
command line interface. The DMON process is also responsible for monitoring the health
of the broker configuration.
DMON maintains a persistent configuration file on all of the servers managed by the
Data Guard Broker framework. The configuration file contains entries that provide details
on all objects in the configuration and their statuses. The broker uses this information to
send information back to the Data Guard Manager, configure and start the site and
database resource objects and control each object's behavior.
11. What is Oracle ASM what are its advantages?
Ans- the advantages of ASM?
11
• Disk Addition—Adding a disk becomes very easy. No downtime is required and
file extents are redistributed automatically.
• I/O Distribution—I/O is spread over all the available disks automatically, without
manual intervention, reducing chances of a hot spot.
• Stripe Width—Striping can be fine grained as in Redo Log Files (128K for faster 
transfer rate) and coarse for datafiles (1MB for transfer of a large number of 
 blocks at one time).
• Buffering—The ASM filesystem is not buffered, making it direct I/O capable by
design.
• Kernelized Asynch I/O—There is no special setup necessary to enable kernelized
asynchronous I/O, without using raw or third-party filesystems such as Veritas
Quick I/O.
• Mirroring—Software mirroring can be set up easily, if hardware mirroring is not
available.
 Automatic load balancing
 Software data redundancy
 Software RAID 1 with double or triple mirrors
 Elimination of fragmentation
 This seems like a bit of a stretch, as fragmentation
may also be eliminated with the use of Locally Managed
Tablespaces, a feature introduced in Oracle 8i.
 Elimination of file management
12. What is Mean Time Recovery (MTTR)?
 Ans _ Fast-Start Time-Based Recovery 
Rather than wait for specific events such as log switches to trigger checkpoints, Oracle9i can be
instructed to use fast-start checkpointing architecture to allow the DBWn processes to periodically
write dirty buffers to disk and incrementally advance the checkpoint position. This results in a
reduced Mean Time To Recovery (MTTR) and a reduction in I/O spikes associated with log
switches.
The FAST_START_MTTR_TARGET initialization parameter is used to specify the number of 
seconds crash recovery should take. Oracle uses this target time to configure the the
FAST_START_IO_TARGET and LOG_CHECKPOINT_INTERVAL parameters to reduce crash
recovery time to a level as close to the target time as possible. The FAST_START_IO_TARGET ,
LOG_CHECKPOINT_INTERVAL and LOG_CHECKPOINT_TIMEOUT parameters should not be set
as they may interfere with the process.
The maximum value for FAST_START_MTTR_TARGET is 3600 (1 hour), with values exceeding
this being rounded down. There is no minimum value, but values that are too low may not be
possible to achieve as this is limited by the low limit of the target number of dirty buffers, which is
1000. Added to this is the time mounting the database will take.
If the value is set too low, then the effective MTTR target will be the best MTTR target the system
can achieve. If the value is set to high, the effective MTTR is estimated based on the whole buffer 
cache being dirty. The ESTIMATED_MTTR column in the V$INSTANCE_RECOVERY view can be
12
used to view the effective MTTR. If the parameter setting, shown by the TARGET_MTTR column,
is consistently different to the effective MTTR it should be adjusted since this means it is set at an
unrealistic value.
Remember that the extra checkpointing required to reduce the crash recovery time may
compromise the system performance. A balance must be reached between general system
performance and crash recovery time. Set FAST_START_MTTR_TARGET to zero to disable fast-
start checkpointing.
The FAST_START_IO_TARGET initialization parameter is used to specify the maximum number 
of dirty blocks in the buffer cache. Its use has been deprecated in favour of the
FAST_START_MTTR_TARGET . In addition the DB_BLOCK_MAX_DIRTY_TARGET parameter has
been removed.
13. If there is High CPU Usage in the server who do you diagnosis and resolve on
Linux / Solaris Box?
Ans- check the OS CPU usage find which process consume the CPU if its oracle
process then find the SQL Statement and tune it.
14.New features of oracle 9i?
15.New features of oracle 10g?
Ans - 1. Data Pump
2. Flashback
3. Automatic Workload Repository (AWR)
Automatic Workload Repository (AWR) defaults to a collection interval
every 30 minutes and collects data that is the foundation for all of the other self-tuning
features. AWR is very much like STATSPACK, especially the level-5 STATSPACK 
collection mechanism where top SQL is collected every hour, based on your rolling
thresholds for high-use SQL. In addition to the SQL, AWR collects detailed run-time
statistics on the top SQL (disk reads, executions, consistent gets) and uses this
information to adjust the rolling collection threshold. This technique ensures that AWR 
always collects the most resource-intensive SQL.
4. Automatic Storage Management(ASM)
The Automatic Storage Management (ASM) feature allows for the automatic
stripe-and-mirror everywhere approach to be used to automatically load balance
the disk I/O subsystem and remove the need for the DBA to specify physical file
locations when allocating a tablespace.
5. Transportable Tablespace
OS file copy is generally much faster than other traditional means of data movement such
as export/import or SQL*Loader. However, in Oracle9i Database and below, a restriction
limits its usefulness to only a few cases in which both the target and source database run
on the same OS platform—you can't transport tablespaces between Solaris and HP-UX,
for example.
In Oracle Database 10
 g 
, this restriction has disappeared: you can now transport
tablespaces between platforms as long as the OS byte orders are identical
13
6. Audit Trail
First, FGA now supports DML statements in addition to selects. These changes
are recorded in the same place, the table FGA_LOG$, and displayed through the
view DBA_FGA_AUDIT_TRAIL. In addition to DMLs, you can now choose to
trigger a trail only if all relevant columns are accessed, or even when a few of 
them are accessed
7. RMAN
Rman enhanced Incremental Backup & Compress Backup set.
16. What is the advantage and disadvantages in Auto extend on and off?
Ans - Another disadvantage that hasn't been mentioned yet is the performance
impact - if a user is inserting rows and fills up the tablespace to the point it has
to extend, then the end user has to incur the cost of waiting for the
file to extend. This is avoided if the DBA anticipates the growth and
manually pre-extends the datafile, or adds another data file to the
tablespace.
17. What are the kernel parameters which are required to change in the time of 
oracle installation?
shmmax = 2147483648 (To verify, execute: cat /proc/sys/kernel/shmmax)
shmmni = 4096 (To verify, execute: cat /proc/sys/kernel/shmmni)
shmall = 2097152 (To verify, execute: cat /proc/sys/kernel/shmall) (for 10g R1)
shmmin = 1 (To verify, execute: ipcs -lm |grep "min seg size")
shmseg = 10 (It's hardcoded in the kernel - the default is much higher)
semmsl = 250 (To verify, execute: cat /proc/sys/kernel/sem | awk '{print
$1}')
semmns = 32000 (To verify, execute: cat /proc/sys/kernel/sem | awk '{print
$2}')
semopm = 100 (To verify, execute: cat /proc/sys/kernel/sem | awk '{print
$3}')
semmni = 128 (To verify, execute: cat /proc/sys/kernel/sem | awk '{print
$4}')
SHMMAX
The SHMMAX parameter is used to define the maximum size (in bytes) for a shared
memory segment and should be set large enough for the largest SGA size. If theSHMMAX
is set incorrectly (too low), it is possible that the Oracle SGA (which is held in shared 
 segments) may be limited in size. An inadequate SHMMAX setting would result in the
following:
ORA-27123: unable to attach to shared memory segment
You can determine the value of SHMMAX by performing the following:
# cat /proc/sys/kernel/shmmax
14
33554432
SHMMNI
We now look at the SHMMNI parameters. This kernel parameter is used to set the
maximum number of shared memory segments system wide. The default value for this
 parameter is 4096. This value is sufficient and typically does not need to be changed.
You can determine the value of SHMMNI by performing the following:
# cat /proc/sys/kernel/shmmni
4096
Semaphores
 Now that we have configured our shared memory settings, it is time to take care of 
configuring our semaphores. A semaphore can be thought of as a counter that is used to
control access to a shared resource. Semaphores provide low level synchronization
 between processes (or threads within a process) so that only one process (or thread) has
access to the shared segment, thereby ensureing the integrity of that shared resource.
When an application requests semaphores, it does so using "sets".
18. What are the packages install when you install stats pack.
19. What are the packages install when you install RMAN.
Ans – DBMS_RCVMAN , DBMS_BACKUP_RESTORE, DBMS_RCVCAT
20. What are the things we need to check in stats pack report.
Ans – 1. Instance Efficiency Percentage
a) Buffer Nowait %
b) Buffer Hit%
c) Library Hit%
d) Execute to Parse %
2. Load Profile
a) Redo size
 b) Logical reads
c) Physical reads
d) Physical writes
e) Parse
f) Sorts
3. Top 5 Timed Event
a) CPU Time
 b) Direct path read Temp
c) Control file parallel write
15
d) Control file sequential read
4. Table space I/O Stats
5. Other Waits:
a) Buffer Busy waits
b) DB file Sequential Read
c) DB file scattered read
d) Direct Path Read
e) Enqueue
f) Free Buffer Wait
g) Latch Free
h) Library Cache pin
i) Log file space switch / log buffer event
 j) Log file sync
k) Undo segment statistics
l) Dictionary cache hits and misses
m) Table space IO / File I/O
21. What are the things we need to check in Explain plan report
 Ans - Remove unnecessary large-table full table scans -
Unnecessary full table scans cause a huge amount of unnecessary
I/O, and can drag down an entire database. The tuning expert first
evaluates the SQL based on the number of rows returned by the
query. If the query returns less and 40 percent of the table rows in
an ordered table, or 7 percent of the rows in an unordered table),
the query can be tuned to use an index in lieu of the full table scan.
The most common tuning for unnecessary full table scans is adding
indexes. Standard B-tree indexes can be added to tables, and
 bitmapped and function-based indexes can also eliminate full table
scans. The decision about removing a full table scan should be
 based on a careful examination of the I/O costs of the index scan
vs. the costs of the full table scan, factoring in the multiblock reads
and possible parallel execution. In some cases an unnecessary full
table scan can be forced to use an index by adding an index hint to
the SQL statement.
 Cache small-table full table scans - In cases where a full table
scan is the fastest access method, the tuning professional should
ensure that a dedicated data buffer is available for the rows. In
Oracle7 you can issue alter table xxx cache. In Oracle8 and
 beyond, the small table can be cached by forcing to into the KEEP
 pool.
 Verify optimal index usage - This is especially important for 
improving the speed of queries. Oracle sometimes has a choice of 
indexes, and the tuning professional must examine each index and
16
ensure that Oracle is using the proper index. This also includes the
use of bitmapped and function-based indexes.
 Verify optimal JOIN techniques - Some queries will perform
faster with NESTED LOOP joins, others with HASH joins, while
other favor sort-merge joins.
22. What is the Advantage of RMAN?
Ans – 1. Configure one time
2. Automatic Backup Control file
3. Backup Space Management: Setting Default Retention Policies
4. Improved Archived Log Backup
5. Centrally Maintained Backup Information Catalog
6. Scripting Available
7. Performance Benefit (Multiple Channel allocation parrallel option)
8. No generation of extra redo during open DB backups.
10. Block corruption Detection.
11. Compress Backup ( save disk space)
23. What is PGA_AGGREGATE_TARGET, SHARED_POOL_ADVIVE,
PGA_TARGET_ADVICE, DB_CACHE_ADVICE, MTTR
1. Data Cache advice - The v$db_cache_advice utility show the marginal changes in
 physical data block reads for different sizes of db_cache_size. Bear in mind that the
data from STATSPACK can provide similar data as v$db_cache_advice, and most
Oracle tuning professionals use STATSPACK and v$db_cache_advice to monitor the
effectiveness of their data buffers.
These advisory utilities are extremely important for the Oracle DBA who must adjust
the sizes of the RAM areas to meet current processing demands
Using v$db_cache_advice
The following query can be used to perform the cache advice function, once the
db_cache_advice has been enabled and the database has run long enough to give
representative results.
-- ***********************************************************
-- Display cache advice
-- ***********************************************************
column c1 heading 'Cache Size (meg)' format 999,999,999,999
column c2 heading 'Buffers' format 999,999,999
column c3 heading 'Estd Phys|Read Factor' format 999.90
column c4 heading 'Estd Phys| Reads' format 999,999,999
select
size_for_estimate c1,
17
buffers_for_estimate c2,
estd_physical_read_factor c3,
estd_physical_reads c4
from
v$db_cache_advice
where
name = 'DEFAULT'
and
block_size = (SELECT value FROM V$PARAMETER
WHERE name = 'db_block_size')
and
advice_status = 'ON';
The output from the script is shown below. Note that the values range from 10 percent of 
the current size to double the current size of the db_cache_size.
Estd Phys Estd Phys
Cache Size (meg) Buffers Read Factor Reads
---------------- ------------ ----------- ------------
30 3,802 18.70 192,317,943 <== 10% size
60 7,604 12.83 131,949,536
91 11,406 7.38 75,865,861
121 15,208 4.97 51,111,658
152 19,010 3.64 37,460,786
182 22,812 2.50 25,668,196
212 26,614 1.74 17,850,847
243 30,416 1.33 13,720,149
273 34,218 1.13 11,583,180
304 38,020 1.00 10,282,475 Current Size
334 41,822 .93 9,515,878
364 45,624 .87 8,909,026
395 49,426 .83 8,495,039
424 53,228 .79 8,116,496
456 57,030 .76 7,824,764
486 60,832 .74 7,563,180
517 64,634 .71 7,311,729
547 68,436 .69 7,104,280
577 72,238 .67 6,895,122
608 76,040 .66 6,739,731 <== 2x size
From the above listing we see that increasing the db_cache_size from 304 meg to 334
meg would result in approximately 700,000 less physical reads. This can be plotted as a
1/x function and the exact optimal point computed as the second derivative of the
function:
2. PGA_AGGREGATE_TARGET
Oracle9i has introduced a new advisory utility dubbed
v$pga_target_advice. This utility will show the marginal changes in
optimal, one-pass, and multipass PGA execution for different sizes of 
 pga_aggregate_target 
, ranging from 10% to 200% of the current
value.
SELECT ROUND(pga_target_for_estimate/1024/1024) target_mb,
estd_pga_cache_hit_percentage cache_hit_perc,
18
estd_overalloc_count
FROM v$pga_target_advice;
24. What is the difference between alter system Vs alter database?
Ans - alter database - chages the information n the databse level
alter system - changes the information n the instance level,
Database - Collection of files storing database information
(configuration/datafiles/redo logs etc)
Instance - Processes and memory used to manage a database.
Alter databse; performs operations that affect the database
Alter system; performs operations that affect the instance
25. How to take incremental logical backup?
Ans – EXP INCTYPE= The type of Import being performed: COMPLETE,
CUMULATIVE, and INCREMENTAL.
26. What is Bulk Bind or Collect:
Ans – new feature in PL/SQL for faster processing of DML. ( Array Processing in
Memory)
27. Transportable Tablespace?
Ans - OS file copy is generally much faster than other traditional means of data
movement such as export/import or SQL*Loader. However, in Oracle9i Database and
 below, a restriction limits its usefulness to only a few cases in which both the target and
source database run on the same OS platform—you can't transport tablespaces between
Solaris and HP-UX, for example.
In Oracle Database 10
 g 
, this restriction has disappeared: you can now transport
tablespaces between platforms as long as the OS byte orders are identical
28. When did a table spanned across table spaces?
Ans – A partitioned table can span across multiple tablespaces.
29. What is Database replication / Advance Replication?
Ans - Replication is the process of creating and maintaining replica versions of database objects
(e.g. tables) in a distributed database system. Replication can improve performance and increase
availability of applications because alternate data access options becomes available. For 
example, users can access a local database rather than a remote server to minimize network
traffic. Furthermore, the application can continue to function if parts of the distributed database
are down as replicas of the data might still accessible.
30. What is Database Auditing?
Ans - Traditional Oracle Database auditing options let you track the actions users perform on objects at the
macro level on DML / DDL statements.
19
Implement Dba_audit_trails .
dbms_fga.add_policy
31. What is Database Label security?
32. What is Log miner?
33.
 Ans- The tkprof tool is a tuning tool used to determine cpu and execution times for SQL statements. You
use it by first setting timed_statistics to true in the initialization file and then turning on tracing for either
the entire database via the sql_trace parameter or for the session using the ALTER SESSION command.
Once the trace file is generated you run the tkprof tool against the trace file and then look at the output
from the tkprof tool. This can also be used to generate explain plan output.
34.
When you get excessive contention for the copy latches as shown by the "redo copy" latch hit ratio.
 You can increase copy latches via the initialization parameter LOG_SIMULTANEOUS_COPIES to twice
the number of CPUs on your system.
35.
Buffer busy waits could indicate contention in redo, rollback or data blocks. You need to check the
v$waitstat view to see what areas are causing the problem. The value of the "count" column tells
where the problem is, the "class" column tells you with what. UNDO is rollback segments, DATA is
data base buffers.
20

More Related Content

Similar to qdoc.tips_oracle-dba-interview-questions.pdf

Dba 3+ exp qus
Dba 3+ exp qusDba 3+ exp qus
Dba 3+ exp quskrreddy21
 
Lamp Stack Optimization
Lamp Stack OptimizationLamp Stack Optimization
Lamp Stack OptimizationDave Ross
 
SQL AlwaysON for SharePoint HA/DR on Azure Global Azure Bootcamp 2017 Eisenac...
SQL AlwaysON for SharePoint HA/DR on Azure Global Azure Bootcamp 2017 Eisenac...SQL AlwaysON for SharePoint HA/DR on Azure Global Azure Bootcamp 2017 Eisenac...
SQL AlwaysON for SharePoint HA/DR on Azure Global Azure Bootcamp 2017 Eisenac...Lars Platzdasch
 
Webinar slides: Top 9 Tips for building a stable MySQL Replication environment
Webinar slides: Top 9 Tips for building a stable MySQL Replication environmentWebinar slides: Top 9 Tips for building a stable MySQL Replication environment
Webinar slides: Top 9 Tips for building a stable MySQL Replication environmentSeveralnines
 
SQL Server Alwayson for SharePoint HA/DR Step by Step Guide
SQL Server Alwayson for SharePoint HA/DR Step by Step GuideSQL Server Alwayson for SharePoint HA/DR Step by Step Guide
SQL Server Alwayson for SharePoint HA/DR Step by Step GuideLars Platzdasch
 
Apache Traffic Server
Apache Traffic ServerApache Traffic Server
Apache Traffic Serversupertom
 
Webinar replay: MySQL Query Tuning Trilogy: Query tuning process and tools
Webinar replay: MySQL Query Tuning Trilogy: Query tuning process and toolsWebinar replay: MySQL Query Tuning Trilogy: Query tuning process and tools
Webinar replay: MySQL Query Tuning Trilogy: Query tuning process and toolsSeveralnines
 
Analyze database system using a 3 d method
Analyze database system using a 3 d methodAnalyze database system using a 3 d method
Analyze database system using a 3 d methodAjith Narayanan
 
Flink Forward SF 2017: Malo Deniélou - No shard left behind: Dynamic work re...
Flink Forward SF 2017: Malo Deniélou -  No shard left behind: Dynamic work re...Flink Forward SF 2017: Malo Deniélou -  No shard left behind: Dynamic work re...
Flink Forward SF 2017: Malo Deniélou - No shard left behind: Dynamic work re...Flink Forward
 
Ceph Day Chicago - Ceph Deployment at Target: Best Practices and Lessons Learned
Ceph Day Chicago - Ceph Deployment at Target: Best Practices and Lessons LearnedCeph Day Chicago - Ceph Deployment at Target: Best Practices and Lessons Learned
Ceph Day Chicago - Ceph Deployment at Target: Best Practices and Lessons LearnedCeph Community
 
Built-in-Physical-and-Logical-Replication-in-Postgresql-Firat-Gulec.pptx
Built-in-Physical-and-Logical-Replication-in-Postgresql-Firat-Gulec.pptxBuilt-in-Physical-and-Logical-Replication-in-Postgresql-Firat-Gulec.pptx
Built-in-Physical-and-Logical-Replication-in-Postgresql-Firat-Gulec.pptxnadirpervez2
 
Production Readiness Strategies in an Automated World
Production Readiness Strategies in an Automated WorldProduction Readiness Strategies in an Automated World
Production Readiness Strategies in an Automated WorldSean Chittenden
 
Oracle Database on ACFS: a perfect marriage?
Oracle Database on ACFS: a perfect marriage?Oracle Database on ACFS: a perfect marriage?
Oracle Database on ACFS: a perfect marriage?Ludovico Caldara
 
Cache in API Gateway
Cache in API GatewayCache in API Gateway
Cache in API GatewayGilWon Oh
 
Ceph Deployment at Target: Customer Spotlight
Ceph Deployment at Target: Customer SpotlightCeph Deployment at Target: Customer Spotlight
Ceph Deployment at Target: Customer SpotlightRed_Hat_Storage
 
Ceph Deployment at Target: Customer Spotlight
Ceph Deployment at Target: Customer SpotlightCeph Deployment at Target: Customer Spotlight
Ceph Deployment at Target: Customer SpotlightColleen Corrice
 
How to find what is making your Oracle database slow
How to find what is making your Oracle database slowHow to find what is making your Oracle database slow
How to find what is making your Oracle database slowSolarWinds
 

Similar to qdoc.tips_oracle-dba-interview-questions.pdf (20)

Dba 3+ exp qus
Dba 3+ exp qusDba 3+ exp qus
Dba 3+ exp qus
 
Lamp Stack Optimization
Lamp Stack OptimizationLamp Stack Optimization
Lamp Stack Optimization
 
SQL AlwaysON for SharePoint HA/DR on Azure Global Azure Bootcamp 2017 Eisenac...
SQL AlwaysON for SharePoint HA/DR on Azure Global Azure Bootcamp 2017 Eisenac...SQL AlwaysON for SharePoint HA/DR on Azure Global Azure Bootcamp 2017 Eisenac...
SQL AlwaysON for SharePoint HA/DR on Azure Global Azure Bootcamp 2017 Eisenac...
 
01 oracle architecture
01 oracle architecture01 oracle architecture
01 oracle architecture
 
Webinar slides: Top 9 Tips for building a stable MySQL Replication environment
Webinar slides: Top 9 Tips for building a stable MySQL Replication environmentWebinar slides: Top 9 Tips for building a stable MySQL Replication environment
Webinar slides: Top 9 Tips for building a stable MySQL Replication environment
 
SQL Server Alwayson for SharePoint HA/DR Step by Step Guide
SQL Server Alwayson for SharePoint HA/DR Step by Step GuideSQL Server Alwayson for SharePoint HA/DR Step by Step Guide
SQL Server Alwayson for SharePoint HA/DR Step by Step Guide
 
Apache Traffic Server
Apache Traffic ServerApache Traffic Server
Apache Traffic Server
 
Webinar replay: MySQL Query Tuning Trilogy: Query tuning process and tools
Webinar replay: MySQL Query Tuning Trilogy: Query tuning process and toolsWebinar replay: MySQL Query Tuning Trilogy: Query tuning process and tools
Webinar replay: MySQL Query Tuning Trilogy: Query tuning process and tools
 
Analyze database system using a 3 d method
Analyze database system using a 3 d methodAnalyze database system using a 3 d method
Analyze database system using a 3 d method
 
Data guard
Data guardData guard
Data guard
 
Using AWR for SQL Analysis
Using AWR for SQL AnalysisUsing AWR for SQL Analysis
Using AWR for SQL Analysis
 
Flink Forward SF 2017: Malo Deniélou - No shard left behind: Dynamic work re...
Flink Forward SF 2017: Malo Deniélou -  No shard left behind: Dynamic work re...Flink Forward SF 2017: Malo Deniélou -  No shard left behind: Dynamic work re...
Flink Forward SF 2017: Malo Deniélou - No shard left behind: Dynamic work re...
 
Ceph Day Chicago - Ceph Deployment at Target: Best Practices and Lessons Learned
Ceph Day Chicago - Ceph Deployment at Target: Best Practices and Lessons LearnedCeph Day Chicago - Ceph Deployment at Target: Best Practices and Lessons Learned
Ceph Day Chicago - Ceph Deployment at Target: Best Practices and Lessons Learned
 
Built-in-Physical-and-Logical-Replication-in-Postgresql-Firat-Gulec.pptx
Built-in-Physical-and-Logical-Replication-in-Postgresql-Firat-Gulec.pptxBuilt-in-Physical-and-Logical-Replication-in-Postgresql-Firat-Gulec.pptx
Built-in-Physical-and-Logical-Replication-in-Postgresql-Firat-Gulec.pptx
 
Production Readiness Strategies in an Automated World
Production Readiness Strategies in an Automated WorldProduction Readiness Strategies in an Automated World
Production Readiness Strategies in an Automated World
 
Oracle Database on ACFS: a perfect marriage?
Oracle Database on ACFS: a perfect marriage?Oracle Database on ACFS: a perfect marriage?
Oracle Database on ACFS: a perfect marriage?
 
Cache in API Gateway
Cache in API GatewayCache in API Gateway
Cache in API Gateway
 
Ceph Deployment at Target: Customer Spotlight
Ceph Deployment at Target: Customer SpotlightCeph Deployment at Target: Customer Spotlight
Ceph Deployment at Target: Customer Spotlight
 
Ceph Deployment at Target: Customer Spotlight
Ceph Deployment at Target: Customer SpotlightCeph Deployment at Target: Customer Spotlight
Ceph Deployment at Target: Customer Spotlight
 
How to find what is making your Oracle database slow
How to find what is making your Oracle database slowHow to find what is making your Oracle database slow
How to find what is making your Oracle database slow
 

Recently uploaded

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 

Recently uploaded (20)

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 

qdoc.tips_oracle-dba-interview-questions.pdf

  • 1. Oracle DBA Interview Questions Oracle DBA Interview Questions 1. How many memory layers are in the shared pool? 1. How many memory layers are in the shared pool? Ans - a) library cache Ans - a) library cache b) Dictionary cache b) Dictionary cache c) SQL Area c) SQL Area 2. How do you find out from the RMAN catalog if a particular archive log has been backed-up? 2. How do you find out from the RMAN catalog if a particular archive log has been backed-up? Ans - LIST Ans - LIST BACKUP OF ARCHIVELOG sequence=453; BACKUP OF ARCHIVELOG sequence=453; 3. How can you tell how much space is left 3. How can you tell how much space is left on a given file system and how much space each of the on a given file system and how much space each of the file system's file system's subdirector subdirectories take-up? ies take-up? Ans – df -h Ans – df -h 4. Define the SGA and: 4. Define the SGA and: • How you would configure SGA for a mid-sized OLTP environment? • How you would configure SGA for a mid-sized OLTP environment? • What is involved in tuning the SGA? • What is involved in tuning the SGA? Ans - Generaly SGA will be configured as below. Ans - Generaly SGA will be configured as below. Size is determined based on several factors like following:- Size is determined based on several factors like following:- 1-size of database (small, medium or large) 1-size of database (small, medium or large) 2-whether the application will be OLTP & DSS 2-whether the application will be OLTP & DSS 3-total memory on the server  3-total memory on the server  4-whether you have other applicatiions on the same server for example Oracle ERP 4-whether you have other applicatiions on the same server for example Oracle ERP application server & db may application server & db may be installed on SAME SERVER which require be installed on SAME SERVER which require varying varying memory sizes memory sizes 5-number of users expected to use application on the server  5-number of users expected to use application on the server  6-type of users (super users or light users or both) 6-type of users (super users or light users or both) However, if the DB is dedicated to one server alone, and knowing the size of your DB, However, if the DB is dedicated to one server alone, and knowing the size of your DB, I would take defaults on the install manual & those of DBCA and play with SGA I would take defaults on the install manual & those of DBCA and play with SGA  parameter values in your tuning cycle.  parameter values in your tuning cycle. 7. Type of conn 7. Type of connection of session (dedicated or multithreaded) ection of session (dedicated or multithreaded) For tuning the SGA involve Tuning the all For tuning the SGA involve Tuning the all the component of the SGA ie. the component of the SGA ie. a) Shared pool a) Shared pool b) Buffer Cache b) Buffer Cache c) Large Pool c) Large Pool d) Java Pool d) Java Pool 5. What is the cache hit 5. What is the cache hit ratio, what impact does it have on performance of an Oracle database and ratio, what impact does it have on performance of an Oracle database and what is involved in tuning it? what is involved in tuning it? Ans - a) Ans - a) Library cache HIT ratio by v$librarycache Library cache HIT ratio by v$librarycache b) Dictionary cache HIT ratio by v$rowcache b) Dictionary cache HIT ratio by v$rowcache a) Buffer cache HIT ratio should be more than 90% but at the same time Physical read and a) Buffer cache HIT ratio should be more than 90% but at the same time Physical read and write should also write should also be considered. (V$SYSSTAT) be considered. (V$SYSSTAT) 6. Other than 6. Other than making use of the statspack utility, what would you making use of the statspack utility, what would you check when you are monitoring or check when you are monitoring or running a health check on an Oracle 8i or running a health check on an Oracle 8i or 9i database? 9i database? Ans – a) OEM Ans – a) OEM b) TKProf  b) TKProf  7. How do you tell what your machine name is and what is its 7. How do you tell what your machine name is and what is its IP address? IP address? Ans Ans - - Window Window / / Linux Linux a)ipconfig / ifconfig a)ipconfig / ifconfig b)ner user / hostname b)ner user / hostname 8. How would you go 8. How would you go about verifying the network name that the local_listener is currently using? about verifying the network name that the local_listener is currently using? Ans – LSNRCTL and check the listener.log file Ans – LSNRCTL and check the listener.log file 1 1
  • 2. 9. You have 4 9. You have 4 instances running on the same UNIX instances running on the same UNIX box. How can you determine which shared box. How can you determine which shared memory and semaphores are associated with which memory and semaphores are associated with which instance? instance? Ans - Ans - ipcs | grep oracle ipcs | grep oracle 10. What view(s) do you use 10. What view(s) do you use to associate a user's SQLPLUS to associate a user's SQLPLUS session with his o/s process? session with his o/s process? Ans – v$session and v$process. Ans – v$session and v$process. 11. What is 11. What is the recommende the recommended interval at which d interval at which to run statspack snapshots, and why? to run statspack snapshots, and why? Ans – 1 Hour prefered Ans – 1 Hour prefered 12. What spfile/init.ora file parameter exists to 12. What spfile/init.ora file parameter exists to force the CBO to make the force the CBO to make the execution path of a given execution path of a given statement use an index, even if the index scan may appear to be calculated as more costly? statement use an index, even if the index scan may appear to be calculated as more costly? Ans - Ans - optimizer_index_cost_adj optimizer_index_cost_adj 13. Assuming today is Monday, how would you use the DBMS_JOB package to schedule the 13. Assuming today is Monday, how would you use the DBMS_JOB package to schedule the execution of a given procedure owned by SCOTT to start Wednesday at 9AM and to run execution of a given procedure owned by SCOTT to start Wednesday at 9AM and to run subsequently every other day at subsequently every other day at 2AM. 2AM. Ans - Ans - dbms_job.submit( dbms_job.submit( :jobno, 'statspack.snap;', :jobno, 'statspack.snap;', trunc(sysdate)+9/24, trunc(sysdate)+9/24, 'trunc(SYSDATE+1/24,''HH'')', 'trunc(SYSDATE+1/24,''HH'')', TRUE, TRUE, :instno); :instno); 14. How would you edit 14. How would you edit your CRONTAB to schedule the running of /test/test.sh to run your CRONTAB to schedule the running of /test/test.sh to run every other every other day at 2PM? day at 2PM? Ans - Ans - Use vi to edit Crontab file append a line on Use vi to edit Crontab file append a line on the file the file 00 2 * * 00 2 * * * /test/test.sh * /test/test.sh 15. What do the 15. What do the 9i dbms_standard.s 9i dbms_standard.sql_txt() and ql_txt() and dbms_standard.sql_text() procedures do? dbms_standard.sql_text() procedures do? Ans - Ans - DBMS_STAN DBMS_STANDARD package provides language DARD package provides language facilities that help your facilities that help your application interact application interact with Oracle. with Oracle. Function sql_txt (sql_text out Function sql_txt (sql_text out ora_name_list_t) return binary_integer; ora_name_list_t) return binary_integer; 16. In which dictionary table or view would you look to determine at which time a snapshot or 16. In which dictionary table or view would you look to determine at which time a snapshot or MVIEW last successfully refreshed? MVIEW last successfully refreshed? 17. How would you best determine why your MVIEW couldn't FAST REFRESH? 17. How would you best determine why your MVIEW couldn't FAST REFRESH? Ans - Ans - from dba_mview_refresh_times from dba_mview_refresh_times 18. How does 18. How does propagatio propagation differ n differ between Advanced Replication and Snapshot Replication between Advanced Replication and Snapshot Replication (readonly)? (readonly)? 19. Which dictionary view(s) would you first look at 19. Which dictionary view(s) would you first look at to to understand or get a high-level idea of understand or get a high-level idea of a given Advanced Replication environmen a given Advanced Replication environment? t? Ans - Ans - dba_repcatlog ; dba_repsites_new ; dba_repextensions dba_repcatlog ; dba_repsites_new ; dba_repextensions 20. How would you begin to 20. How would you begin to troubleshoo troubleshoot an ORA-3113 error? t an ORA-3113 error? Ans – This is Ans – This is End of File Communication ERROR , check the sga Memory at OS , increase it. End of File Communication ERROR , check the sga Memory at OS , increase it. 21. Which dictionary tables and/or views would you look at 21. Which dictionary tables and/or views would you look at to diagnose a locking issue? to diagnose a locking issue? 2 2
  • 3. Ans - sys.v_$lock, sys.v_$session sys.obj$ , sys.user$ , sys.v_$process 22. An automatic job running via DBMS_JOB has failed. Knowing only that "it's failed", how do you approach troubleshooting this issue? Ans – check with dba_jobs and reschedule the job again. 23. How would you extract DDL of a table without using a GUI tool? Ans - SELECT dbms_metadata.get_ddl('TABLE','DEPT','SCOTT') FROM DUAL; 24. You're getting high "busy buffer waits" - how can you find what's causing it? Ans – check with STATSPACK then check for which section cause this data blocks, segment header, free list block , Undo header. 25. What query tells you how much space a tablespace named "test" is taking up, and how much space is remaining? Ans – we can check it from dba_free_space. 26. Database is hung. Old and new user connections alike hang on impact. What do you do? Your SYS SQLPLUS session IS able to connect. Ans _ check the Alart.log file for error and check the memory of SGA. 27. Database crashes. Corruption is found scattered among the file system neither of your doing nor of Oracle's. What database recovery options are available? Database is in archive log mode. Ans – Complete Database Recovery. 28. Illustrate how to determine the amount of physical CPUs a Unix Box possesses (LINUX and/or Solaris). Ans – TOP command in Linux / VMSTAT 5 on Solaris 29. How do you increase the OS limitation for open files (LINUX and/or Solaris)? Ans - echo 65536 > /proc/sys/fs/file- 30. Provide an example of a shell script which logs into SQLPLUS as SYS, determines the current date, changes the date format to include minutes & seconds, issues a drop table command, displays the date again, and finally exits. 31. Explain how you would restore a database using RMAN to Point in Time? 32. How does Oracle guarantee data integrity of data changes? Ans – Using Constraints 33. Which environment variables are absolutely critical in order to run the OUI? Ans - On UNIX: Oracle_Home , Path , ORA_NLS33 AND LD_LIBRARY_PATH 34. What SQL query from v$session can you run to show how many sessions are logged in as a particular user account? Ans – select count(*) from v$session , v$process 35. Why does Oracle not permit the use of PCTUSED with indexes? Ans - This is similar to the setting for PCTUSED on Oracle indexes. Oracle doesn’t allow you to set PCTUSED on an index because it has the ability to tell the optimal time to relink the data block onto the freelist chain. Here’s what happens if you try to specify PCTUSED for an index: 36. What would you use to improve performance on an insert statement that places millions of rows into that table? Ans – Disable all the constraints and drop the indexes. 3
  • 4. 37. What would you do with an "in-doubt" distributed transaction? 38. What are the commands you'd issue to show the explain plan for "select * from dual"? 39. In what script is "snap$" created? In what script is the "scott/tiger" schema created? 40. If you're unsure in which script a sys or system-owned object is created, but you know it's in a script from a specific directory, what UNIX command from that directory structure can you run to find your answer? Ans – pwd , find 41. How would you configure your networking files to connect to a database by the name of DSS which resides in domain icallinc.com? Ans - In tnsnames use host=DSS.icallinc.com 42. You create a private database link <link name> and upon connection, fails with: ORA-2085: <Link name> connects to <fully qualified remote db name>. What is the problem? How would you go about resolving this error? Ans – check the Tnsnames.ora file for the correct entry 43. I have my backup RMAN script called "backup_rman.sh". I am on the target database. My catalog username/password is rman/rman. My catalog db is called rman. How would you run this shell script from the O/S such that it would run as a background process? Ans - backup_rman.sh >&1& 44. Explain the concept of the DUAL table. Ans – this is a system Table which has one column. 45. What are the ways tablespaces can be managed and how do they differ? Ans - 2 ways Locally Managed or Managed in the dictionary Locally-managed tablespaces have the following advantages over dictionary-managed tablespaces: Local management of extents avoids recursive space management operations, which can occur  in dictionary-managed tablespaces if consuming or releasing space in an extent results in another  operation that consumes or releases space in a rollback segment or data dictionary table. Local management of extents automatically tracks adjacent free space, eliminating the need to coalesce free extents. 46. From the database level, how can you tell under which time zone a database is operating? Ans - select DBTIMEZONE from dual; 47. What's the benefit of "dbms_stats" over "analyze"? Ans - Starting with the introduction of the dbms_stats package, Oracle provides a simple way for  the Oracle professional to collect statistics for the CBO. The old-fashioned analyze table and dbms_utility methods for generating CBO statistics are obsolete and somewhat dangerous to SQL performance because they don't always capture high-quality information about tables and indexes. The CBO uses object statistics to choose the best execution plan for all SQL statements. 48. Typically, where is the conventional directory structure chosen for Oracle binaries to reside? Ans – OracleHomebin 49. You have found corruption in a tablespace that contains static tables that are part of a database that is in NOARCHIVE log mode. How would you restore the tablespace without losing new data in the other tablespaces? 50. How do you recover a datafile that has not been physically been backed up since its creation and has been deleted. Provide syntax example. 4
  • 5. Another Set of Questions: 1. Data pump Advantage & Architecture. Ans - New utilities in Oracle Database 10  g take performance and versatility to new levels. New import and export features introduced in Oracle Database 10  g  , called Oracle Data Pump, represent a radical departure from the client/server approach to which database users have grown accustomed over the past several generations of Oracle Database. The server now runs export and import jobs. You can load or unload massive amounts of data quickly using parallelization, and you can adjust the degree of   parallelism on the fly. Export and import jobs are now restartable, so a failure doesn't necessarily mean starting over. The API is exposed and easy to use; it's simple to create an import or export job from PL/SQL. And once started, such jobs run in the background,  but you can check status and make modifications, from anywhere, using the client utilities. Describing the Oracle Export and Import utilities as slow is like saying the Titanic sprung a small leak. Stories of Export and Import executions running for hours (and sometime days) are commonplace. Oracle has finally created a new data movement utility, called Data Pump, to increase the performance of data transfers. Oracle states that Data Pump’s  performance on data retrieval is 60% faster than Export and 15 to 20 times faster on data input than Import. In addition, Oracle states that Data Pump is able to take advantage of   parallel processing to increase performance. Hopefully, this will alleviate the  performance issues related to transferring data between Oracle databases. Architecture Before Oracle Database 10  g  , (Oracle7 through Oracle9i) the import and export utilities ran as clients and did the bulk of the work. Data being exported was read by the database instance, passed over the connection to the export client, and then written to disk. All the data was single-threaded through the one export process. Data volumes today are often magnitudes larger than when this architecture was first put in place, making that single export process a bottleneck because performance of an export job is limited by the throughput that the export utility can sustain. With Oracle Database 10  g and the new Data Pump architecture, all the work is now done  by the database instance, which can parallelize the work in two ways: by creating multiple Data Pump worker-processes to read/write data being exported/imported, and by creating parallel I/O server processes to more quickly SELECT or INSERT that data. Gone is the single-process bottleneck. 2. What are the new parameters in Oracle10g. Ans – db_recovery_file_dest Db_unique_name Sga_target 5
  • 6. Skip_unusable_indexes 3. Physical Standby Database Vs Logical Standby Database. Physical Standby Databases A physical standby database is physically identical to the primary database, with on- disk database structures that are identical to the primary database on a block-for- block basis. The database schema, including indexes, must be the same. Data Guard maintains a physical standby database by performing managed recovery operations. When it is not performing recovery operations, a physical standby database can be open for read-only operations. * Managed recovery The physical standby database is maintained by applying the archived redo logs on the standby system using the Oracle recovery mechanism. The recovery operation applies changes block-for-block using the physical row ID. The database cannot be opened for read or read/write operations while redo data is being applied. * Open read-only The physical standby database can be open for read-only operations so that you can execute queries on the database. While open for read-only operations, the standby database can continue to receive redo logs but application of the data from the logs is deferred until the database resumes managed recovery operations. Although the physical standby database cannot perform both managed recovery and read-only operations at the same time, you can switch between them. For example, you can run a physical standby database to perform managed recovery operations, then open it so applications can perform read-only operations to run reports, and then change it back to perform managed recovery operations to apply outstanding archived redo logs. You can repeat this cycle, alternating between managed recovery and read-only operations, as necessary. In either case, the physical standby database is available to perform backup operations. Furthermore, the physical standby database will continue to receive redo logs even if they are not being applied at that moment. Benefits of a Physical Standby Database A physical standby database provides the following benefits: * Disaster recovery and high availability A physical standby database enables a robust and efficient disaster recovery and high availability solution. Easy-to-manage switchover and failover capabilities allow easy role reversals between primary and physical standby databases, minimizing the downtime of the primary database for planned and unplanned outages. * Data protection Using a physical standby database, Data Guard can ensure no data loss, even in the 6
  • 7. face of unforeseen disasters. A physical standby database supports all datatypes, and DDL and DML operations that the primary can support. It also provides safeguard against data corruptions and user errors. Storage level physical corruptions on the primary database do not propagate to the standby database. Similarly, logical corruptions or user errors that cause the primary database to be permanently damaged can be resolved. Finally, the redo data is validated when it is applied to the standby database. * Reduction in primary database workload Oracle Recovery Manager (RMAN) can use physical standby databases to off-load backups from the primary database saving valuable CPU and I/O cycles. The physical standby database can also be opened in read-only mode to perform reporting and queries. * Performance The redo apply technology used by the physical standby database applies changes using low-level recovery mechanisms, which bypass all SQL level code layers and therefore is the most efficient mechanism for applying changes. This makes the redo apply technology a highly efficient mechanism to propagate changes among databases. Logical Standby Databases A logical standby database is initially created as an identical copy of the primary database, but it later can be altered to have a different structure. The logical standby database is updated by applying SQL statements. The logical standby database uses LogMiner technology to convert the log information received from the primary database into SQL statements.This allows users to access the standby database for queries and reporting purposes at any time. Thus, the logical standby database can be used concurrently for data protection and reporting operations. Data Guard automatically applies archived redo log information to the logical standby database by transforming data in the redo logs into SQL statements and then executing the SQL statements on the logical standby database. Because the logical standby database is updated using SQL statements, it must remain open. Although the logical standby database is open for read/write operations, its target tables for the regenerated SQL are available only for read-only operations. While those tables are being updated, they can be used simultaneously for other tasks such as reporting, summations, and queries. Moreover, these tasks can be optimized by creating additional indexes and materialized views on the maintained tables. A logical standby database has some restrictions on datatypes, types of tables, and types of data definition language (DDL) and data manipulation language (DML) operations. Unsupported datatypes and tables are described in more detail in Section 4.1.4. Benefits of a Logical Standby Database A logical standby database provides similar disaster recovery, high availability, and data protection benefits as a physical standby database. It also provides the 7
  • 8. following specialized benefits: * Efficient use of standby hardware resources A logical standby database can be used for other business purposes in addition to disaster recovery requirements. It can host additional databases schemas beyond the ones that are protected in a Data Guard configuration, and users can perform normal DDL or DML operations on those schemas any time. Because the logical standby tables that are protected by Data Guard can be stored in a different physical layout than on the primary database, additional indexes and materialized views can be created to improve query performance and suit specific business requirements. * Reduction in primary database workload A logical standby database can remain open at the same time its tables are updated from the primary database, and those tables are simultaneously available for read access. This makes a logical standby database an excellent choice to do queries, summations, and reporting activities, thereby off-loading the primary database from those tasks and saving valuable CPU and I/O cycles. you cannot have DataGuard with Oracle SE. Either you upgrade to EE or with or without DataGuard (Enterprise Edition), you can implement manual (user-managed) recovery for a physical standby. This means write your own scripts to copy archived redo logs to the standby site and then recover the standby database using them. This would only simulate "maximum performance" mode. "maximum availability mode" and "open read only for reporting" are conflicting goals. If you want to roll forward your physical standby manually say, once every 24 hours, and then open it for read-only reporting each day, that is very reasonable and achievable with Standard Edition (assuming you can write good scripts). 4. Lost 1 table 2 days back how to recover that table explain. Ans - There could be 4 Option 1. import the table from the dump file. 2. Recover from the Flash Recovery 3. Recover database Until time 4. Recover TSPITR Case 1 : The current time is 12 p.m. on 9-Dec-97. Your training DBA just told you he dropped the employee (EMP) table. The table was dropped around 11:45 a.m. Database activity is minimal because most staff are currently in a meeting. The table must be recovered. Steps Explanation and Commands 1 If the database is open, shut it down using either the “normal” or “immediate” options. SVRMGR> Shutdown immediate 2 Restore all datafiles from backup (the most recent if possible): $ cp /disk1/backup/*.dbf /disk1/data/ 3 Mount the database. SVRMGR> Startup mount 4 Recover the database: SVRMGR> recover database until time ‘1997-12-09:11:44:00’; 5 To synchronize datafiles with control files and redo logs, open data-base using “resetlogs” option: SVRMGR> alter database open resetlogs; 6 Perform a full database backup. 7 When recovery is successful and the backup has completed, notify users that the database is 8
  • 9. available for use, and any data entered after the recovery time (11:44 a.m.) will need to be reentered. 5. How to check / synchronize Primary Database with Standby database. (views) Ans - You can verify archive logs and SCN’s on primary and standby databases by comparing results for the two following queries. Use this query to verify Log Apply services are functioning properly. When APPLIED_SCN and NEWEST_SCN values are equal all available changes are applied. If APPLIED_SCN is less than NEWEST_SCN then SQL  Apply is currently not working. Obviously we can check archives on both databases. On the primary run this query: On the standby run this query: This query can also be used to verify archives on the standby database and Primary database you can run this query on both the servers. 6. What are the Modes of Materialize views? Ans- In Oracle9i, if you specify REFRESH FAST for a single-table aggregate materialized view, you must have created a materialized view log for the underlying table, or the refresh command will fail. When creating a materialized view, you have the option of specifying whether the refresh occurs manually (ON DEMAND) or  automatically (ON COMMIT, DBMS_JOB). To use the fast warehouse refresh facility, you must specify the ON DEMAND mode. To refresh the materialized view, call one of  the procedures in DBMS_MVIEW. 7. Which permanent data file which store uncommitted data? Ans - Uncommitted Data on the Data Files If the user's server process is unable to find a free data buffer, DBWR is notified to flush a section of changed data buffers to their corresponding data files. The section of data  buffers being flushed may contain both committed and uncommitted changes. This could result in Oracle having uncommitted and committed data blocks on the data files. Oracle, for performance reasons, will not check each block in the section being flushed to see if it contains uncommitted data. Oracle wants to write that section as quickly as possible. 9
  • 10. A key point is that before this "panic flush" of changed data buffers to disk occurs, DBWR will signal LGWR to write all before images of uncommitted blocks in the section being flushed. This process ensures that all before images of uncommitted data changes can be retrieved from the redo log file during a recovery. Committed Data Not On the Data Files When a transaction commits, the server process places a commit record in the log buffer  and tells LGWR to perform a contiguous write of all the redo log buffer entries up to and including the commit record to the redo log files (not the data files!). Oracle is now able to guarantee that the changes will not be lost even if there is an instance failure. Please note that the flushing of dirty data buffers is performed independently by DBWR and can occur either before or after the commit. This could result in Oracle having committed data on the redo log files but not on the data files. The Synchronization Process If a failure occurs and the instance terminates abnormally, Oracle must restore the database to a transaction consistent state just prior to the failure. The database must remove all uncommitted data from the data files (because of "panic flushes") and replay all changes committed and recorded in the redo log files but not recorded on the data files (remember that a commit forces LGWR to flush, not DBWR). Oracle restores the database to a transaction consistent state using roll forward and roll backward processes. 8. How to convert Dictionary Managed Table space to Locally Managed Table space. Ans - Convert between LMT and DMT: The DBMS_SPACE_ADMIN package allows DBAs to quickly and easily convert between LMT and DMT mode. Look at these examples: Example : SQL> exec dbms_space_admin.Tablespace_Migrate_TO_Local('ts1'); SQL> exec dbms_space_admin.Tablespace_Migrate_FROM_Local('ts2'); 9. Control file lost how to recover. You don’t have any backup. Ans _ Create Control file manually and recover database. 10. What is Data Guard what are the advantages. Ans - Data Guard Broker 10
  • 11. Oracle's Data Guard Broker is the management framework that is used to create, configure, administer and monitor a Data Guard environment. The Data Guard Broker   provides the following benefits:  Simplifies the creation of Data Guard environments by providing wizards to create and configure physical or logical standby databases. Data Guard is able to generate all of the files necessary (parameter, tnsnames.ora, etc.) to establish the connectivity  between the standby and primary database servers.  Allows administrators to invoke a failover or switchover operation with a single command and control complex role changes across all systems in the configuration. A switchover is a planned transfer  of control from the primary to the standby while a failover is an unplanned transfer of control due to some unforeseen event. By automating activities such as failover and switchover, the  possibility of errors is reduced.  Provides performance-monitoring tools to monitor log transport and log apply times.  Provides a GUI interface (Data Guard Manager) tool that allows DBAs to administer a primary /multiple standby configuration with a simple point-and-click interface.  Administrators are able to manage all components of the configuration, including primary and standby servers and databases, log transport services, and log apply services.  Is highly integrated with Oracle Enterprise Manager to provide e- mail and paging capabilities An Oracle background server process called DMON is started on every site that is managed by the broker. The DMON process is created when the Data Guard Broker  monitor is started on the primary or standby database servers. The DMON process is responsible for interacting with the local instance and the DMON processes running on the other servers to perform the functions requested by the Data Guard Manager or  command line interface. The DMON process is also responsible for monitoring the health of the broker configuration. DMON maintains a persistent configuration file on all of the servers managed by the Data Guard Broker framework. The configuration file contains entries that provide details on all objects in the configuration and their statuses. The broker uses this information to send information back to the Data Guard Manager, configure and start the site and database resource objects and control each object's behavior. 11. What is Oracle ASM what are its advantages? Ans- the advantages of ASM? 11
  • 12. • Disk Addition—Adding a disk becomes very easy. No downtime is required and file extents are redistributed automatically. • I/O Distribution—I/O is spread over all the available disks automatically, without manual intervention, reducing chances of a hot spot. • Stripe Width—Striping can be fine grained as in Redo Log Files (128K for faster  transfer rate) and coarse for datafiles (1MB for transfer of a large number of   blocks at one time). • Buffering—The ASM filesystem is not buffered, making it direct I/O capable by design. • Kernelized Asynch I/O—There is no special setup necessary to enable kernelized asynchronous I/O, without using raw or third-party filesystems such as Veritas Quick I/O. • Mirroring—Software mirroring can be set up easily, if hardware mirroring is not available.  Automatic load balancing  Software data redundancy  Software RAID 1 with double or triple mirrors  Elimination of fragmentation  This seems like a bit of a stretch, as fragmentation may also be eliminated with the use of Locally Managed Tablespaces, a feature introduced in Oracle 8i.  Elimination of file management 12. What is Mean Time Recovery (MTTR)?  Ans _ Fast-Start Time-Based Recovery  Rather than wait for specific events such as log switches to trigger checkpoints, Oracle9i can be instructed to use fast-start checkpointing architecture to allow the DBWn processes to periodically write dirty buffers to disk and incrementally advance the checkpoint position. This results in a reduced Mean Time To Recovery (MTTR) and a reduction in I/O spikes associated with log switches. The FAST_START_MTTR_TARGET initialization parameter is used to specify the number of  seconds crash recovery should take. Oracle uses this target time to configure the the FAST_START_IO_TARGET and LOG_CHECKPOINT_INTERVAL parameters to reduce crash recovery time to a level as close to the target time as possible. The FAST_START_IO_TARGET , LOG_CHECKPOINT_INTERVAL and LOG_CHECKPOINT_TIMEOUT parameters should not be set as they may interfere with the process. The maximum value for FAST_START_MTTR_TARGET is 3600 (1 hour), with values exceeding this being rounded down. There is no minimum value, but values that are too low may not be possible to achieve as this is limited by the low limit of the target number of dirty buffers, which is 1000. Added to this is the time mounting the database will take. If the value is set too low, then the effective MTTR target will be the best MTTR target the system can achieve. If the value is set to high, the effective MTTR is estimated based on the whole buffer  cache being dirty. The ESTIMATED_MTTR column in the V$INSTANCE_RECOVERY view can be 12
  • 13. used to view the effective MTTR. If the parameter setting, shown by the TARGET_MTTR column, is consistently different to the effective MTTR it should be adjusted since this means it is set at an unrealistic value. Remember that the extra checkpointing required to reduce the crash recovery time may compromise the system performance. A balance must be reached between general system performance and crash recovery time. Set FAST_START_MTTR_TARGET to zero to disable fast- start checkpointing. The FAST_START_IO_TARGET initialization parameter is used to specify the maximum number  of dirty blocks in the buffer cache. Its use has been deprecated in favour of the FAST_START_MTTR_TARGET . In addition the DB_BLOCK_MAX_DIRTY_TARGET parameter has been removed. 13. If there is High CPU Usage in the server who do you diagnosis and resolve on Linux / Solaris Box? Ans- check the OS CPU usage find which process consume the CPU if its oracle process then find the SQL Statement and tune it. 14.New features of oracle 9i? 15.New features of oracle 10g? Ans - 1. Data Pump 2. Flashback 3. Automatic Workload Repository (AWR) Automatic Workload Repository (AWR) defaults to a collection interval every 30 minutes and collects data that is the foundation for all of the other self-tuning features. AWR is very much like STATSPACK, especially the level-5 STATSPACK  collection mechanism where top SQL is collected every hour, based on your rolling thresholds for high-use SQL. In addition to the SQL, AWR collects detailed run-time statistics on the top SQL (disk reads, executions, consistent gets) and uses this information to adjust the rolling collection threshold. This technique ensures that AWR  always collects the most resource-intensive SQL. 4. Automatic Storage Management(ASM) The Automatic Storage Management (ASM) feature allows for the automatic stripe-and-mirror everywhere approach to be used to automatically load balance the disk I/O subsystem and remove the need for the DBA to specify physical file locations when allocating a tablespace. 5. Transportable Tablespace OS file copy is generally much faster than other traditional means of data movement such as export/import or SQL*Loader. However, in Oracle9i Database and below, a restriction limits its usefulness to only a few cases in which both the target and source database run on the same OS platform—you can't transport tablespaces between Solaris and HP-UX, for example. In Oracle Database 10  g  , this restriction has disappeared: you can now transport tablespaces between platforms as long as the OS byte orders are identical 13
  • 14. 6. Audit Trail First, FGA now supports DML statements in addition to selects. These changes are recorded in the same place, the table FGA_LOG$, and displayed through the view DBA_FGA_AUDIT_TRAIL. In addition to DMLs, you can now choose to trigger a trail only if all relevant columns are accessed, or even when a few of  them are accessed 7. RMAN Rman enhanced Incremental Backup & Compress Backup set. 16. What is the advantage and disadvantages in Auto extend on and off? Ans - Another disadvantage that hasn't been mentioned yet is the performance impact - if a user is inserting rows and fills up the tablespace to the point it has to extend, then the end user has to incur the cost of waiting for the file to extend. This is avoided if the DBA anticipates the growth and manually pre-extends the datafile, or adds another data file to the tablespace. 17. What are the kernel parameters which are required to change in the time of  oracle installation? shmmax = 2147483648 (To verify, execute: cat /proc/sys/kernel/shmmax) shmmni = 4096 (To verify, execute: cat /proc/sys/kernel/shmmni) shmall = 2097152 (To verify, execute: cat /proc/sys/kernel/shmall) (for 10g R1) shmmin = 1 (To verify, execute: ipcs -lm |grep "min seg size") shmseg = 10 (It's hardcoded in the kernel - the default is much higher) semmsl = 250 (To verify, execute: cat /proc/sys/kernel/sem | awk '{print $1}') semmns = 32000 (To verify, execute: cat /proc/sys/kernel/sem | awk '{print $2}') semopm = 100 (To verify, execute: cat /proc/sys/kernel/sem | awk '{print $3}') semmni = 128 (To verify, execute: cat /proc/sys/kernel/sem | awk '{print $4}') SHMMAX The SHMMAX parameter is used to define the maximum size (in bytes) for a shared memory segment and should be set large enough for the largest SGA size. If theSHMMAX is set incorrectly (too low), it is possible that the Oracle SGA (which is held in shared   segments) may be limited in size. An inadequate SHMMAX setting would result in the following: ORA-27123: unable to attach to shared memory segment You can determine the value of SHMMAX by performing the following: # cat /proc/sys/kernel/shmmax 14
  • 15. 33554432 SHMMNI We now look at the SHMMNI parameters. This kernel parameter is used to set the maximum number of shared memory segments system wide. The default value for this  parameter is 4096. This value is sufficient and typically does not need to be changed. You can determine the value of SHMMNI by performing the following: # cat /proc/sys/kernel/shmmni 4096 Semaphores  Now that we have configured our shared memory settings, it is time to take care of  configuring our semaphores. A semaphore can be thought of as a counter that is used to control access to a shared resource. Semaphores provide low level synchronization  between processes (or threads within a process) so that only one process (or thread) has access to the shared segment, thereby ensureing the integrity of that shared resource. When an application requests semaphores, it does so using "sets". 18. What are the packages install when you install stats pack. 19. What are the packages install when you install RMAN. Ans – DBMS_RCVMAN , DBMS_BACKUP_RESTORE, DBMS_RCVCAT 20. What are the things we need to check in stats pack report. Ans – 1. Instance Efficiency Percentage a) Buffer Nowait % b) Buffer Hit% c) Library Hit% d) Execute to Parse % 2. Load Profile a) Redo size  b) Logical reads c) Physical reads d) Physical writes e) Parse f) Sorts 3. Top 5 Timed Event a) CPU Time  b) Direct path read Temp c) Control file parallel write 15
  • 16. d) Control file sequential read 4. Table space I/O Stats 5. Other Waits: a) Buffer Busy waits b) DB file Sequential Read c) DB file scattered read d) Direct Path Read e) Enqueue f) Free Buffer Wait g) Latch Free h) Library Cache pin i) Log file space switch / log buffer event  j) Log file sync k) Undo segment statistics l) Dictionary cache hits and misses m) Table space IO / File I/O 21. What are the things we need to check in Explain plan report  Ans - Remove unnecessary large-table full table scans - Unnecessary full table scans cause a huge amount of unnecessary I/O, and can drag down an entire database. The tuning expert first evaluates the SQL based on the number of rows returned by the query. If the query returns less and 40 percent of the table rows in an ordered table, or 7 percent of the rows in an unordered table), the query can be tuned to use an index in lieu of the full table scan. The most common tuning for unnecessary full table scans is adding indexes. Standard B-tree indexes can be added to tables, and  bitmapped and function-based indexes can also eliminate full table scans. The decision about removing a full table scan should be  based on a careful examination of the I/O costs of the index scan vs. the costs of the full table scan, factoring in the multiblock reads and possible parallel execution. In some cases an unnecessary full table scan can be forced to use an index by adding an index hint to the SQL statement.  Cache small-table full table scans - In cases where a full table scan is the fastest access method, the tuning professional should ensure that a dedicated data buffer is available for the rows. In Oracle7 you can issue alter table xxx cache. In Oracle8 and  beyond, the small table can be cached by forcing to into the KEEP  pool.  Verify optimal index usage - This is especially important for  improving the speed of queries. Oracle sometimes has a choice of  indexes, and the tuning professional must examine each index and 16
  • 17. ensure that Oracle is using the proper index. This also includes the use of bitmapped and function-based indexes.  Verify optimal JOIN techniques - Some queries will perform faster with NESTED LOOP joins, others with HASH joins, while other favor sort-merge joins. 22. What is the Advantage of RMAN? Ans – 1. Configure one time 2. Automatic Backup Control file 3. Backup Space Management: Setting Default Retention Policies 4. Improved Archived Log Backup 5. Centrally Maintained Backup Information Catalog 6. Scripting Available 7. Performance Benefit (Multiple Channel allocation parrallel option) 8. No generation of extra redo during open DB backups. 10. Block corruption Detection. 11. Compress Backup ( save disk space) 23. What is PGA_AGGREGATE_TARGET, SHARED_POOL_ADVIVE, PGA_TARGET_ADVICE, DB_CACHE_ADVICE, MTTR 1. Data Cache advice - The v$db_cache_advice utility show the marginal changes in  physical data block reads for different sizes of db_cache_size. Bear in mind that the data from STATSPACK can provide similar data as v$db_cache_advice, and most Oracle tuning professionals use STATSPACK and v$db_cache_advice to monitor the effectiveness of their data buffers. These advisory utilities are extremely important for the Oracle DBA who must adjust the sizes of the RAM areas to meet current processing demands Using v$db_cache_advice The following query can be used to perform the cache advice function, once the db_cache_advice has been enabled and the database has run long enough to give representative results. -- *********************************************************** -- Display cache advice -- *********************************************************** column c1 heading 'Cache Size (meg)' format 999,999,999,999 column c2 heading 'Buffers' format 999,999,999 column c3 heading 'Estd Phys|Read Factor' format 999.90 column c4 heading 'Estd Phys| Reads' format 999,999,999 select size_for_estimate c1, 17
  • 18. buffers_for_estimate c2, estd_physical_read_factor c3, estd_physical_reads c4 from v$db_cache_advice where name = 'DEFAULT' and block_size = (SELECT value FROM V$PARAMETER WHERE name = 'db_block_size') and advice_status = 'ON'; The output from the script is shown below. Note that the values range from 10 percent of  the current size to double the current size of the db_cache_size. Estd Phys Estd Phys Cache Size (meg) Buffers Read Factor Reads ---------------- ------------ ----------- ------------ 30 3,802 18.70 192,317,943 <== 10% size 60 7,604 12.83 131,949,536 91 11,406 7.38 75,865,861 121 15,208 4.97 51,111,658 152 19,010 3.64 37,460,786 182 22,812 2.50 25,668,196 212 26,614 1.74 17,850,847 243 30,416 1.33 13,720,149 273 34,218 1.13 11,583,180 304 38,020 1.00 10,282,475 Current Size 334 41,822 .93 9,515,878 364 45,624 .87 8,909,026 395 49,426 .83 8,495,039 424 53,228 .79 8,116,496 456 57,030 .76 7,824,764 486 60,832 .74 7,563,180 517 64,634 .71 7,311,729 547 68,436 .69 7,104,280 577 72,238 .67 6,895,122 608 76,040 .66 6,739,731 <== 2x size From the above listing we see that increasing the db_cache_size from 304 meg to 334 meg would result in approximately 700,000 less physical reads. This can be plotted as a 1/x function and the exact optimal point computed as the second derivative of the function: 2. PGA_AGGREGATE_TARGET Oracle9i has introduced a new advisory utility dubbed v$pga_target_advice. This utility will show the marginal changes in optimal, one-pass, and multipass PGA execution for different sizes of   pga_aggregate_target  , ranging from 10% to 200% of the current value. SELECT ROUND(pga_target_for_estimate/1024/1024) target_mb, estd_pga_cache_hit_percentage cache_hit_perc, 18
  • 19. estd_overalloc_count FROM v$pga_target_advice; 24. What is the difference between alter system Vs alter database? Ans - alter database - chages the information n the databse level alter system - changes the information n the instance level, Database - Collection of files storing database information (configuration/datafiles/redo logs etc) Instance - Processes and memory used to manage a database. Alter databse; performs operations that affect the database Alter system; performs operations that affect the instance 25. How to take incremental logical backup? Ans – EXP INCTYPE= The type of Import being performed: COMPLETE, CUMULATIVE, and INCREMENTAL. 26. What is Bulk Bind or Collect: Ans – new feature in PL/SQL for faster processing of DML. ( Array Processing in Memory) 27. Transportable Tablespace? Ans - OS file copy is generally much faster than other traditional means of data movement such as export/import or SQL*Loader. However, in Oracle9i Database and  below, a restriction limits its usefulness to only a few cases in which both the target and source database run on the same OS platform—you can't transport tablespaces between Solaris and HP-UX, for example. In Oracle Database 10  g  , this restriction has disappeared: you can now transport tablespaces between platforms as long as the OS byte orders are identical 28. When did a table spanned across table spaces? Ans – A partitioned table can span across multiple tablespaces. 29. What is Database replication / Advance Replication? Ans - Replication is the process of creating and maintaining replica versions of database objects (e.g. tables) in a distributed database system. Replication can improve performance and increase availability of applications because alternate data access options becomes available. For  example, users can access a local database rather than a remote server to minimize network traffic. Furthermore, the application can continue to function if parts of the distributed database are down as replicas of the data might still accessible. 30. What is Database Auditing? Ans - Traditional Oracle Database auditing options let you track the actions users perform on objects at the macro level on DML / DDL statements. 19
  • 20. Implement Dba_audit_trails . dbms_fga.add_policy 31. What is Database Label security? 32. What is Log miner? 33.  Ans- The tkprof tool is a tuning tool used to determine cpu and execution times for SQL statements. You use it by first setting timed_statistics to true in the initialization file and then turning on tracing for either the entire database via the sql_trace parameter or for the session using the ALTER SESSION command. Once the trace file is generated you run the tkprof tool against the trace file and then look at the output from the tkprof tool. This can also be used to generate explain plan output. 34. When you get excessive contention for the copy latches as shown by the "redo copy" latch hit ratio.  You can increase copy latches via the initialization parameter LOG_SIMULTANEOUS_COPIES to twice the number of CPUs on your system. 35. Buffer busy waits could indicate contention in redo, rollback or data blocks. You need to check the v$waitstat view to see what areas are causing the problem. The value of the "count" column tells where the problem is, the "class" column tells you with what. UNDO is rollback segments, DATA is data base buffers. 20