Sunteți pe pagina 1din 63

DBA Interview Questions

Page 1 of 63

Index
Architecture 1

3-4

Architecture 2

5-6

Architecture 3

7-8

Database Creation

9-10

Table Space Management

11-12

Storage Parameters

13-14

User Management

15-17

Undo Management

18-18

Flashback Technology

19-20

Networking

21-21

DB Links and Materialized


views

22-23

Redolog,control file
Management

24-26

SP File and OMF

27-27

Logical Backups

28-29

Physical Backups

30-31

Rman

32-33

Performance Tuning

34-36

DBA Interview Questions

Page 2 of 63

Application Tuning

37-38

Database Tuning

39-40

Memory Tuning

41-42

Network Tuning

43-44

Installation

45-46

11g New Features

47-48

Dataguard

49-51

Partitioning

52-53

Indexes

54-55

Row Migration & Row Chaining

56-57

Log Miner

58-59

SQL Loader Auditing

60-61

Automatic Storage
Management

62-63

DBA Interview Questions

Page 3 of 63

1. Architecture - 1
1. Why do we need to maintain our data in database?
As we all know Database has a availability of a storage system, the most obvious of these
being persistence. To sum it up, we can identify the following reasons for wanting a Database
Management Systems short for DBMS:
We need to share data of all kinds between users (except for very small systems), between
tools working on them, and usually between different computers. All should be able to work with
the same set of data.
We need persistent storage and storage must be reliable.
Several users and/or several tools must be able to safely access the same data concurrently.
A DBMS may provide more efficient access to large amounts of data, through indexing and
other optimizations.
A DBMS and its data model provides an abstraction; we do not need to care about the physical
storage format.
A DBMS may also be used for communication between different users or applications.

2. What are the responsibilities of a Database Administrator?


Installing and upgrading the Oracle Server and application tools.
Allocating system storage and planning future storage requirements for the database system.
Managing primary database structures (tablespaces) Managing primary objects (table, views,
indexes)
Enrolling users and maintaining system security.
Ensuring compliance with Oralce license agreement Controlling and monitoring user access to
the database.
Monitoring and optimizing the performance of the database.
Planning for backup and recovery of database information.
Maintain archived data on tape Backing up and restoring the database.
Contacting Oracle Corporation for technical support.

3. What are the Daily Activities of a Oracle DBA


1. Check the Database availability
2. Check the Listener availability
3. Check the alert log file for errors
4. Monitoring space availability in table spaces
5. Monitoring mount point (see capacity planning document)
6. Validate Database backup or Archive backup
7. Find objects which is going to reach max extents
8. Database Health check
9. CPU, Processor, Memory usage

4. What is the most challenging aspect of your job?


This question will give you clues about the mindset of the DBA. When asked what is challenging
about the DBA job, the DBAs answer will reveal a great deal about his or her personality and

DBA Interview Questions

Page 4 of 63

ability to work well with other people. The DBA who talks about the technical challenges of the
job and difficulties administering and maintaining the database may not be ideally suited for a
position where contact for the development staff is critical. On the other hand, the DBA who
speaks openly of the challenges associated with getting the developers fast answers and
accurate information might be a better consideration.

5. How do you perceive the relationship between the DBA and the development
staff?
DBAs by virtue of their high pay and product-specific knowledge, tend to think of developers as
underlings, in some cases, DBAs view developers with outright contempt, believing their queries
to be naive. On the other hand, DBAs with the proper attitude will respond to this question by
talking about the developers as clients to whom they provide data services essential to the
application. In some shops, the DBAs may be responsible for code, reviewing SQL queries, or
DML statements written by developers; so, a good relationship is vital.

6. What is a Database instance?


Explain A database instance (Server) is a set of memory structure and background processes
that access a set of database files. The process can be shared by all users. The memory
structure that are used to store most queried data from database. This helps up to improve
database performance by decreasing the amount of I/O performed against data file.

7. What are mandatory background processes in Oracle Database?


Smon, pmon, ckpt, dbwr, lgwr

8. What is Oltp database?


OLTP means Online Transaction Processing. OLAP means Online Analytical Processing. OLTP
deals with processing of data from transactional systems. For example, an application that loads
the reservation data of a hotel is an OLTP system. An OLTP system is designed mainly keeping
in the mind the performance of the end application. It comprises of the application, database &
the reporting system that directly works on this database. The database in an OLTP system
would be designed in a manner as to facilitate the improvement in the application efficiency
thereby reducing the processing time of the application.

9. What is Olap database?


OLAP systems were mainly developed using data in a warehouse. Having said that a need was
felt to isolate older data, it was necessary to store them in a format that would be useful in
easing out the reporting bottlenecks. A need was felt to isolate the data & redesign the
application data to such a format & structure that this data repository would be the prime source
of business decisions. Coming back to OLAP systems, these systems were mainly developed
on the isolated data.

DBA Interview Questions

Page 5 of 63

2. Architecture - 2
1. What is the basic element of Base configuration of an oracle Database?
It consists of one or more data files. One or more control files. Two or more redo log groups.
The Database contains multiple users/schemas one or more rollback segments
one or more tablespaces Data dictionary tables User objects (table,indexes,views etc.,) The
server that access the database consists of SGA (Database buffer cache,Shared pool ,Redo log
buffer)
SMON (System monitor)
PMON (Process MONitor)
LGWR (LoG Write)
DBWR (Data Base Write)
ARCH (ARCHiver)
CKPT (Check Point)
RECO
Dispatcher
User Process with associated PGA.

2. What is the function of Optimizer?


The goal of the optimizer is to choose the most efficient way to execute a SQL statement.

3. What is Execution Plan?


The combination of the steps the optimizer chooses to execute a statement is called an
execution plan.

4. What are the different approaches used by Optimizer in choosing an


execution plan?
Rule-based and Cost-based.

5. What are the different Components of SGA?


1. The fixed SGA (Fixed SGA)
2. Default block buffer (Db cache)
3. Different Standard Block buffers
4. Redo log buffer (Redo log buffer)
5. Java pool (Java pool)
6. Large pool (Large pool)
7. Shared pool (Shared pool)
8. Stream pool (Stream pool)
9. Result cache

6. What is dictionary cache?

DBA Interview Questions

Page 6 of 63

The dictionary cache stores metadata (data about your tables and indexes) and its also
known as the row cache. It is used to cache data dictionary related information in RAM for quick
access. The dictionary cache is like the buffer cache, except its for Oracle data dictionary
information instead of user information.

7. What is Database Buffers?


Database buffers are cache in the SGA used to hold the data blocks that are read from the data
segments in the database such as tables, indexes and clusters DB_BLOCK_BUFFERS
parameter in INIT.ORA decides the size

8. What is the functionality of SYSTEM table space?


System tablespace is a main part of oracle database. All the database information is in it.it is
created when database is created.It is managed by oracle server . dba cannot change its
contents. it contains the data dictionary objects .

9. What is the function of checkpoint (CKPT)?


Checkpoint is a background process which ensures dbwn process has written data to datafiles
and upadates control file and datafile header to establish data consistency.The CKPT is also
useful to get the point in time from where to begin the recovery in case of failure.

10. When does LGWR write to the database?


Log Writer (LGWR) writes redo log entries. it is generated in the redo log buffer of the SGA to
on-line Redo Log File.LGWR writes redo log entries into an on-line redo log file when
transactions commit and the log buffer files are full.

11. What is Shared SQL Area ?


A shared SQL area contains the parse tree and execution plan for a given SQL statement.
Oracle saves memory by using one shared SQL area for SQL statements run multiple times,
which often happens when many users run the same application.Oracle allocates memory from
the shared pool when a new SQL statement is parsed, to store in the shared SQL area. The
size of this memory depends on the complexity of the statement. If the entire shared pool has
already been allocated, Oracle can deallocate items from the pool using a modified LRU (least
recently used) algorithm until there is enough free space for the new statement's shared SQL
area.

12. What Does DBWR do?


Database writer writes modified blocks from the database buffer cache to the data files.

13. What is server processes?


A server process is one that handles user requests. When you type in a SQL statement, the
server process handles the parsing and running of that SQL statement,

14. Name the process which carries the request to the memory components,And
also fetches from disk to buffer?
Server Process

DBA Interview Questions

Page 7 of 63

3. Architecture - 3
1. Which background process write dirty blocks from database buffer cache to
data files?
Database writer (DBWR)

2. Which background process writes data from log buffer to redo log files?
Log writer (LGWR)

3. Which background process performs Crash recovery?


SMON (system monitor)

4. What is Log Switch?


The point at which ORACLE ends writing to one online redo log file and begins writing to
another is called a log switch.

5. What is On-line Redo Log?


The On-line Redo Log is a set of tow or more on-line redo files that record all committed
changes made to the database. Whenever a transaction is committed, the corresponding redo
entries temporarily stores in redo log buffers of the SGA are written to an on-line redo log file
by the background process LGWR. The on-line redo log files are used in cyclical fashion.

6. What are the steps involved in Instance Recovery?


Rolling forward to recover data that has not been recorded in data files yet has
been
recorded in the on-line redo log, including the contents of rollback segments. Rolling back
transactions that have been explicitly rolled back or have not been committed as indicated by
the rollback segments regenerated in step a. Releasing any resources (locks) held
by
transactions in process at the time of the failure. Resolving any Pending distributed transactions
undergoing a two-phase commit at the time of the instance failure.

7. What does COMMIT do?


COMMIT makes permanent the changes resulting from all SQL statements in the transaction.
The changes made by the SQL statements of a transaction become visible to other user
sessions transactions that start only after transaction is committed.

8. How do you know whether the process is Server Side Process?


By seeing the process in ps-ef as ORACLE_SID.

9. When ckpt occurs?


1. For every 3 seconds
2. When 1/3rd of DB buffer fills
3. When log swtich occurs
4. When database shuts down

DBA Interview Questions

Page 8 of 63

10. What are the two steps involved in instance recovery?


1. Roll forward (redofiles data to datafiles), 2.Roll backward (undo files to data files).

11. What is the use of SMON?


SMON is an Oracle mandatory background process. It is used for Instance recovery.

12. List the Optional Flexible Architecture (OFA) of Oracle database? How can we
organize the tablespaces in Oracle database to have maximum performance?
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.

SYSTEM - Data dictionary tables.


DATA - Standard operational tables.
DATA2- Static tables used for standard operations
INDEXES - Indexes for Standard operational tables.
INDEXES1 - Indexes of static tables used for standard operations.
TOOLS - Tools table.
TOOLS1 - Indexes for tools table.
RBS - Standard Operations Rollback Segments,
RBS1, RBS2 - Additional/Special Rollback segments.
TEMP - Temporary purpose tablespace
TEMP_USER - Temporary tablespace for users.
USERS - User tablespace.

13. How do you know when the process is started?


Using ps -ef grep process name

14. What is meant by redo log buffer?


Changes made to entries are written to the on-line redo log files. So that they can be used in roll
forward operations during database recoveries. Before writing them into the redo log files, they
will first brought to redo log buffers in SGA and LGWR will write into files frequently.
LOG_BUFFER parameter will decide the size.

DBA Interview Questions

Page 9 of 63

4. Database Creation
1. What are the steps involved in Database Startup?
Start an instance, Mount the Database and Open the Database.

2. What are the steps involved in Database Shutdown?


Close the Database; Dismount the Database and Shutdown the Instance.

3. What is Restricted Mode of Instance Startup?


An instance can be started in restricted mode so that when the database is open connections
are limited only to those whose user accounts have been granted the RESTRICTED SESSION
system privilege.

4. What mode the instance should be to create the database?


No mount

5. While creating database can you specify the size of control files?
No

6. Which parameter determines the size of SHARED POOL?


SHARED_POOL_SIZE.

7. After mounting a database using command STARTP MOUNT can you open
your database in RESTRICTED MODE. Using command alter database open
restrict;
No.
8. While creating database can you specify more than one datafile for SYSTEM
Tablespace?
Yes

9. What is a trace file and how is it created?


Each server and background process can write an associated trace file. When an internal error
is detected by a process or user process, it dumps information about the error to its trace. This
can be used for tuning the database.

10. What are the minimum parameters should exist in the parameter file (init.ora)?
DB NAME - Must set to a text string of no more than 8 characters and it will be stored inside the
datafiles, redo log files and control files and control file while database creation.
DB_DOMAIN - It is string that specifies the network domain where the database is created. The
global database name is identified by setting these parameters
(DB_NAME & DB_DOMAIN) CONTORL FILES - List of control filenames of the database. If
name is not mentioned then default name will be used.

DBA Interview Questions

Page 10 of 63

DB_BLOCK_BUFFERS - To determine the no of buffers in the buffer cache in SGA.


PROCESSES - To determine number of operating system processes that can be connected to
ORACLE concurrently. The value should be 5 (background process) and additional 1 for each
user.
ROLLBACK_SEGMENTS - List of rollback segments an ORACLE instance acquires at
database startup. Also optionally

11. How do you get the create syntax of a table or index or function or procedure?
Select dbms_metadata.get_ddl('TABLE','EMP','SCOTT') from dual;

12. Explain about System Table space and sysaux tablespace?


System table space has all the view relating to oracle. Sysaux tablespace is used for storage of
non-system related tables and indexes that traditionally were placed in the System Tablespace.
Like RMAN recovery catalog, Automatic workload repository and ultra search.

13. What are the different modes of mounting a Database with the Parallel Server?
Exclusive Mode If the first instance that mounts a database does so in exclusive mode, only that
Instance can mount the database. Parallel Mode If the first instance that mounts a database is
started in parallel mode, other instances that are started in parallel mode can also mount the
database.

14. Where alert log is stored? What is the parameter?


In trace directory /disk2/oradata/prod/diag/rdbms/prod/prod/trace).parameter is diagnostic_dest
(oracle 11g)

15. What is a Data Dictionary?


The Oracle data dictionary is one of the most important components of the Oracle DBMS.It
contains all information about the structures and objects of the database such as
tables,columns, users, data files etc. The data stored in the data dictionary are also often called
metadata.

16. How many redo logs should you have and how should they be configured for
maximum recoverability?
You should have at least three groups of two redo logs with the two logs each on a separate
disk spindle (mirrored by Oracle).

17. What is the Max Size of the SID?


15char

DBA Interview Questions

Page 11 of 63

5. Tablespace Management
1. What is a Tablespace?
A database is divided into Logical Storage Unit called tablespaces.A tablespace is used to
grouped related logical structures together

2. What are the Characteristics of Data Files?


A data file can be associated with only one Tablespaces. One or more data files can be use as
data of database storage called a tablespace.

3. How do you drop a tablespace, if it has database objects?


Drop tablespace tablespacename including contents

4. Can we create a tablespace with multiple datafiles in a single stroke?


Yes

5. Can a datafile be associated with two different tablespaces?


No.

6. Can we rename a datafile when the corresponding tablespace is in


mode?

read-only

No

7. For transportable tablespace what should be the tablespace status?


Read-only

8. How to rename a datafile?


Tablespace datafile rename:
-Take tablespace offline;
Sys>> Alter tablespace <TBSNAME> offline;
-Change the name at OS level
Linux> cp oldname to newname
-Change the datafile name;
Sys>> Alter tablepsace <TBSNAME> rename datafile 'oldname' to 'newname';

9. Explain the relationship among Database, Tablespace and Data file?


Each databases logically divided into one or more tablespaces one or more data files are
explicitly created for each tablespace

10. How do you drop a tablespace?


Drop tablespace ts1 including contents and datafiles;

11. What is the procedure for Transportable tablespace migration?

DBA Interview Questions

Page 12 of 63

Transportable Tablespaces (TTS) allows you to copy a set of datafiles for a tablespace on one
database and plug that tablespace into a different database.As we noted, you cannot transport
a single partition of a table without transporting the entire table. Therefore, we will need to
exchange the partition with a stand-alone table temporarily, so that the partition becomes its
own table.

12. How to rename the tablespace?


Sys>alter tablespace <tablesapce name> rename to <tablespace name>

13. How to know the default tablespaces?


Sys> select * from database-properties what property-name like %default%;

14. How many datafiles can you add for a tablespace?


65,536

DBA Interview Questions

Page 13 of 63

6. Storage Parameters
1. What is an Extent?
An Extent is a specific number of contiguous data blocks, obtained in a single allocation, and
used to store a specific type of information.

2. What is a Segment?
It is a space demanding object created by user. A segment is a set of extents allocated for a
certain logical structure.

3. What is the package and procedure name to conver dmts to lmts and vice
versa?
Exec dbms_space_admin.tablespace_migrate_from_local(TS1)
Exec dbms_space_admin.tablespace_migrate_to_local(TS1)
4. What is the value for the storage clause pctincrease when the tablespace
extent management is local (uniform)?
0%

5. Can you change the SEGMENT SPACE MANAGEMENT after creation of


Tablespace?
No

6. What are the different types of Segments?


Data Segment, Index Segment, Rollback Segment and Temporary Segment.

7. How to define Data Block size?


A data block size is specified for each ORACLE database when the database is created. A
database users and allocated free database space in ORACLE data blocks. Block size is
specified in INIT.ORA file and can't be changed latter.

8. What are the dictionary views used to monitor a database spaces?


DBA_FREE_SPACE
DBA_SEGMENTS
DBA_DATA_FILES.

9 What is the difference between Data blocks and Extents?


Data blocks are the smallest block for data storage of the oracle. Blocks contain actual data.
Extents are made up of data blocks . Extents are continuous available blocks for storing a
specific type of information.

10. What is an Index Segment?


Each Index has an Index segment that stores all of its data.

DBA Interview Questions

Page 14 of 63

11. What is the significance of having storage clause?


We can plan the storage for a table as how much initial extents are required, how much can be
extended next, how much % should leave free for managing row updations etc.

12. Which parameter specified in the DEFAULT STORAGE clause of CREATE


TABLESPACE cannot be altered after creating the table space?
All the default storage parameters defined for the tablespace can be changed using the ALTER
TABLESPACE command. When objects are created their INITIAL and MINEXTENS values
cannot be changed.

13. What is the extent management of system tablespace when database is


created manually, DBCA?
Dictionary, local

DBA Interview Questions

Page 15 of 63

7. User Management
1. Can objects of the same Schema reside in different tablespaces?
Yes.

2. Can a Tablespace hold objects from different Schemas?


Yes.

3. Is CONNECT a system privilege or a role? If the answer is 'a role', what system
privileges are assigned to this role by default?
It is a role .create session.

4. Where do you get the information of quotas?


Dba_ts_quotas view, user_ts_quotas view.

5. What is the init parameter to make use of profile?


Resource_limit=true

6. While creating user can you assign any role?


Yes

7. Can a segment (table) present on more than one tablespace?


No, Possible only when a table if create by using partition feature.

8. Can a segment (table) present on more than one datafiles?


Yes, Datafiles should belong to one tablespace.

9. Can we create the permanent objects in temporary tablespace?


No

10. Can you drop an object if tablespace is Offline?


Yes

11. What privileges u gives normally when you create users?


Create session

12. What is a View?


A view is a virtual table. Every view has a Query attached to it.(The Query is a SELECT
statement that identifies the columns and rows of the table(s) the view uses.)

13. Can a View based on another View?


Yes.

14. Does a View contain Data?


Views do not contain or store data.

DBA Interview Questions

Page 16 of 63

15. When does a Transaction end?


When it is committed or Roll backed.

16. Define Transaction?


A Transaction is a logical unit of work that comprises one or more SQL statements executed by
a single user.

17. What is default tablespace?


The Tablespace to contain schema objects created without specifying a tablespace name.

18. What is Tablespace Quota?


The collective amount of disk space available to the objects in a schema on a particular
tablespace.

19. What is the use of Roles?


REDUCED GRANTING OF PRIVILEGES - Rather than explicitly granting the same set of
privileges to many users a database administrator can grant the privileges for a group of related
users granted to a role and then grant only the role to each member of the group.
DYNAMIC PRIVILEGE MANAGEMENT - When the privileges of a group must change, only the
privileges of the role need to be modified. The security domains of all users granted the group's
role automatically reflect the changes made to the role.
SELECTIVE AVAILABILITY OF PRIVILEGES - The roles granted to a user can be selectively
enable (available for use) or disabled (not available for use). This allows specific control of a
user's privileges in any given situation.
APPLICATION AWARENESS - A database application can be designed to automatically enable
and disable selective roles when a user attempts to use the application.

20. What is a profile?


Each database user is assigned a Profile that specifies limitations on various system resources
available to the user.

21. What are the roles and user accounts created automatically with the
database?
20 roles are created, 7 user accounts are created when database is created manually

22. What is user Account in Oracle database?


A user account is not a physical structure in Database but it is having important relationship to
the objects in the database and will be having certain privileges.

23. How do you create a table in another tablespace name?


Create table xyz (a number) tablespace system

24. What are roles? How can we implement roles?


Roles are the easiest way to grant and manage common privileges needed by different groups
of database users. Creating roles and assigning provides to roles. Assign each role to group of
users. This will simplify the job of assigning privileges to individual users.

25. What does ROLLBACK do?


ROLLBACK retracts any of the changes resulting from the SQL statements in the transaction.

DBA Interview Questions

Page 17 of 63

26. What is a deadlock? Explain.


Two processes waiting to update the same rows of a table which are locked by the other
process then deadlock arises. In a database environment this will often happen because of not
issuing proper row lock commands. Poor design of front-end application may cause this
situation and the performance of server will reduce drastically. These locks will be released
automatically when a commit/rollback operation performed or any one of these processes being
killed externally

27. How do you get you demo files get created in your user?
$ORACLE_HOME/rdbms/admin/utlsampl.sql, edit and execute this script

28. Can we drop default profile?


No

29. Can we edit default profile?


Yes

8. Undo Management

DBA Interview Questions

Page 18 of 63

1. Tell me about ORA 1555 and how do you address if you get this error?
It usually occurs after queries or batch processes have been running for a long time, which
means you can lose many hours of processing when the error crops up.There are three
situations that can cause the ORA-01555 error:
A. An active database with an insufficient number of small-sized rollback segments
B.A rollback segment corruption that prevents a consistent read requested by the query
C.A fetch across commits while your cursor is open

2. Flashback Query is possible with UNDO as well as ROLLBACK?


FALSE (only possible with Undo)

3. What is the view to see UNDO for how much data flushed out and how much
data it having now.how many active blocks, expired blocks?
V$undostat

4. Two users fired a same statement at same time. performance degrades


or good. What happens if it is select statement and for insert statement?
Performance comes down.there is chance for getting 1555 error.

5. What does ROLLBACK do?


ROLLBACK retracts any of the changes resulting from the SQL statements in the transaction.

6. What are the init parameters you have to set to make use of undo
management?
undo_tablespace= undotbs1
undo_management= auto
undo_retention= time in minutes
comment rollback_segment

7. What is Rollback Segment?


A Database contains one or more Rollback Segments to temporarily store "undo"
information.
8. Can flashback work on database with out undo and with rollback segments?
No.

9. Flashback Technology

DBA Interview Questions

Page 19 of 63

1. Will a normal user is able to use flashback transaction query?


No

2. What is flashback query and flash back recovery?


Flashback query, a new feature of Oracle 9i. Flashback query enables us to query our data as it
existed in a previous state. In other words, we can query our data from a point in time before we
or any other users made permanent changes to it. Flashback recovery can bring the complete
database to the previous state based on SCN number, on timestamp, on restore point.

3. How to flush recycle bin?


We use Purge command to Flush Recycle bin. It will automatically remove old data from
recycle bin if tablespace needs some more space. If you want to purge just one single table
then you type "Purge table <tableName>"

4. What is flashback database?


Oracle 10gs brilliant alternative to database point in time recovery is the the Flashback
Database feature. With this feature in place you can do almost everything that you can with
point in time recovery, without actually having to go through all the disruptions and hassle that a
PITR necessarily details. Unlike other flashback features, which depend on undo data for
reconstructing your lost data, Flashback Database uses flashback logs to access past versions
of changed blocks and allied with some more information mined from the archive logs, you can
easily revert your database to a point in time in the past. Whilst the end product is very much
like a point in time recovery, Flashback database is much faster and less disruptive, because
you do not restore from backups and flashback logs are maintained on the disk itself. Setting it
up at the basic level is pretty simple. It all starts being in ARCHIVELOG mode.

5. Can we go for flashback drop table in 9i?


No

6. Can any user present in dictionary managed tablespace use recycle bin?
No

7. What is flashback data archive?


A Flashback Data Archive provides the ability to track and store all transactional changes to a
table over its lifetime. It is no longer necessary to build this intelligence into your application. A
Flashback Data Archive is useful for compliance with record stage policies and audit reports.A
Flashback Data Archive is configured with retention time. Data archived in the Flashback Data
Archive is retained for the retention time.
By default, flashback archiving is off for any table. You can enable flashback archiving for a
table if you have the FLASHBACK ARCHIVE object privilege on the Flashback Data Archive
that you want to use for that table. After flashback archiving is enabled for a table, you can
disable it only if you either have the FLASHBACK ARCHIVE ADMINISTER system privilege or
you are logged on as SYSDBA.

DBA Interview Questions

Page 20 of 63

8. Limitations of data archive?


There are a number of restrictions for flashback archives:The tablespaces used for a flashback
archive must use local extent management and automatic segment space management. The
database must use automatic undo management.

9.Database views useful to view information about flashback data archive?


Viewing information about FLASHBACK ARCHIVE DATA
dba_FLASHBACK_ARCHIVE display information about flashback data archive
dba_FLASHBACK_ARCHIVE_TS display tablespaces of flashback data archive
dba_FLASHBACK_ARCHIVE_TABLES display information about tables that are enabled for
flashback archiving.

10. Advantages of data archive?


The primary advantages of using Flashback Data Archive for historical data tracking include:
1.Application transparency
2. Seamless access
3. Security
4. Minimal performance overhead
5. Storage optimization
6. Centralized management

11. What is the use of DBMS_FLASHBACK Package?


The DBMS_FLASHBACK package provides the same functionality as Oracle Flashback
Query, but Oracle Flashback Query is sometimes more convenient.The
DBMS_FLASHBACK package acts as a time machine: you can turn back the clock, carry
out normal queries as if you were at that time in the past, and then return to the present.
Because you can use the DBMS_FLASHBACK package to perform queries on past data
without special clauses such as AS OF or VERSIONS BETWEEN, you can reuse existing
PL/SQL code to query the database at times in the past.

10. Networking

DBA Interview Questions

Page 21 of 63

1. What background process refreshes materialized views?


Cjqo (co-ordinate job queue)

2. What is the default location for tnsnames.ora and sqlnet.ora files and if you
don't find them there, where do you look?
$ORACLE_HOME/network/admin/samples

3. Can we start multiple database services with in one listener service?


Yes

4. How to give password for listener?


By using $lsnrctl

5. Can we have two listeners for 1 database?


Yes
6. Can we have same listener names for two databases?
No
7. What is the password you have to set in the init.ora to enable remote login
remote_login_password_file=exclusive
8. How do you connect to db and startup and shutdown the db without having
dba group?
Using remote_login_passwordfile
9. What is the environment variable to set the location of the listener.ora?
TNS_ADMIN

10. How do you know whether listener is running or not?


$ lsnrctl status
ps -ef grep tns

11. What need of password file?


Password file provides remote db authentication.

13. What is a runaway session?


You killed a session in the database but it still remains in the os level and vice versa. Its called
runaway session. If runaway session is there CPU consumes more usage.

14. What is netstat? And its Usage?


It is a utility to know the port numbers availability. Usage: netstat -na grep port number

11. Db Links and Materialized Views

DBA Interview Questions

Page 22 of 63

1. Which operations you can perform using database links?


Options :-> DDL or DML
DML

2. What is the object type of Materialized views?


TABLE

3. Which operations are not allowed on Materialized views?


DML

4. Can we manually refresh any materialized view? Using which package


Yes, DBMS_MVIEW

5. Where the Materialized view stored?


In database (client side db).this is not a view.its read only table.
6. What is Database Link?
A database link is a named object that describes a "path" from one database to another.

7. What is snapshot?
Snapshot is an object used to dynamically replicate data between distribute database at
specified time intervals.

8. What are the various types of snapshots?


There are three types of materialized views:
Read only materialized view, Updateable materialized view, Writeable materialized view

9. Describe two phases of Two-phase commit?


Prepare phase - The global coordinator (initiating node) ask a participants to prepare (to
promise to commit or rollback the transaction, even if there is a failure) Commit Phase - If all
participants respond to the coordinator that they are prepared, the coordinator asks all nodes to
commit the transaction, if all participants cannot prepare, the coordinator asks all nodes to roll
back the transaction.

10. What is snapshot log?


It is a table that maintains a record of modifications to the master table in a snapshot. It is
stored in the same database as master table and is only available for simple snapshots. It
should be created before creating snapshots.

11. What are the benefits of distributed options in databases?


Database on other servers can be updated and those transactions can be grouped together
with others in a logical unit. Database uses a two phase commit.

DBA Interview Questions

Page 23 of 63

12. What are the options available to refresh snapshots?


COMPLETE - Tables are completely regenerated using the snapshots query and the master
tables every time the snapshot referenced.
FAST - If simple snapshot used then a snapshot log can be used to send the changes to the
snapshot tables.
FORCE - Default value. If possible it performs a FAST refresh; otherwise it will perform a
complete refresh.

13. What is Distributed database?


A distributed database is a network of databases managed by multiple database servers that
appears to a user as single logical database. The data of all databases in the distributed
database can be simultaneously accessed and modified.

14. How can we reduce the network traffic?


Replication of data in distributed environment.
Using snapshots to replicate data.
Using remote procedure calls.

15. Differentiate simple and complex?


A simple snapshot is based on a query that does not contains GROUP BY clauses,
CONNECT BY clauses, Joins, sub-query or snapshot of operations.
- A complex snapshots contain atleast any one of the above.

16. What dynamic data replication?


Updating or Inserting records in remote database through database triggers. It may fail if remote
database is having any problem.

17. What is Network Database link?


Network database link is created and managed by a network domain service. A network
database link can be used when any user of any database in the network specifies a global
object name in a SQL statement or object definition. These database links creates a connection
between a local database and a remote database.

18. What is Private Database Link?


Private database link is created on behalf of a specific user. A private database link can be used
only by the owner.

19. What is function of RECO?


Recover (RECO) is used to resolve distributed transactions that are pending due to a network
or system failure in a distributed database. At timed intervals,the local RECO attempts to
connect to remote databases and automatically complete the commit or rollback of the local
portion of any pending distributed transactions.

12. Redolog, Controlfile Management

DBA Interview Questions

Page 24 of 63

1. What is Archived Redo Log?


Archived Redo Log consists of Redo Log files that have archived before being reused.

2. What is Mirrored on-line Redo Log?


A mirrored on-line redo log consists of copies of on-line redo log files physically located on
separate disks; changes made to one member of the group are made to all members.

3. What is the use of Control File?


When an instance of an ORACLE database is started, its control file is used to identify the
database and redo log files that must be opened for database operation to proceed. It is also
used in database recovery.

4. What does a Control file Contain?


A Control file records the physical structure of the database. It contains the following
information. Database Name and locations of a database's files and redolog files. Time stamp of
database creation.

5. What happens when archive log destination becomes 100% full when the
database is running in ARCHIVELOG mode? How do you recover?
The database gets shutdown. We should move old archives to different location and startup the
database.

6. How do you know whether archive log mode is enabled or not?


Issue command 'archive log list' at sys prompt

7. What is a stale?
The redolog file which has not been used yet

8. How many maximum control files you can create in Oracle database?
What is the error number you get if u tries to create more than 8?
8, ora 208

9. If controlfile crashed, no backup. how to recover?


By recreating controlfile.

10. How do increase the count of datafiles?


Generate the control file syntax from the existing control file and recreate the control file by
changing the parameter MAXDATAFILES = yourdesired size
Procedure:
1. Open the database
2. Generate the control file change the maxdatafiles
3. Open the db in nomount
4. Execute the syntax with noresetlogs
5. Alter database open

11. If you want to maintain one more archive destination which parameter you
have to set?
Its a dynamic parameter you have to set log_archive_dest_1=

DBA Interview Questions

Page 25 of 63

12. How do you take backup of a controlfile?


Alter database backup controlfille to destination.file will be save in the your destination

13. How do you make your redolog group inactive?


By taking manual logswitch.alter system switch logfile;

14. What is the parameter allows you to create max no. of groups?
In controlfile recreation script , maxlogfiles=

15. How to create a trace file?


Alter database backup controlfile to trace;

16. How do you rename a Database?


-Alter System switch log file.
-Alter database backup control file to trace.
-Shutdown.
-Edit control file
Create control file reuse database 'oldname' resetlogs to create control file set database
'newname' resetlogs
remove the line stating recover database using backup controlfile.
-change the init.ora file.
-change TNS_names.ora

17. Can we rename the redologs? If yes, in which stage? In DB up or down?


Yes,
If inactive ------------- open stage
If current -------------- cannot rename in open state

18. What is a trace file and how is it created?


Each server and background process can write an associated trace file. When an internal error
is detected by a process or user process, it dumps information about the error to its trace. This
can be used for tuning the database.

19. How to implement the multiple control files for an existing database?
Shutdown the database
Copy one of the existing control file to new location
Edit init.ora file by adding new control filename
Restart the database.

20. How do you know how much archives are generated?


Using the view v$log_history

DBA Interview Questions

Page 26 of 63

13. Spfile and OMF


1. Where do you get all hidden parameters?

DBA Interview Questions

Page 27 of 63

In the table x$ksppi


Sys>select ksppinm,ksppdesc from x$ksppi;

2. How do you know whether the parameter is dynamic or static?


Check the value from the column ISINSTANCE_MODIFIABLE from V$PARAMETER.

3. Which parameters are to by set in parameter file to create database for OMF?
db_create_file_dest =
db_create_online_log_dest_1 =

4. Data dictionary views are dynamic or static?


Static

5. Is it possible to change the Instance name after creating database?


Yes

6. If you delete the alert log file what will happen?


New alert log will be created automatically after database startup.

7. What are the different Parameter types?


Text Parameters, Data Parameters

8. Can we start database with pfile when both spfile and pfile present in dbs
directory?
Yes, Startup pfile=$ORACLE_HOME/dbs/init$ORACLE_SID.ora

9. From which version OMF got introduced?


Oracle9i first introduced a new feature that simplifies tablespace creation. This new feature,
Oracle Managed Files (OMF), makes life easier for Oracle DBAs by removing the tedium from
creating and managing Oracle data files.

10. Disadvantages using OMF?


The major disadvantage of using OMF can be boiled down to:
1. non-human-sensical names
2. Oracle related bugs (*gasp*)

11. What is the difference between the values DEFERRED and IMMEDIATE?
DEFERRED means changes reflected from next connecting session .IMMEDIATE means
changes reflected to all connected as well as connecting sessions.

14. Logical Backups


1. How do you perform Compression with EXPDP?

DBA Interview Questions

Page 28 of 63

EXPDP itself will now compress all metadata written to the dump file and IMPDP will
decompress it automaticallyno more messing around at the operating system level.
Give Compress=Y in the parameter file of export file.

2. What is the use of INCTYPE option in EXP command?


Inctype export should be performed COMPLETE, CUMULATIVE, INCREMENTAL. List the
sequence of events when a large transaction that exceeds beyond its optimal value when an
entry wraps and causes the rollback segment to expand into a notion Completes. e. will be
written.

3. What is the use of FILE option in IMP command?


The name of the file from which import should be performed.

4. What is the use of FULL option in EXP command?


It is helpful in taking full database export

5. What is the use of GRANT option in EXP command?


It is a flag to indicate whether grants on databse objects will be exported or not. Value is 'Y' or
'N'.

6. What is the use of INCTYPE option in EXP command?


It is a type of export which performs OMPLETE, CUMULATIVE, INCREMENTAL

7. What is the use of TABLES option in EXP command?


Tables Indicates that the type of export is table-mode and lists the tables to be exported.
Table partitions and sub partitions can also be specified.

8. What is the use of ROWS option in EXP command?


Rows [Y] Indicates whether or not the table rows should be exported at platform. The highest
value is 64KB.

9. What are the different kinds of export backups?


Full back
- Complete database
Incremental
- Only affected tables from last
Incremental date/full backup date.
Cumulative backup - Only affected table from the last
Cumulative date/full backup date.

10. What is the use of PARFILE option in EXP command?


Par file The name of the file that contains the export parameter options. This file can be used
instead of specifying all the options on the command line for each export.

11. What is the use of INDEXES option in IMP command?


Indexes [Y] Determines whether indexes are imported.

DBA Interview Questions

Page 29 of 63

12. What is the use of OWNER option in EXP command?


Owner Only the owners objects will be exported.

13. What is the use of ROWS option in IMP command?


Rows [Y] Indicates whether or not the table rows should be imported.

14. What is the use of INDEXES option in EXP command?


Indexes [Y] Determines whether index definitions are exported. The index data is never
exported.

15. What is the use of CONSISTENT (Ver 7) option in EXP command?


Consistent [N] Specifies the set transaction read only statement for export, ensuring data
consistency. This option should be set to Y if activity is anticipated while the exp command is
executing. If Y is set, confirm that there is sufficient undo segment space to avoid the export
session getting the ORA-1555 Snapshot too old error.

16. What is the use of RECORD LENGTH option in EXP command?


Record length Specifies the length of the file record in bytes. This parameter affects the
amount of data that accumulates before it is written to disk. If not specified, this parameter
defaults to the value specific to that platform. The highest value is 64KB.

17. What is the use of FILE option in EXP command?


File The name of the export file. Multiple files can be listed, separated by commas. When
export fills the filesize, it will begin writing to the next file in the list.

18. What is compress parameter? When u use it?


Compress When Y, export will mark the table to be loaded as one extent for the import
utility. If N, the current storage options defined for the table will be used. Although this option is
only implemented on import, it can only be specified on export.It reduses the size of backup

19. If you have exported full database using EXP utility and while importing can I
import only one table from full exported file?
Yes

20. How do you perform Compression with EXPDP?


Using compress=y parameter

15. Physical Backup

DBA Interview Questions

Page 30 of 63

1. Can Full Backup be performed when the database is open?


No.

2. What are the advantages of operating a database in ARCHIVELOG mode over


operating it in NO ARCHIVELOG mode?
Complete database recovery from disk failure is possible only in ARCHIVELOG mode. Online
database backup is possible only in ARCHIVELOG mode.

3. How do you restore and recover a datafile while the database is up and
running?
Make the datafile offline, restore and recover datafile, make the datafile online;

4. Can you take COLD backup while database is running?


No
5. HOT backup is consistent backup or inconsistent backup?
Inconsistent
6. Can you take logical backups in mount stage?
No
7. How do you know whether the specific tablespace is in begin backup mode?
Select status from v$backup. if it is active it means it is in begin backup mode
8. When will you take Cold back up especially?
During up gradation and migration
9. What are the modes/options in incomplete recovery?
Cancel based, change based, time based
10. How do you applying archive logs to cold backup of previous day?
Steps involved in recovery are:
- restore cold backup
- Startup mount
-recover database using backup control file until cancel
-alter database open resetlogs
-shutdown
-startup

DBA Interview Questions

Page 31 of 63

11. What is hot backup and how it can be taken?


The database which is 24/7 those databases are never shutdown. Such databases backup
should be taken when database is running on.This type of physical backup is called as Hot
backup.
Steps to take Hot backup.
1 Begin backup
2 Cp *.dbf <Backup location>
3 End backup
4 Log switch
5 Take controlfile backup with sql statement.

12. What is cold backup?


Cold backup is taking backup of all physical files after normal shutdown of database. We need
to take.
1. All Data files.
2. All Control files.
3. All on-line redo log files.
4. The init.ora file (Optional)

13. What is Partial Backup?


A Partial Backup is any operating system backup short of a full backup, taken while the
database is open or shut down.

14. Explain the difference between a hot backup and a cold backup and the
benefits associated with each.
A hot backup is basically taking a backup of the database while it is still up and running and it
must be in archive log mode. A cold backup is taking a backup of the database while it is shut
down and does not require being in archive log mode. The benefit of taking a hot backup is that
the database is still available for use while the backup is occurring and you can recover the
database to any point in time. The benefit of taking a cold backup is that it is typically easier to
administer the backup and recovery process. In addition, since you are taking cold backups the
database does not require being in archive log mode and thus there will be a slight performance
gain as the database is not cutting archive logs to disk.

15. You have just had to restore from backup and do not have any control files.
How would you go about bringing up this database?
I would create a text based backup control file, stipulating where on disk all the data files where
and then issue the recover command with the using backup control file clause.

DBA Interview Questions

Page 32 of 63

16. RMAN
1. Which role you grant to rman user while configuring rman user
Recovery_catalog_owner role.

2. Temporarily recovery catalog database (for RMAN) is down. Can you still run a
backup? How?
Yes, using no catalog mode

3. You have run a backup of database using RMAN nocatalog. How do you sync
the recovery catalog with the metadata about the backup that was taken?
Resync catalog

4. What is compress parameter?


It reduces the size of backup

5. With our catalog can we connect 2 target databases at a time?


Yes we can

6. We have rman backup. can we restore it without using rman and run the
Db?
No

7. Is it needs to take bkp of catalog db?


Not mandatory...

8. Why RMAN scripts not work in no catalog mode?


Rman scripts stored in a catalog. but in no catalog mode we not creating catalog. So no scripts.

9. What use of command line parameter cmd file?


It is a command line argument that allows you to specify a file that contains a set of arguments
for run.

10. What is the use of nohup?


The execution of a specific task is performed in the server side with out any interrupting Usage :
nohup cp -r * /tmp/. &

11. How do u set crontab to delete 5 days old trace files at daily 10'0 clock?
crontab e 0 10 * * * /usr/bin/find /disk2/oradata/prod/diag/rdbms/prod/prod/trace -name "*.trc"
-mtime +5 -exec rm -rf {} \; save and exit (wq!)

12. From RMAN, how do you check if an archive log file is backedup to tape or
not?
Report need backup;

DBA Interview Questions

Page 33 of 63

13. How do you send the data to tape?


Using 1. tar -cvf or 2. cpio

14. How do you enable/disable debugging mode in unix?


Set -x and set +x
15. How to configure RMAN?
Configuring RMAN can be done two types. Using catalog and with out using catalog. If you are
using catalog it you will have to specify a separate tablespace for the catalog. This will remove
the overhead on control file maintaining all the info in it.

16. How to configure RMAN on tape drives (VTL)?


There is a parameter called device_type just give it as sbt and specify the tape location.

17. RMAN improvements


Oracle10g comes with a just a ton of improvements (I like that word, plethora!) for RMAN.
These include the following:
1. The Flash Recovery Area
2. Fast Recovery
3. Using the catalog and uncatalog commands
4. Dropping a database in RMAN
5. Unregistering a database in RMAN
6. Making and Using RMAN backup copies
7. Configuring default disk backup types.
8. Changes to incremental backups.
9. Recovering datafiles not backed up.
10. Changes in error reporting.
11. Compressing RMAN Backups
12. RMAN Related TSPITR changes.

18. What is difference between OBSOLETE and EXPIRED?


Obsolete backups mean inconsistency backups for recovery purpose. Expired backups means
those backups physical files are not available on disk.

19. How speed up backup jobs in Rman?


By increase number of channels.

DBA Interview Questions

Page 34 of 63

17. Performance Tuning


1. What is performance Tuning?
Performance tuning is the term used to improve the performance of a C.P.U to increase the
speed of response time with minimum resource.

2. Why and when should one tune?


One of the biggest responsibilities of a DBA is to ensure that the Oracle database is tuned
properly. The Oracle RDBMS is highly tunable and allows the database to be monitored and
adjusted to increase its performance.
One should do performance tuning for the following reasons:
1.The speed of computing might be wasting valuable human time (users waiting for response);
2.Enable your system to keep-up with the speed business is conducted; and
3.Optimize hardware usage to save money (companies are spending millions on hardware).

3. What database aspects should be monitored?


One should implement a monitoring system to constantly monitor the following aspects of a
database. Writing custom scripts, implementing Oracles Enterprise Manager, or buying a thirdparty monitoring product can achieve this. If an alarm is triggered, the system should
automatically notify the DBA (e-mail, page, etc.) to take appropriate action.
Infrastructure availability: Is the database up and responding to requests
Are the listeners up and responding to requests
Are the Oracle Names and LDAP Servers up and responding to
requests
Are the Web Listeners up and responding to requests
Things that can cause service outages: Is the archive log destination filling up?
Objects getting close to their max extents
Tablespaces running low on free space/ Objects what
would not be able to extend
User and process limits reached

4. What tuning indicators can a DBA use?


The following high-level tuning indicators can be used to establish if a database is performing
optimally or not:
1 Buffer Cache Hit Ratio
Formula: Hit Ratio = (Logical Reads - Physical Reads) / Logical Reads
Action: Increase DB_CACHE_SIZE (DB_BLOCK_BUFFERS prior to 9i) to increase hit ratio
2Library Cache Hit Ratio
Action: Increase the SHARED_POOL_SIZE to increase hit ratio

5. What are the values that can be specified for OPTIMIZER MODE Parameter?
All_rows,rule,first_rows_1000,first_rows_100,first_rows_10,first_rows_1,choose,first_rows.
6. When you enable tracing for a SQL statement, where do you look for the trace
files?

DBA Interview Questions

Page 35 of 63

In 11g /disk1/oradata/prod/diag/rdbms/db_name/instance_name/trace In 10g


/disk1/oradata/prod/udump

7. What is the function of Optimizer?


The goal of the optimizer is to choose the most efficient way to execute a SQL statement.

8. What are the different approaches used by Optimizer in choosing an execution


plan?
Rule-based and Cost-based.

9. What are the values that can be specified for OPTIMIZER MODE Parameter?
All_rows and rule.

10. What is COST-based approach to optimization?


Considering available access paths and determining the most efficient execution plan based on
statistics in the data dictionary for the tables accessed by the statement and their associated
clusters and indexes.

11. What is RULE-based approach to optimization?


Choosing an executing plan based on the access paths available and the ranks of these
access paths.

12. Diff between Production, Development& QA database?


PRODUCTION database is currently using by end users.
Development database using by developers.

13. Diff b/w patching and upgrading?


Patching for solving any bugs in the database.
Up gradation for changing versions and release no's

14. How do you check the locks in the database and determine if there is any
deadlock issue?
Transaction deadlocks occur when two or more transactions are attempting to access an object
with incompatible lock modes. The following script can be used to identify deadlocks in the
database. The query depends upon objects that are created by the script
ORACLE_HOME/rdbms/admin/dbmslock.sql. Log on as SYS or with SYSDBA authority and run
this script in all databases

15. Which view is used to see dead locks?


v$lock
v$session
v$parameter

16. How does u know when system was last booted?


3 ways

DBA Interview Questions

Page 36 of 63

1.uptime cmd
2.top
3.who -b

20. How do u know load on system?


1. W
2. Top

21. How do you know when the process is started?


Using ps -ef| grep process name

22. What type of default optimizer does 10g use?


Oracle 10g uses Cost Based Optimizer.

18. Application Tuning

DBA Interview Questions

Page 37 of 63

1. What is Parallel Server?


Oracle Parallel Server is a robust computing environment that harnesses the processing power
of multiple, interconnected computers. Oracle Parallel Server software and a collection of
hardware known as a "cluster", unites the processing power of each component to become a
single, robust computing environment. A cluster generally comprises two or more computers, or
"nodes".(i.e) Multiple instances accessing the same database (Only In Multi-CPU environments)

2. What is mean by Program Global Area (PGA) ?


The PGA (Program or Process Global Area) is a memory area (RAM) that stores data and
control information for a single process. it typically contains a sort area, hash area, session
cursor cache, etc.

3. How would you generating an EXPLAIN plan?


It is pre execution plan .If you do an EXPLAIN PLAN, Oracle will analyze the statment and fill a
special table with the Execution plan for that statement. If you omit the INTO TABLE_NAME
clause, Oracle fills a table named PLAN_TABLE by default.
Usage:explain plan into table_name for your-precious-sql-statement;
The plan table is the table that Oracle fills when you have it explain an execution plan for an
SQL statement. You must make sure such a plan table exists. Oracle ships with the script
UTLXPLAN.SQL which creates this table, named PLAN_TABLE (which is the default name
used by EXPLAIN PLAN). If you like, however, you can choose any other name for the plan
table, as long as you have been granted insert on it and it has all the fields as here.

4. Can you enable trace for a session?


Yes. We can enable SQL trace for a session using ALTER SESSION SET sql_trace=TRUE.
But it is not advisable as it is a performance issue. It has to be used only when you want to trace
a session to monitor performance related issues and then stop it.

5. What is the parameter to set the user trace enabling?


Sql_trace = true
6. How to create a trace file?
Set sql_trace=true

7. When 100 users connect to database,Hw u see which statement is taking long
time and which statement is doing physical reading in Performance Tuning?
By using explain plan or TKPROF

8. What is Explain Plan? When do we take it?


Explain plan tells us how the query is being executed, whether it is using index or not if so what
kind of index, how many loops are being used, what is the cost of each line in the SQL query,
total cost involved, estimated rows returned, estimated KB returned, types of joins used and
stuff like that.

DBA Interview Questions

Page 38 of 63

9. What is the cache hit ratio, what impact does it have on performance of an
Oracle database?
For the buffer cache hit ratio, it calculates how often a requested block has been found in the
buffer cache without requiring disk access. This ratio is computed using data selected from the
dynamic performance view V$SYSSTAT. The buffer cache hit ratio can be used to verify the
physical I/O as predicted by V$DB_CACHE_ADVICE.

10. How does u improve the performance of Report program?


There are having in so many ways.
1) You can use the sort after Declare the buffering in Read statement.
2) You don't using inner joines You can use for all entries.
3) Maintain the Work area.
4) Maintain the Variables

11. What is the use of tkprof and how to generate it?


Tkprof is one of the most useful utilities available to DBAs for diagnosing performance issues. It
essentially formats a trace file into a more readable format for performance analysis. The DBA
can then identify and resolve performance issues such as poor SQL, indexing, and execution
plan.

12. What would you do to increasing the buffer cache hit ratio?
If the hit ratio is below 90%, and the dictionary cache has been tuned, increase the init.ora
parameter DB_CACHE_SIZE to increase the buffer.

13. What is hit ratio?


It is a measure of well the data cache buffer is handling requests for data. It is a percentage
of available and Non-available of data blocks in any memory component to increase
performance.

14. What are hints in Oracle?


HINTS are nothing but the comments used in a SQL statement to pass instructions to the
Oracle optimizer.The optimizer uses these hints to an execution plan for the statement.

19. Database Tuning


1. How do you disable monitoring of a table?
Alter table tablename no monitoring

DBA Interview Questions

Page 39 of 63

2. How do you enable monitoring of a table?


Alter table tablename monitoring

3. How do you find the files whose are more than 500k?
fnd . -name "*" -size +500k

4. What is a Parallel Server option in ORACLE?


Oracle Parallel Server is a robust computing environment that harnesses the processing power
of multiple, interconnected computers. Oracle Parallel Server software and a collection of
hardware known as a "cluster", unites the processing power of each component to become a
single, robust computing environment. A cluster generally comprises two or more computers, or
"nodes".

5. What does ADDM do?


Oracle10g offers more automatic mechanisms for rudimentary SQL tuning. The AWR tables
allow Oracle10g to collect and maintain detailed SQL execution statistics, and this stored data is
then used by the Advanced Database Diagnostic Monitor (ADDM, pronounced adam). ADDM
attempts to supply a root cause analysis along with recommendations on what to do to fix the
problem. An ADDM output might contain information that there is read/write contention, a free
list problem, or the need to use locally managed tablespaces.
ADDM can identify high load SQL statements, which can, in turn, be fed into the SQL Tuning
Advisor below. ADDM automatically detects common performance problems, including:
1. Excessive I/O
2. CPU Bottlenecks
3.Contention Issues
4. High Parsing
5.Lock Contention
6.Buffer Sizing Issues
7. RAC Tuning Issues
Creating a new snapshot with information populated in dba_hist_snapshot:
exec dbms_workload_repository.create_snapshot(); The addm_rpt.sql script can be used to
view the output of the snapshot.

6. What is PGA?
A PGA is a memory region that contains data and control information for a server process. It is
nonshared memory created by Oracle Database when a server process is started. Access to
the PGA is exclusive to the server process. There is one PGA for each server process.
Background processes also allocate their own PGAs. The total memory used by all individual
PGAs is known as the total instance PGA memory, and the collection of individual PGAs is
referred to as the total instance PGA, or just instance PGA.

7. Daily routine of dba


(1). Day running of the ORACLE database, log files, backup situation, the database space

DBA Interview Questions

Page 40 of 63

usage, the use of system resources to inspect, identify and solve problems.
(2). Every space on the expansion of the database objects, data growth monitoring, health
checks done on the database, the state of the database objects for check-ups.
(3). Monthly tables and indexes, etc. Analyze, check the list of space debris, looking for
opportunities for performance tuning the database, the database performance tuning, space
management plan proposed by the next step. ORACLE database on the state to conduct a
comprehensive inspection.
Daily work
(1). Make sure all the INSTANCE state normal landing to all databases or routine testing
ORACLE background process:
$ Ps-ef | grep ora
(2). Check the file system using the (free space). If the file system free space is less than 20%,
need to delete unused files to free space. $ Df-k
(3). Check the log files and trace files record alert and trace files for errors.
(4). Check the validity of the database using rman utility .
(5). Check the state of the record data file is not "online" data file and do recovery.
Select file_name from dba_data_files where status = 'OFFLINE'
(6). Monitor database performance running bstat / estat report generation system or use
statspack to collect statistical data
(7). Inspection database performance, records database, cpu use, IO, buffer hit ratio, etc. to use
vmstat, iostat, glance, top, etc. command

20. Memory Tuning


1. Who is using which UNDO segment?
Execute the following query to determine who is using a particular UNDO or Rollback Segment:

DBA Interview Questions

Page 41 of 63

SQL> SELECT TO_CHAR(s.sid)||','||TO_CHAR(s.serial#) sid_serial,


NVL(s.username, 'None') orauser,s.program,r.name undoseg,t.used_ublk *
TO_NUMBER(x.value)/1024||'K' "Undo" FROM sys.v_$rollname r,sys.v_$session
s,sys.v_$transaction t, sys.v_$parameter x
WHERE s.taddr = t.addr
AND r.usn = t.xidusn(+)
AND x.name = 'db_block_size'
SID_SERIAL ORAUSER PROGRAM
UNDOSEG
---------- ---------- ------------------------------ --------------- ------260,7
SCOTT
sqlplus@localhost.localdomain _SYSSMU4$
(TNS V1-V3)

Undo
8K

2. Where can one find the high water mark for a table?
There is no single system table which contains the high water mark (HWM) for a table. A table's
HWM can be calculated using the results from the following SQL statements:
SELECT BLOCKS FROM DBA_SEGMENTS
WHERE OWNER=UPPER(owner) AND SEGMENT_NAME = UPPER(table);
ANALYZE TABLE owner.table ESTIMATE STATISTICS;
SELECT EMPTY_BLOCKS
FROM DBA_TABLES
WHERE OWNER=UPPER(owner) AND TABLE_NAME = UPPER(table);
Thus, the tables' HWM = (query result 1) - (query result 2) - 1

3. Define the SGA?


System Global Area.It consists of Shared pool, Large pool, Java pool, Buffer cache, Log buffer,
Nonstandard block size buffer caches, Keep and recycle buffer caches, and Streams pool.

4. You have 4 instances running on the same UNIX box. How can you determine
which shared memory and semaphores are associated with which instance?
Ipcs
SQL> oradebug setmypid
SQL> oradebug ipc
SQL>oradebug tracfile_name

5. When looking at v$sysstat you see that sorts (disk) is high. Is this bad or
good? If bad -How do you correct it?
If you get excessive disk sorts this is bad. This indicates you need to tune the sort area
parameters in the initialization files. The major sort are parameter is the SORT_AREA_SIZE
parameter.

6. What are SGA_TARGET and SGA_MAX?


SGA_Target is the amount SGA that is used by an instance. If this parameter is set in
initialization parameter file then ASMM (Automatic shared memory management) is done where

DBA Interview Questions

Page 42 of 63

the buffer cache, Stream pool, Java pool size, Shared pool size and large pool are managed by
Oracle.
SGA_MAX is the Maximum possible size of SGA allowed when you enable ASMM. SGA_MAX
cannot be changed dynamically. If you raise the SGA_target to more that SGA_MAX you will
get error.

7. What is different initialization parameters related to tuning?


Some of the parameters that effect performance are DB_CACHE_SIZE, SGA_MAX,
PGA_AGGREGATE_TARGET, SHARED_POOL_SIZE, and SGA_TARGET when you use
ASMM.

8. Name the parts of the database buffer cache.


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

9. Which memory structures are shared? Name two.


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

10. What is the maximum number of database writer processes allowed in an


Oracle instance?
The maximum is 20. Every Oracle instance begins with only one database writer process,
DBW0. Additional writer processes may be started by setting the initialization parameter
DB_WRITER_PROCESSES.

21. Network Tuning


1. What is Parallel Server?

DBA Interview Questions

Page 43 of 63

Multiple instances accessing the same database (Only In Multi-CPU environments)

2. Describe a parallel server configuration.


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

3. If you want to configure shared servers which three parameters you need to
specify in init.ora file?
LOCAL_LISTENER, SHARED_SERVERS ,DISPATCHERS.

4. What is the function of Dispatcher (Dnnn) ?


Dispatcher (Dnnn) process is responsible for routing requests from connected user processes to
available shared server processes and returning the responses back to the appropriate user
processes

5. How many Dispatcher Processes are created ?


At least one Dispatcher process is created for every communication protocol in use.

6. View to see how many dispatchers are created by dba in database?


V$dispatchers

7. What are the Disadvantages of dedicated servers?


While using a dedicated server is ideal in many situations, there are also some disadvantages
for those who choose this option.One of the biggest disadvantages to using a dedicated server
is the cost. While most hosting packages that make use of shared servers are relatively
inexpensive, purchasing a hosting package that is not shared is very costly.For users that are
not the most technically savvy webmasters, sometimes a dedicated server can be more than
they can handle. Another disadvantage to dedicated hosting is the lack of free scripts and other
additional features that those on a shared server have access to. Most web hosts offer these
preinstalled on their shared hosting packages, but leave them off the dedicated servers.

8. Disadvantages of shared servers?


1. Security issues:
2. Limited Resources:
3. Dynamic IP:
4. Not good For Large Data Base E-Commerce Sites:

9. Advantages of shared servers?


1. Cheap Cost or Affordable Price:
2. No Maintenance Cost:
3. Fast Setup:
4. Good For Small Sites:

10. What is a dispatcher?

DBA Interview Questions

Page 44 of 63

DISPATCHER configures dispatcher processes in the shared server architecture. The parsing
software supports a name-value syntax to enable the specification of attributes in a positionindependent, case-insensitive manner.

22. Installation
1. What is SHMMAX in /etc/system file of Solaris?
Set shmsys:seminfo_shmmax=4294967295

DBA Interview Questions

Page 45 of 63

2. What happens when root.sh is run?


Permissions of oracle home dir is changed.

3. Can one user install different oracle software versions like 8i,9i,10g?
Yes

4. It possible to install different oracle software on one operating system?


Yes

5. Can root user install Oracle S/W?


No

6. Can you create multiple databases using one operating system login id?
Yes
7. What is difference between 32-bit and 64-bit O/S?
The terms 32-bit and 64-bit refer to the way a computer's processor (also called a CPU),
handles information. The 64-bit version of Windows handles large amounts of random access
memory (RAM) more effectively than a 32-bit system.

8. Compatible parameter using for oracle version .it is giving in parameter file?
This parameter allows you to use a new release, while at the same time guaranteeing
backward compatibility with an earlier release (in case it becomes necessary to revert to the
earlier release).it is given in pfile.

9. How do you kill a session from the database?


Alter system kill 'sid,serial#'
Usage : alter system kill '9,8' (Get the info from v$session)

10. In which file oracle inventory information is available?


/etc/oraInst.loc

11. Where do you configure your hostname in linux?


vi /etc/hosts

12. How do you check the Solaris Server configuration like amount of physical
memory, number of CPUs?
Prtdiag

13. If our $O_H filled up with core files,what actions we will take?
Remove all old core files and create space in the filesystem.

DBA Interview Questions

Page 46 of 63

14. Where do you get to know the version of your oracle software and what is
your version?
From v$version(field is banner) and the version is 9.2.0.1.0

15. Tell me the location of Unix/Solaris log messages stored?


/var/log/messages(Unix)
/var/adm/messages (solaris)

16. Where all oracle homes and oracle sid information available?
/etc/oratab
17. What are Smaphores?
A semaphore is a value in a designated place in operating system (or kernel) storage that each
process can check and then change. Depending on the value that is found, the process can use
the resource or will find that it is already in use and must wait for some period before trying
again. Semaphones can be binary (0 or 1) or counting.

23 .Oracle 11g New features

DBA Interview Questions

Page 47 of 63

1. What is Assm?
Automatic segment space management (ASSM) is a simpler and more efficient way of
managing space within a segment. It completely eliminates any need to specify and tune the
pctused, freelists, and freelist groups storage parameters for schema objects created in the
tablespace. If any of these attributes are specified, they are ignored.

2. What is Asmm?
ASMM (Automatic Shared Memory Management) is the collective name for the dynamic
memory allocation technologies added in Oracle 9i and improved with each subsequent release.
This reduces the amount of manual configuration required and allows the database to adapt to
workload changes.

3. What is the use in memory_target parameter?


MEMORY_TARGET provides the following:
1. A single parameter for total SGA and PGA sizes
2. Automatically sizes SGA components and PGA
3. Memory is transferred to where most needed
4. Uses workload information
5. Uses internal advisory predictions
6. Can be enable by DBCA at the time of Database creation.

4. What is the use of Mman?


Mman stands for Memory Manager; it is a background process that manages the dynamic
resizing of SGA memory areas as the workload increases or decreases. This process was
introduced in Oracle 10g.

5. Oracle 11g new features?


1. Improved data compression ratios (up to 20x).
2. Ability to upgrade database applications while users remain online.
3. New ease-of-use features that make Grid computing more accessible.
4. Automation of key systems management activities
.

6. What is AWR and ADDM?


AWR (Automatic Workload Repository) is a built-in repository (in the sysaux tablespace)
that exists in every Oracle Database. At regular intervals, the Oracle Database makes a
snapshot of all of its vital statistics and workload information and stores them in the
AWR.
ADDM (Automatic Database Diagnostic Monitor) can be describe as the database's
doctor. It allows an Oracle database to diagnose itself and determine how potential
problems could be resolved. ADDM runs automatically after each AWR statistics
capture, making the performance diagnostic data readily available.
7. What is proactive tablespace management system?
The Proactive Tablespace Management (PTM) capability in the Oracle Database 10g brings
efficient and powerful space monitoring, notification and space trending to the Oracle Database.

DBA Interview Questions

Page 48 of 63

Prior to Oracle Database 10g, the tools available for monitoring and setting up notifications
regularly polled the database to monitor its space usage. Querying space usage information
requires collecting data about the state of the database state that is constantly changing in a
production system. Because such queries are inherently expensive, the space monitoring tools
typically run them infrequently, once a day or once every couple of hours. When they are run,
the queries steal CPU, IO and memory (especially the buffer cache) resources away from
critical business activity in the production system. Its a health check that is either late or hurts
the health of the system or worse, both!

8. What are the advantages of AWR?


Advantages of the new workload repository include:
1. AWR is a record of all database in-memory statistics historically stored. In the past, historical
data could be obtained manually using the statspack utility. AWR automatically collects more
precise and granular information than past methods.
2. With a larger data sample, more informed decisions could be made. The self-tuning
mechanism uses this information for trend analysis.
3. Another benefit is that AWR statistics are accessible to external users, who can build their
own performance monitoring tools, routines, and scripts.
4. Awr collects database performance identical values from different layers like
1. C.P.U resources utilization
2. Memory utilization
3. Timing statistics
4. Typical executed Queries Latches statistics etc.

24. Data Guard

DBA Interview Questions

Page 49 of 63

1. How do you findout the most recent log applied to physical standby?
SELECT SEQUENCE#, APPLIED FROM V$ARCHIVED_LOG;

2. Where do you look for Oracle alert log?


/disk2/oradata/prod/diag/rdbms/db_name/instance_name/trace ls alert_instance_name.log

3. What happens if you add a datafile in primary and there is no space on


contingency server and how do you resolve it?
Increase disk space

4. How do you add a datafile to a tablespace in a database with physical standby


setup?
By setting standby_file_management=auto, if a tablespace is created on primary it will be
automatically created on standby.

5. How do you troubleshoot if you suspect any problems with archive log
shipping to standby database?
Check for network configuration and standby archive location specified in primary init.ora

6. How do you open a physical standby database in managed recovery mode in


'READ-ONLY' mode?
Cancel the MRM, and then open the database using sql statement alter database open;

7. What is the difference between Physical and logical stand by databases?


1. Physical standby can be opened in read only mode, logical standby can be opened in read
write mode
2. Redo apply will take place in physical standby and sql apply will be in logical standby
3. MRP process will work for redo apply,lsp process for sql apply

8. What is the state of stand by database; is it open?


Physical standby in read only
Logical standby in read write

9. Can we create logical standby from physical standby?


Yes.

10. What is an oracle stream?


Streams are a 10g feature. It is using for replicating data between two databases

11. How to create a logical standby?


Standby>>alter database recover managed standby database cancel;
Execute dbms_logstdby.build;
Alter database recover to logical standby new_db_name;

DBA Interview Questions

Page 50 of 63

Shut immediate
Startup mount
Alter database open resetlogs;
Alter database start logical standby apply immediate;

12. What is Database maintain plan and Disaster Recovery plan?


Disaster recovery plans start with risk assessment. You need to identify all the risks that your
data center faces and then determine the business impact should that risk become an event.
For instance, typical risks that are considered are: loss of a disk drive, loss of a server, complete
loss of your data center, etc.
There are many ways to handle your disasters. You'll have to look at the risks you face. Each
risk should have a solution. In some cases, multiple risks have the same solution.
In order to be able to transport tablespaces between platforms, you must meet two criteria. One,
you must be running Oracle 10g on both platforms. Two, both platforms must have the same
"endianess" or you'll need to perform a conversion step. The endianness refers to the byte
ordering on that platform. Solaris is big endian. Windows is little endian. If both platforms were
big endian or both were little endian, then you would have no difficulties transporting the
tablespaces.

13. What is the state of standby database, is it open?


Physical Standby database is in "Recovery Mode" in order to apply received archive logs from
primary database. We can make it to "Read Only" mode to make it available for application
users for reporting purposes. Once the database is applied in "Read Only" mode we cannot
apply redo logs received from primary database(oracle 10g).
From 11g we can put the database in MRM mode even in open mode ---active standby
Logical standby database is logically identical to the primary database. Logical standby can be
in open state and at the same time its tables are updated from primary database.

14. How do you configure a stand by database?


Steps to create standby database:
1. Enable forced logging
2. Create password file if it does not exist.
3. Set primary database initialization parameters
4. Enable archiving if it is not.
5. Create a backup copy of primary database datafiles.
6. Create standby control file.
7. Prepare the initialization parameters for Standby database.
8. Copy all the files to standby database datafiles, control files, init.ora files
9. Configure Listener on standby.
10. Enable broken connection detection.
11. Create Oracle net service names.
12. Create Spfile for standby database.
13. Start standby database in read only mode.
14. Start redo apply when necessary.
15. Verify standby is working properly.

DBA Interview Questions

Page 51 of 63

15. Give me the syntax to create a standby controlfile using RMAN?


Alter database create standby controlfile as /disk2/oradata/prod/dg/stand.ctl;

16. How do you perform the switch over from primary to standby and standby to
primary?
Prod>>select switchover_status from v$database; To_standby
Prod>>alter database commit to switchover to standby;
Standby>>alter database commit to switchover to primary;
Standby>>alter database open;

17. Give me the Top 5 init parameters which need to be setup in the target db in
the physical standby config?
Fal_server=to_stand #tns service of prod
Fal_client=to_prod #tns service of standby
Log_archive_dest_1=location=/disk2/oradata/prod/arch #archive log dest of production
Log_archive_dest_1=service=to_stand lgwr sync affirm reopen=10
Standby_file_management=auto

Standby_archive_dest=/disk2/oradata/prod/arch
18. What is Failover and Switchover?
Switchover: The switchover feature provides you with the ability to switch the role of the
primary database to one of the available standby databases. The chosen standby database
becomes the primary database, and the original primary database then becomes a standby
database.
Failover: You invoke a failover operation when a catastrophic failure occurs on the primary
database and there is no possibility of recovering the primary database in a timely manner.
During a failover operation, the failed primary database is removed from the Data Guard
environment, and a standby database assumes the primary database role. You invoke the
failover operation on the standby database that you want to fail over to the primary role.

19. Can you create clone database using HOT backup?


Yes

20. Without password file can we configure standby database?


No

25. Partitioning

DBA Interview Questions

Page 52 of 63

1. What are the different types of partitioning?


In Oracle you can partition a table by
Range Partitioning
Hash Partitioning
List Partitioning
Composite Partitioning

2. How do you check the status of the table whether monitoring or not?
Select table_name, monitoring from dba_table where owner='scott;
3. In which table records of monitoring will be stored?
dba_tab_modificaitons

4. How can you rebuild an index?


ALTER INDEX <index_name> REBUILDS;

5. Explain what partitioning is and what its benefit is.


Partitioning is a method of taking large tables and indexes and splitting them into smaller, more
manageable pieces.

6. What is single partition transport?


The Transportable Table spaces mechanism for Data Pump could be used to specify only the
physical tablespaces to be exported. This feature adds a partition mode, which can be used to
move one or more partitions or subpartitions of a table without having to move the entire table or
exchange out the partition or sub partition.

7. Why Use Partitioning?


1. Continued data availability with partial failures.
2. Simplified data disk placement.
3. Scalable Performance with substantial growth in data volumes.

8. How to move the partition from one TS to other TS? Using Command?
Alter table<tablename> move partition <partition name> tablespace <tablesapce name>

9. How to add a new partitioning to an existing partition table?


Alter table <tablename> add partition<partition name> values less than (maxvalue) tablespace
<tablespace name>

10. How to merge two partitions into one using command?


Alter table<tablename> merge partition<partition name> into partition<partition name>
tablesapce<tablespace name>

11. How to rename existing Partition using command?


Alter table <tablename> rename partition<old partition> to <new partition>
12. Dropping Partition
Alter table <tablename> drop partition <partition name>

DBA Interview Questions

Page 53 of 63

13. How to creating a local index on a range partitioned table using command.
Create Index <indexname> on table <deptno> local;

Indexes

DBA Interview Questions

Page 54 of 63

1. What is an Index?
An Index is an optional structure associated with a table to have direct access to rows, which
can be created to increase the performance of data retrieval. Index can be created on one or
more columns of a table.

2. What are the types of indexes?


There are five types of indexes: unique and non-unique indexes, and clustered and nonclustered indexes, and system generated block indexes for multidimensional clustered (MDC)
tables.

3. What is Local Index?


Local Partitional Index is easier to manage and each partition of local indexes are associated
with that partition.

4. Types of Global Indexes?


*Global Non-Partitioned index.
*Global Partitioned Index.

5. What is Global Index?


Global Index used in OLTP environments and offer efficient access to any individual record.

6. How can you rebuild an index?


ALTER INDEX <index_name> REBUILDS;

7. What are virtual indexes?


Oracle Virtual Indexes are another undocumented feature used by Oracle. Virtual indexes, as
the name suggests are pseudo-indexes that will not behave the same way that normal indexes
behave, and are meant for a very specific purpose.A virtual index is created in a slightly different
manner than the normal indexes. A virtual index has no segment pegged to it, i.e., the
DBA_SEGMENTS view will not show an entry for this.
Oracle handles such indexes internally and few required dictionary tables are updated so that
the optimizer can be made aware of its presence and generate an execution plan considering
such indexes. As per Oracle, this functionality is not intended for standalone usage.

8. What are bitmapped indexes? What is btree index?


Tree indexes are usually associated with the index that stores a list of ROWIDs for each key.
While Bitmap is also organized as B tree but the leaf node stores a bitmap for each value
instead of a list of ROWIDs. B tree can be used for OLTP while bitmap is used for data
warehousing system.

9. What are invisible indexes?


An invisible index is an alternative to making an index unusable or even to drop it. An invisible
index is maintained for any DML operation but is not used by the optimizer unless you explicitly
specify the index with a hint.

DBA Interview Questions

Page 55 of 63

Applications often have to be modified without being able to bring the complete application
offline. Create invisible indexes temporarily for specialized non-standard operations, such as
online application upgrades, without affecting the behavior of any existing application.
Furthermore, invisible indexes can be used to test the removal of an index without dropping it
right away, thus enabling a grace period for testing in production environments.

DBA Interview Questions

Page 56 of 63

26. Row Migration & Row Chaining


1. What is the use of ANALYZE command?
To perform one of these function on an index, table, or cluster: - To collect statistics about
object used by the optimizer and store them in the data dictionary. - To delete statistics about
the object used by object from the data dictionary. - To validate the structure of the object.. - To
identify migrated and chained rows off the table or cluster.

2. What is Row Chaining and Row Migration?


Row Changing:: Row changing occurs when a row is too large to fit into a single empty data
block. When this occurs, Oracle will spread the row across as many blocks as are needed.
Changing the row from one block to the next.
Row Migration:: Row migration occurs when a row is updated and it will not fit back into the
original block. When this happens, the Oracle server attempts to find another block that the
entire row can be moved to. If it does find a block, the entire row is moved to the new block. The
row piece(head ROWID) remains in the original block, with original ROWID and points to the
migrated rowin the new block.

3. What is resumable tablespace?


A resemble statement allow you to:
1. Suspend large operations instead of receiving an error
2. Allows you to fix the problem while the operation is suspended, rather than start from scratch.

4. What is the parameter which helps us to enable resumable?


Resumable_timeout

5. When does resumable tablespace gets suspended?


A session remains suspended for the following reasons
1. Tablespace runs out of space
2. Max extents reached.
3. Space quota exceeded on tablespace.

6. Query to know information about suspended sessions?


Select a.username, a.sid, a.serial#, b.status
, b.timeout, b.suspend_time from v$session a
, dba_resumable b where a.sid = b.session_id and
a.user# = b.user_id;

7. Is resumable a privilege or a role?


Resumable is a Privilege.

8. How to know resumable time?

DBA Interview Questions

Page 57 of 63

SQL> select dbms_resumable.get_timeout from dual;

9. Performance degradation is more for row chaining or row migration?


Row migration.

10. How to avoid Chained and Migrated Rows?


Increasing PCTFREE can help to avoid migrated rows. If you leave more free space
available in the block, then the row has room to grow. You can also reorganize or recreate tables and indexes that have high deletion rates. If tables frequently have rows
deleted, then data blocks can have partially free space in them. If rows are inserted and
later expanded, then the inserted rows might land in blocks with deleted rows but still not
have enough room to expand. Reorganizing the table ensures that the main free space
is totally empty blocks.

DBA Interview Questions

Page 58 of 63

27. Log Miner


1. How to find out a record last updated?
This can done using logminer utility.

2. What is log miner?


Oracle Log Miner, which is part of Oracle Database, enables you to query online and archived
log files through a SQL interface. Because redo log files contain information about the history
of activity on a database.If there were a small number of transactions that required rollback,prior
to Logminer utility. you would have to restore the table to earlier state and apply archived
logfiles to bring the table forward to just before the corruption when restoring the table and
applied the archived log files, you would have risk losing later transaction that you would like to
retain.you can now use logminer to rollback only those trasactions without losing any
transactions.

3. From which version logminer has started?


Oracle 8i

4. Benefits of using logminer?


1.Determine what actions you should have to take to do fine-grained recovery at the transaction
level. If you fully understood and take into an account existing dependencies, it may be
possible to perform a table-specific undo operation to return the table to its original state.
2.Performance tuning and capacity planning through trend analysis. You can determine which
tables get the most updates and inserts.
3..Performing postauditing. LogMiner can be used to track any data manipulation language
(DML) and data definition language (DDL) statements executed on the database, the order in
which they were executed, and who executed them.

5. From where we can get archivelog contents which logminer has digged?
Query the V$LOGMNR_CONTENTS view.

6. What is the usage of mine_value? The following usage rules apply to the
MINE_VALUE and COLUMN_PRESENT functions:
1. They can only be used within a Log Miner session.
2. They must be invoked in the context of a select operation from the V$LOGMNR_CONTENTS
view.
3. They do not support LONG, LONG RAW, CLOB, BLOB, NCLOB, ADT, or COLLECTION
datatypes.

7. What is the parameter which is used for logminer?


UTL_FILE_DIR = /oracle/database
8. Logminer configuration?

DBA Interview Questions

Page 59 of 63

There are three basic objects in a Log Miner configuration that you should be familiar
with: the source database, the Log Miner dictionary, and the redo log files containing
the data of interest:
The source database is the database that produces all the redo log files that you want
Log Miner to analyze.
The Log Miner dictionary allows Log Miner to provide table and column names,
instead of internal object IDs, when it presents the redo log data that you request.
Log Miner uses the dictionary to translate internal object identifiers and datatypes to
object names and external data formats. Without a dictionary, Log Miner returns internal
object IDs and presents data as binary data.
9. What are Log Miner dictionary options?
Using the Online Catalog: Oracle recommends that you use this option when you will have
access to the source database from which the redo log files were created and when no changes
to the column definitions in the tables of interest are anticipated. This is the most efficient and
easy-to-use option.
Extracting a Log Miner Dictionary to the Redo Log Files: Oracle recommends that you use
this option when you do not expect to have access to the source database from which the redo
log files were created, or if you anticipate that changes will be made to the column definitions in
the tables of interest.
Extracting the LogMiner Dictionary to a Flat File:This option is maintained for backward
compatibility with previous releases. This option does not guarantee transactional consistency.
Oracle recommends that you use either the online catalog or extract the dictionary from redo log
files instead.

10. Views related to logminer?


Once Log Miner is started, the contents of the logfiles can be queried using the following views:
1. V$LOGMNR_DICTIONARY - The dictionary file in use.
2. V$LOGMNR_PARAMETERS - Current parameter settings for Log Miner.
3. V$LOGMNR_LOGS - Which redo log files are being analyzed.
4. V$LOGMNR_CONTENTS - The contents of the redo log files being analyzed.
.

DBA Interview Questions

Page 60 of 63

28. Sql Loader Auditing


1. What is Auditing?
Monitoring of user access to aid in the investigation of database use.
2. What is the default destination where Oracle creates audit trail files
automatically when you login as a sysdba?
$ORACLE_HOME/rdbms/audit

3. A table deleted by a user, how u come to know which user was deleted?
If he deleted alert log file also how u come to know?
By using AUDITING.
4. What are the different Levels of Auditing?
Statement Auditing, Privilege Auditing and Object Auditing.
5. What is Statement Auditing?
Statement auditing is the auditing of the powerful system privileges without regard to specifically
named objects

6. What are the database administrators utilities available?


SQL * DBA - This allows DBA to monitor and control an ORACLE database. SQL * Loader - It
loads data from standard operating system files (Flat files) into ORACLE database tables.
Export (EXP) and Import (imp) utilities allow you to move existing data in ORACLE
format to and from ORACLE database.

7. What is Privilege Auditing?


Privilege auditing is the auditing of the use of powerful system privileges without regard to
specifically named objects.

8. What is Object Auditing?


Object auditing is the auditing of accesses to specific schema objects without regard to user.

9. What is the difference between SQL loader and exp/imp?


SQL is most used for ETL purpose and is mostly used for loading data from Non Oracle
Databases. Exp/Imp is an oracle tool used of for moving data from oracle database to another
oracle database.

10. Oracle 11g new feature in auditing level?


Oracle Audit Vault is a new feature that will provide a solution to help customers address the

DBA Interview Questions

Page 61 of 63

most difficult security problems remaining today, protecting against insider threat and meeting
regulatory compliance requirements.

11. Is it Mandatory to mention log file in Sql Loader?


No. Once you load data then automatically logfile will be created

12. How can you skip some records in Sql Loader?


By Using Skip Parameter

13. A file consists of 10 records. How can you load 5th and 6th records.
Sqlloader control=<controlfilename> skip=4 load=2

14. What a bad file contains?


Oracle rejected records

15. Can you insert some records for a non empty table?
No. It is not possible to insert the table should be empty

16. What is infile *?


* Indicates the data is present within the controlfile.,

DBA Interview Questions

Page 62 of 63

29. Automatic Storage Management


1. What is ASM?
ASM is one file system which will build by an oracle on any raw disk for storing oracle database
files including datafiles, redologs, Backups, controlfiles and spfiles. ASM allows administrators
to add and remove disks while the database is on-line and available to users. And also DBA can
manage storage of database with redundant technology. Data is automatically striped across all
disks in a diskgroup and is optionally mirrored.

2. What are disadvantages of having raw devices?


One single raw device storage space is completely dedicated to only any one datafile or any
one redolog or to any one controlfile. The tar command cannot be used for physical file backup;
instead we should use dd command.

3. What is advantage of having disk shadowing/ Mirroring?


Shadow set of disks save like a backup for the safe-side of disk failure. In most Volume
Manager if any disk failure occurs it automatically switches over to a working disk. Improved
performance because most OS support volume shadowing can direct file I/O request to use the
shadow set of files instead of the main set of files. This reduces I/O load on the main set of
disks.

4. It is possible to use raw devices as data files and what are the advantages over
file system files?
Yes. The advantages over file system files. I/O will be improved and database performance will
increase.

5. What are ASM related init.ora parameters?


ASM_DISKGROUPS
ASM_DISKSTRING
ASM_POWER_LIMIT
ASM_PREFERRED_READ_FAILURE_GROUPS
DB_CACHE_SIZE
DIAGNOSTIC_DEST
INSTANCE_TYPE
LARGE_POOL_SIZE
PROCESSES
REMOTE_LOGIN_PASSWORDFILE
SHARED_POOL_SIZE

6. How many database instances can be handled by one ASM instance?


Several databases can share a single ASM instance. So, although one can create multiple ASM
instances on a single system, normal configurations should have one and only one ASM
instance per system.
For clustered systems, create one ASM instance per node (called +ASM1, +ASM2, etc).

DBA Interview Questions

Page 63 of 63

7. How many disk groups should one have?


One should have only one disk group for all database files - and, optionally a second for
recovery files. Data with different storage characteristics should be stored in different disk
groups. Each disk group can have different redundancy (mirroring) settings (high, normal
and external), different fail-groups, etc. However, it is generally not necessary to create
many disk groups with the same storage characteristics (i.e. +DATA1, +DATA2, etc. all on
the same type of disks).

S-ar putea să vă placă și