<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4858278767901421083</id><updated>2011-12-26T11:22:21.614+05:00</updated><category term='DB-Background Processes'/><category term='RM-Restoration'/><category term='DB-Database Creation'/><category term='DB-CREATE DATABASE'/><category term='DB-Installation'/><category term='RM-Auxiliary Database'/><category term='DB-Listener'/><category term='DB-Shared Server'/><category term='RM-Recovery'/><category term='DB-Instance'/><category term='DB-PGA Memory Management'/><category term='DB-DBCA'/><category term='DB-Quiescing'/><category term='RM-Flash Recovery Area'/><category term='DB-Architecture'/><category term='DB-SGA Memory Management'/><category term='RM-Recovery Catalog'/><category term='DB-Dedicated Server'/><category term='DB-Server Processes'/><category term='DB-Shutdown'/><category term='DB-Startup'/><category term='RM-Instance Memory Used'/><category term='DB-Database'/><category term='DB-OFA'/><category term='RM-Architecture'/><category term='RM-Database Structures Used'/><category term='RM-RMAN'/><category term='RM-Physical Backups'/><category term='DB-Instance Memory Management'/><category term='RM-Logical Backups'/><category term='DB-User Processes'/><title type='text'>Subterfuge</title><subtitle type='html'>Oracle or Prognosticator?</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://asghars.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://asghars.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Muhammad Asghar Khan</name><uri>https://profiles.google.com/102545751511475719828</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-uiG6pTx0jQw/AAAAAAAAAAI/AAAAAAAAByM/7lMWjWkKRwc/s512-c/photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>10</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4858278767901421083.post-7012289731652219555</id><published>2011-12-26T10:27:00.001+05:00</published><updated>2011-12-26T11:15:32.885+05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DB-Instance Memory Management'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-SGA Memory Management'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-PGA Memory Management'/><title type='text'>05-Managing the Oracle Instance Memory</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;5.0&amp;nbsp; Memory Management&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Memory management involves maintaining optimal sizes for the Oracle instance memory structures as demands on the database change. These structures are the system global area (SGA) and the instance program global area (collection of all individual PGAs).&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;There are two different memory management methods for the SGA, and two for the instance PGA.&amp;nbsp;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;Automatic SGA Memory Management&lt;/li&gt;&lt;li&gt;Manual SGA Memory Management&lt;/li&gt;&lt;li&gt;Automatic PGA Memory Management&lt;/li&gt;&lt;li&gt;Manual PGA Memory Management&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;5.0.1&amp;nbsp; Automatic SGA Memory Management&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;To allow ASMM (Automatic Shared Memory Management) you specify the total amount of SGA memory available to an instance using the SGA_TARGET initialization parameter and Oracle instance automatically distributes this memory among the various SGA components to ensure the most effective memory utilization.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The Oracle instance automatically distributes the available memory among the various components as required, allowing the system to maximize the use of all available SGA memory. If you are using a server parameter file (SPFILE), the instance remembers the sizes of the automatically tuned SGA components across instance shutdowns. The instance can begin with information from the previous instance and continue evaluating workload where it left off at the last shutdown.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;All SGA components allocate and deallocate space in units of granules. Granule size is determined by total SGA size. On most platforms, if the total SGA size is equal to or less than 1 GB, then granule size is 4 MB. For SGAs larger than 1 GB, granule size is 16 MB. If you specify a size for a component that is not a multiple of granule size, Oracle instance rounds the specified size up to the nearest multiple. You can query the V$SGAINFO view to see the granule size that is being used by an instance.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-WnqMVCpapJE/TvgEXraH82I/AAAAAAAACXQ/YEvhph7nMng/s1600/01.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-WnqMVCpapJE/TvgEXraH82I/AAAAAAAACXQ/YEvhph7nMng/s1600/01.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;Table below lists the SGA components that are automatically sized when SGA_TARGET is set.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-t-C1F22b4Dw/TvgEr4qRLiI/AAAAAAAACXc/Bl4r-BJcz-U/s1600/02.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-t-C1F22b4Dw/TvgEr4qRLiI/AAAAAAAACXc/Bl4r-BJcz-U/s1600/02.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;The V$SGA_TARGET_ADVICE view provides information that helps you decide on a value for SGA_TARGET.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-5vOZ_wfxqKk/TvgFB5W8yII/AAAAAAAACXo/2oDsRi0BZaU/s1600/03.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-5vOZ_wfxqKk/TvgFB5W8yII/AAAAAAAACXo/2oDsRi0BZaU/s1600/03.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;You can change to ASMM from manual shared memory management as:&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Obtain a value for SGA_TARGET.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-h2765Eqag0E/TvgFeM-NAtI/AAAAAAAACX0/NHTDW_Nr2mA/s1600/04.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-h2765Eqag0E/TvgFeM-NAtI/AAAAAAAACX0/NHTDW_Nr2mA/s1600/04.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;Set the value of SGA_TARGET, either by editing the text initialization parameter file and restarting the database, or by issuing the following statement: &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-ZeXjQx1IPo4/TvgF_72yFaI/AAAAAAAACYA/2cAdVQ3YwAI/s1600/05.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-ZeXjQx1IPo4/TvgF_72yFaI/AAAAAAAACYA/2cAdVQ3YwAI/s1600/05.gif" /&gt;&amp;nbsp;&lt;/a&gt; &lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;&amp;nbsp;Set the values of the automatically sized SGA components listed in table given above to zero. Do this by editing the text initialization parameter file or by issuing ALTER SYSTEM statements. &lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-uRBk-5Q6-PE/TvgGXNVt0EI/AAAAAAAACYM/x2v-Lt5n198/s1600/06.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-uRBk-5Q6-PE/TvgGXNVt0EI/AAAAAAAACYM/x2v-Lt5n198/s1600/06.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-xb4bl6LIysI/TvgGpql_5MI/AAAAAAAACYY/zFBWU8PlJ-w/s1600/07.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-xb4bl6LIysI/TvgGpql_5MI/AAAAAAAACYY/zFBWU8PlJ-w/s1600/07.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;5.0.2&amp;nbsp; Manual SGA Memory Management&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;To use MSMM (Manual Shared Memory Management) you can configure several SGA component sizes manually, and then monitor and tune these sizes on an ongoing basis as the database workload changes. If you create your database with DBCA and choose manual shared memory management, DBCA provides fields where you must enter sizes for the buffer cache, shared pool, large pool, and Java pool. It then sets the corresponding initialization parameters in the server parameter file (SPFILE) that it creates. If you instead create the database with the CREATE DATABASE statement and a text initialization parameter file, provide values for the initialization parameters that set SGA component sizes.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;To enable manual shared memory management, set the MEMORY_TARGET and SGA_TARGET initialization parameter to 0. You must then set values for the various SGA components.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;5.0.3&amp;nbsp; Automatic PGA Memory Management&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;By default, Oracle instance automatically manages the total amount of memory dedicated to the instance PGA. You can control this amount by setting the initialization parameter PGA_AGGREGATE_TARGET. Oracle instance then tries to ensure that the total amount of PGA memory allocated across all database server processes and background processes never exceeds this target.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;If you create your database with DBCA, you can specify a value for the total instance PGA. DBCA then sets the PGA_AGGREGATE_TARGET initialization parameters in the server parameter file (SPFILE) that it creates. If you create the database with the CREATE DATABASE statement and a text initialization parameter file, you can provide a value for PGA_AGGREGATE_TARGET.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Following dynamic performance views provide PGA memory use statistics.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;V$PGA_TARGET_ADVICE&lt;/li&gt;&lt;li&gt;V$PGASTAT&lt;/li&gt;&lt;li&gt;V$SQL_WORKAREA &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-Xx4lhJEWqnQ/TvgH6lVD8AI/AAAAAAAACYk/H8qj38Qmh0g/s1600/08.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-Xx4lhJEWqnQ/TvgH6lVD8AI/AAAAAAAACYk/H8qj38Qmh0g/s1600/08.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;5.0.4&amp;nbsp; Manual PGA Memory Management&amp;nbsp;&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;In manual PGA memory management, you manually tune SQL work areas. The database administrator controlled the maximum size of SQL work areas by setting the following parameters:&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;SORT_AREA_SIZE&lt;/li&gt;&lt;li&gt;HASH_AREA_SIZE&lt;/li&gt;&lt;li&gt;BITMAP_MERGE_AREA_SIZE&lt;/li&gt;&lt;li&gt;CREATE_BITMAP_AREA_SIZE&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;Oracle strongly recommends that you leave automatic PGA memory management enabled. If you decide to tune SQL work areas manually, you must set the WORKAREA_SIZE_POLICY initialization parameter to MANUAL.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;5.0.5&amp;nbsp; Database Smart Flash Cache&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;If your database is running on Solaris or Oracle Linux, you can optionally add another memory component: Database Smart Flash Cache (the flash cache). The flash cache is an extension of the SGA-resident buffer cache, providing a level 2 cache for database blocks. It can improve response time and overall throughput, especially for read-intensive online transaction processing (OLTP) workloads. The flash cache resides on one or more flash disk devices, which are solid state storage devices that use flash memory.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;You can add flash cache when all of the following are true:&lt;/div&gt;&lt;ul&gt;&lt;li style="text-align: justify;"&gt;The Buffer Pool Advisory section of your Automatic Workload Repository (AWR) report or STATSPACK report indicates that doubling the size of the buffer cache would be beneficial.&lt;/li&gt;&lt;li style="text-align: justify;"&gt;db file sequential read is a top wait event.&lt;/li&gt;&lt;li style="text-align: justify;"&gt;You have spare CPU.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;As a general rule, size the flash cache to be between 2 times and 10 times the size of the buffer cache. Any multiplier less than two would not provide any benefit. If you are using automatic shared memory management, make the flash cache between 2 times and 10 times the size of SGA_TARGET. Using 80% of the size of SGA_TARGET instead of the full size would also suffice for this calculation.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;For each database block moved from the buffer cache to the flash cache, a small amount of metadata about the block is kept in the buffer cache. For a single instance database, the metadata consumes approximately 100 bytes. For an Oracle Real Application Clusters (Oracle RAC) database, it is closer to 200 bytes. You must therefore take this extra memory requirement into account when adding the flash cache.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;If you are managing memory manually, increase the size of the buffer cache by an amount approximately equal to the number of database blocks that fit into the flash cache multiplied by 100 (or 200 for Oracle RAC).&lt;/li&gt;&lt;li&gt;If you are using automatic shared memory management, increase the size of SGA_TARGET.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Following are the initialization parameters that you use to configure the flash cache.&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-SrEZhE2mYnQ/TvgQh7u6Z9I/AAAAAAAACYw/VlHELLEm7x8/s1600/09.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-SrEZhE2mYnQ/TvgQh7u6Z9I/AAAAAAAACYw/VlHELLEm7x8/s1600/09.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;You can use ALTER SYSTEM to set db_flash_cache_size to zero to disable the flash cache. Dynamically changing the size of the flash cache is not supported.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4858278767901421083-7012289731652219555?l=asghars.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asghars.blogspot.com/feeds/7012289731652219555/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://asghars.blogspot.com/2011/12/05-managing-oracle-instance-memory.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/7012289731652219555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/7012289731652219555'/><link rel='alternate' type='text/html' href='http://asghars.blogspot.com/2011/12/05-managing-oracle-instance-memory.html' title='05-Managing the Oracle Instance Memory'/><author><name>Muhammad Asghar Khan</name><uri>https://profiles.google.com/102545751511475719828</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-uiG6pTx0jQw/AAAAAAAAAAI/AAAAAAAAByM/7lMWjWkKRwc/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-WnqMVCpapJE/TvgEXraH82I/AAAAAAAACXQ/YEvhph7nMng/s72-c/01.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4858278767901421083.post-472528674918570562</id><published>2011-11-25T10:35:00.000+05:00</published><updated>2011-12-15T10:39:25.879+05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='RM-Auxiliary Database'/><category scheme='http://www.blogger.com/atom/ns#' term='RM-Flash Recovery Area'/><category scheme='http://www.blogger.com/atom/ns#' term='RM-Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='RM-Recovery Catalog'/><title type='text'>02 - RMAN Architecture</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div&gt;&lt;div style="text-align: justify;"&gt;Recovery Manager is a server-managed recovery (SMR). SMR refers to the ability of the database server to perform the backup operations. RMAN is integrated into the RDBMS, it has access to your data at the same level that the database itself uses: the data block. Block-level access is what distinguishes RMAN from any other backup utility&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The RMAN architecture has the following components:&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;RMAN Utility&lt;/li&gt;&lt;li&gt;Database Control File&lt;/li&gt;&lt;li&gt;RMAN Server Processes&lt;/li&gt;&lt;li&gt;Recovery Catalog&lt;/li&gt;&lt;li&gt;Auxiliary Database&lt;/li&gt;&lt;li&gt;Flash Recovery Area&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;2.0&amp;nbsp; RMAN Utility&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;RMAN is a standalone executable that makes a connection to the Oracle database to access internal backup and recovery packages (SYS schema). RMAN is not more than a command interpreter that takes commands you type and turns those commands into remote procedure calls (RPCs) that are executed at the database. The command language is unique to RMAN, and using it takes a little practice.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The RMAN utility is composed of two components: the executable file and the recover.bsq file. The recover.bsq file is the library file, from which the executable file extracts code for creating PL/SQL calls to the target database. The target database refers to the database that is being backed up. It is must be noted that the recover.bsq file and the executable file must be of the same version or nothing will work.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;RMAN always connects to the target database as a sysdba user. When you connect to the target, RMAN automatically supplies the “as sysdba” to the connection:&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-ZmP3_l45Q_s/TumCTZZk0dI/AAAAAAAACWo/eC20E0ajeFg/s1600/0.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-ZmP3_l45Q_s/TumCTZZk0dI/AAAAAAAACWo/eC20E0ajeFg/s1600/0.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;For remote connection to the target database, you need to create a tnsnames.ora entry that can connect you to the target database with a dedicated server process. RMAN cannot use Shared Servers to make a database connection. The difference between the two can be seen in the following sample tsnames.ora file.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&amp;nbsp;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;PROD_RMAN =&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;(DESCRIPTION =&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (ADDRESS_LIST =&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (ADDRESS = (PROTOCOL = TCP)&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (HOST = pc1)&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (PORT = 1521))&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (CONNECT_DATA =(SERVER = DEDICATED)&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (SERVICE_NAME = prod)&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;)&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; )&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;PROD =&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;(DESCRIPTION =&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (ADDRESS_LIST =&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (ADDRESS = (PROTOCOL = TCP)&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (HOST = pc1)&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (PORT = 1521))&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (CONNECT_DATA =(SERVER = SHARED)&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; (SERVICE_NAME = prod)&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;)&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;)&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;Running RMAN locally always make a bequeath connection to the database, requiring no password file setup and no tnsnames.ora configuration.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;2.1&amp;nbsp; Database Control File&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The database control file acts as a repository of database file information. RMAN uses the control file to compile file lists, obtain checkpoint information, and determine recoverability. The control file also acts as an RMAN data repository. After RMAN completes a backup of any portion of the database, it writes a record of that backup to the control file, along with checkpoint information about when the backup was started and completed.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The control file has two types of records: circular reuse records and noncircular reuse records. Circular reuse records are records that include information that can be aged out of the control file, for instance, archive log history information. Noncircular reuse records are those records that cannot be deleted from the control file. If the control file runs out of space for these records, the file expands to make more room. These records include datafile and log file lists. The record of RMAN backups in the control file falls into the category of circular reuse records, meaning that the records will get aged out if the control file section that contains them becomes full. It must be noted that if the control file does not have a record of your RMAN backup, the backup cannot easily be used by RMAN for recovery. This makes the control file a critical component of the RMAN architecture. You can set a larger timeframe for when the control file will age out records. This is controlled by the init.ora parameter CONTROL FILE_RECORD_KEEP_TIME. By default, this parameter is set to 7 (in days).&lt;/div&gt;&lt;div style="text-align: justify;"&gt;RMAN needs a read consistent view of the control file. With the constant updates from the database, this is nearly impossible. To get around this, RMAN uses the snapshot control file, an exact copy of your control file that is only used by RMAN during backup and resync operations. RMAN refreshes the snapshot control file from the actual control file, thus putting a momentary lock on the control file. Then, RMAN switches to the snapshot and uses it for the duration of the backup; in this way, it has read consistency without holding up database activity. By default, the snapshot control file exists in the ORACLE_HOME/dbs directory on Unix&amp;nbsp; platforms and in the ORACLE_HOME/database directory on Windows. It has a default name of SNCF&amp;lt;ORACLE_SID&amp;gt;.ORA.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;2.2&amp;nbsp; RMAN Server Processes&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;When RMAN makes a connection to the target database, two server processes are created at the target database. The primary process is used to make calls to packages in the SYS schema in order to perform the backup or recovery operations. The secondary, or shadow, process polls any long-running transactions in RMAN and then logs the information internally. You can view the results of this polling in the view V$SESSION_LONGOPS:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-1P1EQcpemK0/TumFgFh3H9I/AAAAAAAACWw/vP_7DDZOGqU/s1600/02.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-1P1EQcpemK0/TumFgFh3H9I/AAAAAAAACWw/vP_7DDZOGqU/s1600/02.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;You can also view these processes in the V$SESSION view.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;In addition to the two default processes, an individual process is created for every channel that you allocate during a backup or restore operation. Channel is the server process at the target database that coordinates the reads from the datafiles and the writes to the specified location during backup. During a restore, the channel coordinates reads from the backup location and the writing of data blocks to the datafile locations. There are only two kinds of channels: disk channels and tape channels. You cannot allocate both kinds of channels for a single backup operation—you are writing the backup either to disk or to tape.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;The RMAN server process that coordinates the work of the channels has access to two packages in the SYS schema: DBMS_RCVMAN and DBMS_BACKUP_RESTORE. Both of these RMAN packages are installed by default by running the catproc.sql script when the database is created. These packages have another important trait: they are hard-coded into the Oracle software library files, so they can be called even when the database is not open.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;2.3&amp;nbsp; Recovery Catalog&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;The recovery catalog is a repository for metadata about RMAN backups. In a sense, you can think of the recovery catalog as merely a copy of the pertinent information out of the control file that RMAN requires for backup and recovery purposes. To use a recovery catalog, you first connect from RMAN to the target database. Then, you make a second Net connection to the recovery catalog from within RMAN, like this:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-hPYdA7qaRhw/TumGIZMfM2I/AAAAAAAACW4/Gv0cHszadxE/s1600/03.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-hPYdA7qaRhw/TumGIZMfM2I/AAAAAAAACW4/Gv0cHszadxE/s1600/03.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;In the connect string to the catalog, you pass the username and password for the user that owns the RMAN catalog. Unlike with the target, the connection to the catalog is not a sysdba connection and does not need this privilege granted to it.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;A recovery catalog can serve as a repository for more than one target database, and as such can help centralize the administration of backups of many different databases. Inside of the recovery catalog are two packages: DBMS_RCVMAN and DBMS_RCVCAT. Oracle created a series of views, all prefixed with RC_, that can be used to extract information from the catalog.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;2.4&amp;nbsp; Auxiliary Database&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;The auxiliary database refers to the instance that will become host to restored files from the target database in the event of a tablespace point-in-time recovery (TSPITR), a duplication operation (cloning the database), or the creation of a standby database using RMAN backups. When you perform any of these tasks, you will be connecting to the target database and the auxiliary database at the same time from within RMAN. In this way, you can utilize the information about the backups in the target database control file to coordinate the restore of those backups to the auxiliary database location. The following shows the connection to both the target database (locally) and the auxiliary database (using an Oracle Net connection):&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-ESFP3Zhpso0/TumGh5RX6mI/AAAAAAAACXA/SN8utGFtg-c/s1600/04.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-ESFP3Zhpso0/TumGh5RX6mI/AAAAAAAACXA/SN8utGFtg-c/s1600/04.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;2.5&amp;nbsp; Flash Recovery Area&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;The FRA is a specific location on disk that you set up to house all the Oracle recovery files. Recovery files refers to all files that might be required for a media recovery operation: full datafile backups, incremental backups, datafile copies, backup control files, and archive logs. The FRA also functions as a repository for mirrored copies of online redo log files, the block-change tracking file, and for a current control file. The FRA manages recovery files internally, first based on database name, then on types of files, and then by the dates the files are generated. The files themselves are named according to the Oracle Managed Files (OMF) format.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;&lt;br /&gt;2.6&amp;nbsp; RMAN Memory Structure&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;RMAN utilize memory from PGA and sometime from SGA. There are two kinds of memory buffers. Input buffers are the buffers that are filled with data blocks read from files that are being backed up. Output buffers are the buffers that are filled when the memory-to-memory write occurs to determine whether a particular block needs to be backed up. The memory buffers differ depending on whether you are backing up to or restoring from disk or tape.&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;You can use the following query to monitor the size of buffers on a per-file basis while the backup is running:&lt;/div&gt;&lt;br /&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; text-align: left;"&gt;&lt;b&gt;SELECT set_count, device_type, type, filename, buffer_size,&amp;nbsp;&amp;nbsp;&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; text-align: left;"&gt;&lt;b&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; buffer_count, open_time, close_time &lt;br /&gt;FROM v$backup_async_io &lt;br /&gt;ORDER BY set_count,type, open_time, close_time;&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4858278767901421083-472528674918570562?l=asghars.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asghars.blogspot.com/feeds/472528674918570562/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://asghars.blogspot.com/2011/12/02-rman-architecture.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/472528674918570562'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/472528674918570562'/><link rel='alternate' type='text/html' href='http://asghars.blogspot.com/2011/12/02-rman-architecture.html' title='02 - RMAN Architecture'/><author><name>Muhammad Asghar Khan</name><uri>https://profiles.google.com/102545751511475719828</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-uiG6pTx0jQw/AAAAAAAAAAI/AAAAAAAAByM/7lMWjWkKRwc/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-ZmP3_l45Q_s/TumCTZZk0dI/AAAAAAAACWo/eC20E0ajeFg/s72-c/0.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4858278767901421083.post-5374293884890198212</id><published>2011-11-24T11:56:00.001+05:00</published><updated>2011-12-15T10:40:05.661+05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='RM-RMAN'/><category scheme='http://www.blogger.com/atom/ns#' term='RM-Restoration'/><category scheme='http://www.blogger.com/atom/ns#' term='RM-Instance Memory Used'/><category scheme='http://www.blogger.com/atom/ns#' term='RM-Logical Backups'/><category scheme='http://www.blogger.com/atom/ns#' term='RM-Recovery'/><category scheme='http://www.blogger.com/atom/ns#' term='RM-Database Structures Used'/><category scheme='http://www.blogger.com/atom/ns#' term='RM-Physical Backups'/><title type='text'>01- Backup and Recovery Overview</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div style="text-align: justify;"&gt;Backup and recovery refers to the various strategies and procedures involved in protecting your database against data loss and reconstructing the database after any kind of data loss.&lt;/div&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;1.0&amp;nbsp; Types of Backups&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Backup is a copy of whole or part of database that can be used to reconstruct that database. Backups can be broadly divided into physical backups and logical backups.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;1.0.1&amp;nbsp; Physical &amp;amp; Logical Backups&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Physical backups are backups of the physical files used in storing and recovering your database, such as datafiles, control files, and archived redo logs. Ultimately, every physical backup is a copy of files storing database information to some other location, whether on disk or some offline storage such as tape. It is also called file system backups. Physical backups are made with RMAN and OS Utilities.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Logical backups contain logical data (for example, tables or stored procedures) which are exported from a database with an Oracle Data Pump Export program (expdp) and stored in a binary file, for later re-importing into a database using the corresponding Data Pump Import program (impdp) utility. Note, RMAN does not do logical backup and recovery.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Physical or logical backup can be a whole or partial backup. In whole backup the copy of whole database is made while in partial backup a copy of the part of db is made.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;An Oracle database can run in one of two modes i.e.&amp;nbsp; &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ARCHIVELOG&lt;/span&gt;&lt;/b&gt; or &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;NOARCHIVELOG&lt;/span&gt;&lt;/b&gt; Mode. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;In &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ARCHIVELOG&lt;/span&gt;&lt;/b&gt; mode the physical or logical backup can be in the form of:&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li style="text-align: justify;"&gt;&lt;i&gt;Online/Hot/Open Backup; &lt;/i&gt;Online backup is made while the database is open and online. It is in in-consistent state, because the files being backed up don not contain all the changes made at all the system change numbers (SCNs). In-consistent backups need Oracle recovery to be performed from online and archived redo logs.&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;i&gt;Offline/Cold/Close Backup; &lt;/i&gt;Offline backup is made while the database is in shutdown mode i.e. in shutdown in normal mode. It can be both in consistent or in-consistent state. In consistent state all the data and control files are check pointed with the same SCNs. Because, it is in consistent state thus it does not need Oracle recovery.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;In &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;NOARCHIVELOG &lt;/span&gt;&lt;/b&gt;Mode the physical or logical backup can be in the form of:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;&lt;i&gt;Offline/Cold/Close Backup;&lt;/i&gt; Again it can be in consistent or in-consistent state. But performing in-consistent backup is not recommended in &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;NOARCHIVELOG&lt;/span&gt;&lt;/b&gt; mode.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;The following figure depicts the backup types graphically.&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-7OGiN9LyFfc/Ts3r7xCVCxI/AAAAAAAACTQ/Iw0n0jiVLyo/s1600/01.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-7OGiN9LyFfc/Ts3r7xCVCxI/AAAAAAAACTQ/Iw0n0jiVLyo/s1600/01.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;1.1&amp;nbsp; Database Recovery Process&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;Database recovery process involves constructing the contents of all or part of a database from a backup. It is a two phase process:&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Retrieving a copy of the datafile from backup, and&lt;/li&gt;&lt;li&gt;Reapplying changes to the file since the backup from the archived and online redo logs, to bring the database to a desired SCN since the backup (usually, the present).&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;To restore a datafile or control file from backup is to retrieve the file onto disk from a backup location on tape, disk or other media, and make it available to the database server. &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;To recover a datafile (also called performing recovery on a datafile), is to take a restored copy of the datafile and apply to it changes recorded in the database's redo logs. To recover a whole database is to perform recovery on each of its datafiles.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;Figure below illustrates the basic principle of backing up, restoring, and recovering a database. &lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-7G3eyeAKZ30/Ts3sYVZ3NZI/AAAAAAAACTY/zpHsFkAJnhg/s1600/02.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-7G3eyeAKZ30/Ts3sYVZ3NZI/AAAAAAAACTY/zpHsFkAJnhg/s1600/02.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;In this example a full backup of a database (copies of its datafiles and control file) is taken at SCN 100. Redo logs generated during the operation of the database capture all changes that occur between SCN 100 and SCN 500.&amp;nbsp; Along the way, some logs fill and are archived. At SCN 500, the datafiles of the database are lost due to a media failure. The database is then returned to its transaction-consistent state at SCN 500, by restoring the datafiles from the backup taken at SCN 100, then applying the transactions captured in the archived and online redo logs and undoing the un-committed transactions. &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;b&gt;1.1.1&amp;nbsp; Data Recovery Types&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The preceding scenario outlined the basics of the restore-and-recovery process. Several variants on this scenario are important to your backup and recovery work. The following forms of data recovery scenarios can be used:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Datafile Media Recovery&lt;/li&gt;&lt;li&gt;Complete, Incomplete and Point-In-Time Recovery&lt;/li&gt;&lt;li&gt;Crash Recovery&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;1.1.1.1&amp;nbsp; Datafile Media Recovery&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Datafile media recovery (often simply called media recovery) is the most basic form of user-initiated data recovery. It can be used to recover from a lost or damaged current datafile, SPFILE or control file and apply the changes that were recorded in the redo logs or archived redo logs but not in the datafiles for a tablespace that went offline without the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;OFFLINE NORMA&lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;L&lt;/span&gt;&lt;/b&gt; option.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The need to restore a datafile from backup is not detected automatically. The first step in performing media recovery is to manually restore the datafile by copying it from a backup. Once a datafile has been restored from backup, however, the database does automatically detect that this datafile is out of date and must undergo media recovery.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Situations that force you to perform media recovery are:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;You restore a backup of a datafile.&lt;/li&gt;&lt;li&gt;You restore a backup control file (even if all datafiles are current).&lt;/li&gt;&lt;li&gt;A datafile is taken offline (either by you or automatically by the database) without the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;OFFLINE NORMAL&lt;/span&gt;&lt;/b&gt; option.&lt;/li&gt;&lt;/ul&gt;A datafile that needs media recovery cannot be brought online until media recovery has been completed. A database cannot be opened if any of the online datafiles needs media recovery. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;1.1.1.2&amp;nbsp; Complete, Incomplete and Point-In-Time Recovery&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Complete recovery is recovering a database to the most recent point in time, without the loss of any committed transactions. Generally, the term "recovery" refers to complete recovery. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Occasionally, however, you need to return a database to its state at a past point in time. For example, to undo the effect of a user error, such as dropping or deleting the contents of a table, you may want to return the database to its contents before the delete occurred. In incomplete recovery, also known as point-in-time recovery, the goal is to restore the database to its state at some previous target SCN or time. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Point-in-time recovery is one possible response to a data loss caused by, for instance, a user error or logical corruption that goes unnoticed for some time.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Point-in-time recovery is also your only option if you have to perform a recovery and discover that you are missing an archived log covering time between the backup you are restoring from and the target SCN for the recovery. Without the missing log, you have no record of the updates to your datafiles during that period. Your only choice is to recover the database from the point in time of the restored backup, as far as the unbroken series of archived logs permits, then perform an OPEN RESETLOGS and abandon all changes in or after the missing log. (If you discover that you have lost archived logs and your database is still up, you should do a full backup immediately.)&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;b&gt;1.1.1.3&amp;nbsp; Crash Recovery&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The crash recovery process is a special form of recovery, which happens the first time an Oracle database instance is started after a crash (or &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SHUTDOWN ABORT&lt;/span&gt;&lt;/b&gt;).&amp;nbsp; In crash recovery, the goal is to bring the datafiles to a transaction-consistent state, preserving all committed changes up to the point when the instance failed.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Unlike the forms of recovery performed manually after a data loss, crash recovery uses only the online redo log files and current online datafiles, as left on disk after the instance failure. Archived logs are never used during crash recovery, and datafiles are never restored from backup.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The database applies any pending updates in the online redo logs to the online datafiles of your database. The result is that, whenever the database is restarted after a crash, the datafiles reflect all committed changes up to the moment when the haven't said failure occurred.&amp;nbsp; (After the database opens, any changes that were part of uncommitted transactions at the time of the crash are rolled back.)&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The duration of crash recovery is a function of the number of instances needing recovery, amount of redo generated in the redo threads of crashed instances since the last checkpoint, and user-configurable factors such as the number and size of redo log files, checkpoint frequency, and the parallel recovery setting. You can set parameters in the database server that can tune the duration of crash recovery. You can also tune checkpointing to optimize recovery time.&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;1.1.2&amp;nbsp; When Recovery is Required from Backup?&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;While there are several types of problem that can halt the normal operation of an Oracle database or affect database I/O operations, only two typically require DBA intervention and media recovery: &lt;br /&gt;&lt;ul&gt;&lt;li&gt;User Errors&lt;/li&gt;&lt;li&gt;Media Failure&lt;/li&gt;&lt;li&gt;Application Errors&lt;/li&gt;&lt;/ul&gt;Other failures may require DBA intervention to restart the database (after an instance failure) or allocate more disk space (after statement failure due to, e.g, a full datafile) but these situations will not generally cause data loss or require recovery from backup.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;1.1.2.1&amp;nbsp; User Errors&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;User errors occur when, either due to an error in application logic or a manual misstep; data in your database is changed or deleted incorrectly.&amp;nbsp; Data loss due to user error includes such missteps as dropping important tables or deleting or changing the contents of a table.&lt;br /&gt;&lt;br /&gt;While user training and careful management of privileges can prevent most user errors, your backup strategy determines how gracefully you recover the lost data when user error does cause data loss.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;1.1.2.2&amp;nbsp; Media Failure&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;A media failure is the failure of a read or write of a disk file required to run the database, due to a physical problem with the disk such as a head crash. Any database file can be vulnerable to a media failure. The appropriate recovery technique following a media failure depends on the files affected and the types of backup available.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;1.1.2.3&amp;nbsp; Application Errors&lt;/b&gt;&lt;br /&gt;Sometimes a software malfunction can corrupt data blocks. In a physical corruption, which is also called a media corruption, the database does not recognize the block at all: the checksum is invalid, the block contains all zeros, or the header and footer of the block do not match. If the corruption is not extensive, then you can often repair it easily with block media recovery.&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;1.2&amp;nbsp; Instance Memory Used in Backups&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;In this section, we look at the memory areas that we need to be concerned with in relationship to RMAN. The principal memory structure that we are concerned with in terms of RMAN and backup and recovery is the System Global Area (SGA).&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;The particular substructures of SGA used by RMAN are the shared pool and the large pool. RMAN uses several Oracle PL/SQL packages. These packages must be loaded into the shared pool. The large pool is used by RMAN in specific cases and is not used by default, even if it is configured.&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;1.3&amp;nbsp; Database Structures Used in Database Recovery&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;The files and other structures that make up an Oracle database store data and safeguard it against possible failures. The physical structures that make up an Oracle database and their role in the reconstruction of a database from backup are:&lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Datafiles and Data Blocks&lt;/li&gt;&lt;li&gt;Redo Logs&lt;/li&gt;&lt;li&gt;Control Files&lt;/li&gt;&lt;li&gt;Undo Segments&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;1.4&amp;nbsp; Oracle Recovery Manager &lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;RMAN is a stand-alone application that makes a client connection to the Oracle database to access internal backup and recovery packages. It is, at its very core, nothing more than a command interpreter that takes simplified commands you type and turns those commands into remote procedure calls (RPCs) that are executed at the database.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;RMAN gives you access to several data backup and recovery techniques and features not available at all with user-managed backup and recovery. The most noteworthy are:&lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Incremental backups; which provide more compact backups (storing only changed blocks) and faster datafile media recovery (reducing the need to apply redo during datafile media recovery)&lt;/li&gt;&lt;li&gt;Block media recovery; in which a datafile with only a small number of corrupt data blocks can be repaired without being taken offline or restored from backup&lt;/li&gt;&lt;li&gt;Unused block compression; where RMAN can in some cases skip unused datafile blocks during backups&lt;/li&gt;&lt;li&gt;Binary compression; which uses a compression mechanism integrated into the Oracle database server to reduce the size of backups&lt;/li&gt;&lt;li&gt;Encrypted backups; which uses encryption capabilities integrated into the Oracle database to store backups in an encrypted format&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;RMAN also reduces the administration work associated with your backup strategy. RMAN keeps an extensive record of metadata about backups, archived logs, and its own activities, known as the RMAN repository.&amp;nbsp; In restore operations, RMAN can use this information to eliminate the need for you to identify backup files for use in restores in most situations. You can also generate reports of backup activity using the information in the repository.&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;1.4.1&amp;nbsp; Files That RMAN Can Back Up&lt;/b&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;RMAN can back up all database files needed for efficient recovery in the event of a failure. RMAN supports backing up the following types of files:&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Datafiles, and image copies of datafiles&lt;/li&gt;&lt;li&gt;Control files, and image copies of control files&lt;/li&gt;&lt;li&gt;Archived redo logs&lt;/li&gt;&lt;li&gt;The current server parameter file&lt;/li&gt;&lt;li&gt;Backup pieces, containing other backups created by RMAN&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;i&gt;Note: Although the database depends on other types of files for operation, such as network configuration files, password files, and the contents of the Oracle home, these files cannot be backed up with RMAN. Likewise, some features of Oracle, such as external tables or the BFILE datatype, store data in files other than those listed here. RMAN cannot back up those files. You must use some non-RMAN backup solution for any files not in the preceding list.&lt;/i&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;1.4.2&amp;nbsp; RMAN Backup Destinations&lt;/b&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;RMAN can create and manage backups on disk and on tape, back up backups originally created on disk to tape, and restore database files from backups on disk or tape.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;Devices used for tape backup are often referred to as SBT (System Backup to Tape) devices. RMAN interacts with SBT devices through software known as a media management layer, or media manager.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;1.4.3&amp;nbsp; Full and Incremental Backups&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;Full backups are backups which include datafiles in their entirety. Full backups can be created with Recovery Manager or with operating system-level file copy commands.&amp;nbsp; &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;Incremental backups are based on the idea of making copies only of changed data blocks in a data file.&amp;nbsp; In recovery, extracting entire changed blocks from an incremental backup can substitute for application of redo for individual datafile updates during the time covered by the backup, shortening recovery times considerably.&amp;nbsp; Incremental backups can only be created with RMAN.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;1.4.4&amp;nbsp; Image Copies, Backup Sets and Backup Pieces&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;The results of an Oracle database backup created through RMAN can be either image copies or backup sets. An image copy is a bit-for-bit identical copy of a database file. RMAN can create image copy backups, although in the process, RMAN will check the contents for corruption, something that native operating-system file copy utilities cannot do. RMAN records image copies it creates in the RMAN repository, so that it can use them when restoring your database. Image copies can also be created using operating system commands such as cp in Unix or COPY in Windows.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;RMAN can also store its backups in an RMAN-specific format called a backup set. A backup set is a collection of files called backup pieces, each of which may contain the backup of one or several database files. A backup task performed in RMAN can create one or more backup sets, which are recorded in the RMAN repository. Backup sets are also the only form in which RMAN can write backups to media manager devices like tape libraries. Backup sets are only created and accessed through Recovery Manager.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4858278767901421083-5374293884890198212?l=asghars.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asghars.blogspot.com/feeds/5374293884890198212/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://asghars.blogspot.com/2011/11/01-backup-and-recovery-overview.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/5374293884890198212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/5374293884890198212'/><link rel='alternate' type='text/html' href='http://asghars.blogspot.com/2011/11/01-backup-and-recovery-overview.html' title='01- Backup and Recovery Overview'/><author><name>Muhammad Asghar Khan</name><uri>https://profiles.google.com/102545751511475719828</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-uiG6pTx0jQw/AAAAAAAAAAI/AAAAAAAAByM/7lMWjWkKRwc/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-7OGiN9LyFfc/Ts3r7xCVCxI/AAAAAAAACTQ/Iw0n0jiVLyo/s72-c/01.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4858278767901421083.post-3530829330771456636</id><published>2011-02-02T09:29:00.000+05:00</published><updated>2011-12-14T13:30:46.975+05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DB-Shutdown'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-Listener'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-Startup'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-Instance'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-Quiescing'/><title type='text'>04 - Managing the Oracle Instance</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;4.0  Oracle Database Management Framework&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;There are three major components of the Oracle database management framework: &lt;br /&gt;&lt;ol style="text-align: left;"&gt;&lt;li&gt;The Management Interface.&lt;/li&gt;&lt;li&gt;A listener that allows connection to the database.&amp;nbsp;&lt;/li&gt;&lt;li&gt;The database instance that is being managed. &lt;/li&gt;&lt;/ol&gt;&lt;div style="text-align: justify;"&gt;Oracle Corporation’s recommended sequence for starting a database is to start the Management Interface, then the database listener, and then the database. &lt;/div&gt;&lt;br /&gt;&lt;b&gt;4.0.1&amp;nbsp; Management Interface&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;This may be either a management agent running on the database server which connects it to Oracle Enterprise Manager Grid Control or the stand-alone Oracle Enterprise Manager Database Control/Database Console. Database Control is a tool for managing one database (though this database can be clustered). &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;To start Database Control, use the emctl utility. This will be located in the ORACLE_HOME/bin directory. The three commands to start or stop Database Control and to check its status are:&lt;/div&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;emctl start dbconsole &lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt; emctl stop dbconsole &lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt; emctl status dbconsole&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Figure below shows the startup of Database Control.&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-SzqsPHgfzLk/Ts3djKOgplI/AAAAAAAACSA/ibZBgrphwyc/s1600/06.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-SzqsPHgfzLk/Ts3djKOgplI/AAAAAAAACSA/ibZBgrphwyc/s1600/06.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;b&gt;&amp;nbsp;4.0.2&amp;nbsp; Database Listener&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;The database listener is a process that monitors a port for database connection requests. These requests use Oracle Net, Oracle’s proprietary communications protocol. Oracle Net is a layered protocol running over whatever underlying network protocol is in use, probably TCP/IP.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;There are two ways to start the database listener: &lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;With the lsnrctl utility&lt;/li&gt;&lt;li&gt;With Database Control &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;The lsnrctl utility is in the &lt;b style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;$ORACLE_HOME/bi&lt;/b&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;n&lt;/span&gt;&lt;/b&gt; directory. The key commands are&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;lsnrctl start [listener] &lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;lsnrctl status [listener]&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;where listener is the name of listener. This will have defaulted to LISTENER, which is correct in most cases. Figure below shows the startup of listener.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-dJRPl3vUHNc/Ts3eiTdvygI/AAAAAAAACSQ/KleEhybgkrc/s1600/08.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-hdplRQ85xL4/Ts3eUgjt02I/AAAAAAAACSI/hyBpAoZCmoI/s1600/07.gif" /&gt; &lt;img border="0" src="http://3.bp.blogspot.com/-dJRPl3vUHNc/Ts3eiTdvygI/AAAAAAAACSQ/KleEhybgkrc/s1600/08.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;4.0.3&amp;nbsp; Database Instance&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;4.0.3.1&amp;nbsp; Database Startup&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;When you start up a database, you create an instance of that database and you determine the state of the database. In fact, one does not start or stop a database: an instance may be started and stopped; a database is mounted and opened, and then dismounted and closed.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;To start an instance, the database must read instance configuration parameters (the initialization parameters) from either a server parameter file (SPFILE) or a text initialization parameter file.&lt;/div&gt;&lt;br /&gt;Database can be startup or shutdown from SQL*Plus, using the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;STARTUP&lt;/span&gt;&lt;/b&gt; and &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SHUTDOWN&lt;/span&gt;&lt;/b&gt; commands, or through Database Control.&lt;br /&gt;&lt;br /&gt;If you want to override the default initialization parameter file with a text initialization parameter file, you can specify the PFILE clause of the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;STARTUP&lt;/span&gt;&lt;/b&gt; command to identify the initialization parameter file.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;STARTUP PFILE = /u01/oracle/dbs/init.ora&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;You must perform some preliminary steps before attempting to start an instance of your database using SQL*Plus.&lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Ensure that environment variables are set so that you connect to the desired Oracle instance.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-AzgLJUNjIK4/Ts3hYjKCaaI/AAAAAAAACSg/s2-i5HVX0xU/s1600/09.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-AzgLJUNjIK4/Ts3hYjKCaaI/AAAAAAAACSg/s2-i5HVX0xU/s1600/09.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-v4Tm9TsIO6A/Ts3hsmWfi-I/AAAAAAAACSo/8PZLnuiP5aE/s1600/10.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;&amp;nbsp;Connect to Oracle Database as SYSDBA.Ordinary users cannot start up or shut down a database. This is because an ordinary user is authenticated against the data dictionary. It is logically impossible for an ordinary user to start up an instance and open or create a database, since the data dictionary cannot be read until the database is open.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-v4Tm9TsIO6A/Ts3hsmWfi-I/AAAAAAAACSo/8PZLnuiP5aE/s1600/10.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-v4Tm9TsIO6A/Ts3hsmWfi-I/AAAAAAAACSo/8PZLnuiP5aE/s1600/10.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dictionary authentication, anyone connecting with the above syntax cannot issue startup or shutdown&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; commands.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-mEonVj5APqQ/Ts3ioGWm_XI/AAAAAAAACSw/E8aH4zUY5-U/s1600/11.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-mEonVj5APqQ/Ts3ioGWm_XI/AAAAAAAACSw/E8aH4zUY5-U/s1600/11.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; Instruct Oracle to go to the external password file to validate the username/password combination or&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-7yz7VEdCAQw/Ts3hSJPAUxI/AAAAAAAACSY/wTsV7GCa_nA/s1600/12.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-7yz7VEdCAQw/Ts3hSJPAUxI/AAAAAAAACSY/wTsV7GCa_nA/s1600/12.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Use OS authentication; Oracle will go to the host operating system and check whether the OS user&amp;nbsp;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; running SQL*Plus is a member of the OS group that owns the Oracle software.&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;Note: SYSDBA and SYSOPER are not users; they are privileges that can be granted to users. By default, only user SYS has these privileges until they are deliberately granted to other users.&lt;/i&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;At any moment, a database will be in one of the following states:&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;SHUTDOWN&lt;/li&gt;&lt;li&gt;NOMOUNT&lt;/li&gt;&lt;li&gt;MOUNT&lt;/li&gt;&lt;li&gt;OPEN&lt;/li&gt;&lt;li&gt;RESTRICT&lt;/li&gt;&lt;/ul&gt;&lt;b&gt;4.0.3.1.1&amp;nbsp; SHUTDOWN State&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;When the database is &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SHUTDOWN&lt;/span&gt;&lt;/b&gt;, all files are closed and the instance does not exist.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;4.0.3.1.2&amp;nbsp; NOMOUNT State&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;In &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;NOMOUNT&lt;/span&gt;&lt;/b&gt; mode, the instance has been started, but no connection has been made to a database. Starting an instance is typically includes the following tasks: &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;Searching &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;$ORACLE_HOME/dbs&lt;/span&gt;&lt;/b&gt; for a parameter file of a particular name in this order:&lt;/li&gt;&lt;ul&gt;&lt;li&gt;spfile&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;$ORACLE_SID&lt;/span&gt;&lt;/b&gt;.ora&amp;nbsp;&lt;/li&gt;&lt;li&gt;If not found, spfile.ora&amp;nbsp;&lt;/li&gt;&lt;li&gt;If not found, init&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;$ORACLE_SID&lt;/span&gt;&lt;/b&gt;.ora &lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;       Specifying the PFILE parameter with &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;STARTUP&lt;/span&gt;&lt;/b&gt; overrides the default        behavior.&lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Allocating the SGA.&lt;/li&gt;&lt;li&gt;Starting the background processes.&amp;nbsp;&lt;/li&gt;&lt;li&gt;Opening the alert_&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;$ORACLE_SID&lt;/span&gt;&lt;/b&gt;.log file and the trace files. The location of the alert log is given by the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;BACKGROUND_DUMP_DEST&lt;/span&gt;&lt;/b&gt; parameter. &lt;/li&gt;&lt;/ul&gt;An instance is typically started only in &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;NOMOUNT&lt;/span&gt;&lt;/b&gt; mode during: &lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Database Creation&lt;/li&gt;&lt;li&gt;Re-creation of Control Files&amp;nbsp;&lt;/li&gt;&lt;li&gt;Backup &amp;amp; Recovery Scenarios &lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;Note: The only files used in NOMOUNT mode are the parameter file and the alert log. The parameters in the parameter file are used to build the SGA in memory and to start the background processes. Entries will be written out to the alert log describing this process.&lt;/i&gt;&lt;/div&gt;&lt;br /&gt;The startup process with &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;NOMOUNT &lt;/span&gt;&lt;/b&gt;mode is described graphically in the figure below.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-Q3oTV-8hckA/Ts3kYQf6BoI/AAAAAAAACS4/8oKQ5AZ4Eyk/s1600/13.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-Q3oTV-8hckA/Ts3kYQf6BoI/AAAAAAAACS4/8oKQ5AZ4Eyk/s1600/13.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;The following figure shows the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;STRATUP&lt;/span&gt;&lt;/b&gt; command with &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;NOMOUNT&lt;/span&gt;&lt;/b&gt; state.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-WBHHj8770vI/Ts3l9QuOgaI/AAAAAAAACTA/Yi2la1vjfoE/s1600/14.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-WBHHj8770vI/Ts3l9QuOgaI/AAAAAAAACTA/Yi2la1vjfoE/s1600/14.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The above startup process is documented in the &lt;b style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;alert_&lt;/span&gt;$ORACLE_SID&lt;/b&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;.log&lt;/span&gt;&lt;/b&gt; file as shown below:&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-NbS7YuEp-Qo/Ts3mQ1IzTvI/AAAAAAAACTI/Timyyr_C4LQ/s1600/15.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-NbS7YuEp-Qo/Ts3mQ1IzTvI/AAAAAAAACTI/Timyyr_C4LQ/s1600/15.gif" /&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/a&gt;&lt;/div&gt;&lt;b&gt;4.0.3.1.3&amp;nbsp; MOUNT State&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Once the instance is successfully started in &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;NOMOUNT&lt;/span&gt;&lt;/b&gt; state, it may be transitioned to &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;MOUNT&lt;/span&gt;&lt;/b&gt; state. Mounting a database includes the following tasks: &lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Associating a database with a previously started instance&lt;/li&gt;&lt;li style="text-align: justify;"&gt;Locating and opening the control files specified in the parameter file by using the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;CONTROL_FILES&lt;/span&gt;&lt;/b&gt; parameter&lt;/li&gt;&lt;li style="text-align: justify;"&gt;Reading the control files to obtain the names and statuses of the data files and online redo log files. However, no checks are performed to verify the existence of the data files and online redo log files at this time. &lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;An instance is typically started and mounts a database, but do not open it to perform specific maintenance operations. For example: &lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;Renaming data files (Data files for an offline tablespace can be renamed when the database is open)&lt;/li&gt;&lt;li&gt;Enabling and disabling online redo log file archiving options&lt;/li&gt;&lt;li&gt;Performing full database recovery &lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;Note: A database may be left in MOUNT mode even though an OPEN request has been made. This may be because the database needs to be recovered in some way.&lt;/i&gt;&lt;/div&gt;&lt;br /&gt;The startup process with &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;MOUNT&lt;/span&gt;&lt;/b&gt; mode is described graphically in the figure below.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-ZtrZIEMVO6I/TugvnV-1yuI/AAAAAAAACUY/bgDJuOfjJnM/s1600/01.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-ZtrZIEMVO6I/TugvnV-1yuI/AAAAAAAACUY/bgDJuOfjJnM/s1600/01.jpg" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://4.bp.blogspot.com/-FD3xD7BG7uk/Thp-bfcE3VI/AAAAAAAABi0/XD4elAD74JQ/s1600/04-Mount01.gif"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The following figure shows the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;STRATUP&lt;/span&gt;&lt;/b&gt; command with &lt;b style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;MOUNT&lt;/b&gt; state.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-6kpIIxFo0ag/TugwrSuGDRI/AAAAAAAACUg/FWC3kQu77HA/s1600/02.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="146" src="http://3.bp.blogspot.com/-6kpIIxFo0ag/TugwrSuGDRI/AAAAAAAACUg/FWC3kQu77HA/s320/02.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;The above startup process is documented in the &lt;b style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;alert_&lt;/span&gt;$ORACLE_SID&lt;/b&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;.log&lt;/span&gt;&lt;/b&gt; file as shown below:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-htEbmqtrcZg/TugxFRn4BKI/AAAAAAAACUo/U_fIHwsm8aU/s1600/03.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-htEbmqtrcZg/TugxFRn4BKI/AAAAAAAACUo/U_fIHwsm8aU/s1600/03.jpg" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;b&gt;4.0.3.1.4&amp;nbsp; OPEN State&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;In OPEN state the database is in normal operation mode. Normal database operation means that any valid user can connect to the database and perform typical data access operations. Opening the database includes the following tasks: &lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Opening the online data files&lt;/li&gt;&lt;li&gt;Opening the online redo log files &lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;If any of the data files or online redo log files are not present when you attempt to open the database, then the Oracle server returns an error. The Oracle server verifies that all the data files and online redo log files can be opened and checks the consistency of the database. If necessary, the System Monitor (SMON) background process initiates instance recovery.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The overall startup process is described graphically in the figure below.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-vcKpm2p2T6c/TugxqICUhSI/AAAAAAAACUw/mUWk8OlJNuE/s1600/04.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-vcKpm2p2T6c/TugxqICUhSI/AAAAAAAACUw/mUWk8OlJNuE/s1600/04.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The following figure shows the &lt;b style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;STRATU&lt;/b&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;P&lt;/span&gt;&lt;/b&gt; command which by default bring the database in open state.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-WwEmyuKj-_g/TugyDh-yf1I/AAAAAAAACU4/EUVCpgfPbgU/s1600/05.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-WwEmyuKj-_g/TugyDh-yf1I/AAAAAAAACU4/EUVCpgfPbgU/s1600/05.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The above startup process is documented in the&lt;b style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt; alert_&lt;/span&gt;$ORACLE_SID&lt;/b&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;.log&lt;/span&gt;&lt;/b&gt; file as shown below:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-BAOn6SHYLxk/TuhW0nRRM1I/AAAAAAAACVA/-fmfYaTTpjw/s1600/06.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-BAOn6SHYLxk/TuhW0nRRM1I/AAAAAAAACVA/-fmfYaTTpjw/s1600/06.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;4.0.3.1.5&amp;nbsp; RESTRICT State&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;You can start an instance, and optionally mount and open a database, in restricted mode so that the instance is available only to administrative personnel (not general database users). Use this mode of instance startup when you need to accomplish one of the following tasks:&amp;nbsp;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;Perform an export or import of data&lt;/li&gt;&lt;li&gt;Perform a data load (with SQL*Loader)&lt;/li&gt;&lt;li&gt;Temporarily prevent typical users from using data&lt;/li&gt;&lt;li&gt;Perform certain migration or upgrade operations &lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Opening a database in restricted mode allows database access only to users with both the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;CREATE SESSION &lt;/span&gt;&lt;/b&gt;and &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;RESTRICTED SESSION&lt;/span&gt;&lt;/b&gt; system privilege. When the instance is in restricted mode, a database administrator cannot access the instance remotely through an Oracle Net listener, but can only access the instance locally from the machine that the instance is running on. You can use the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;RESTRICT&lt;/span&gt;&lt;/b&gt; clause in combination with the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;MOUNT&lt;/span&gt;&lt;/b&gt;, &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;NOMOUNT&lt;/span&gt;&lt;/b&gt;, and &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;OPEN&lt;/span&gt;&lt;/b&gt; clauses. &lt;/div&gt;&lt;br /&gt;The following figure shows the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;STRATUP&lt;/span&gt;&lt;/b&gt; command with &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;RESTRICT&lt;/span&gt;&lt;/b&gt; state.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/--q1siRSATBo/TuhXpl0PSrI/AAAAAAAACVI/7gUbsGnNPRg/s1600/07.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/--q1siRSATBo/TuhXpl0PSrI/AAAAAAAACVI/7gUbsGnNPRg/s1600/07.jpg" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;The above startup process is documented in the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;alert_$ORACLE_SID.log&lt;/span&gt;&lt;/b&gt; file as shown below: &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-D5-yFUdvkqc/TuhX53R_XDI/AAAAAAAACVQ/blGfxd0DaIM/s1600/08.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-D5-yFUdvkqc/TuhX53R_XDI/AAAAAAAACVQ/blGfxd0DaIM/s1600/08.jpg" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;Note: If an instance is running, STARTUP FORCE shuts it down with mode ABORT before restarting it.&lt;/i&gt;&lt;/div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;4.0.3.1.6&amp;nbsp; Altering Database Availability &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;You can alter the availability of a database. You may want to do this in order to restrict access for maintenance reasons or to make the database read only.&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;When you need to perform specific administrative operations, the database must be started and mounted to an instance, but closed. You can achieve this scenario by starting the instance and mounting the database.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;ALTER DATABASE MOUNT;&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;You can make a mounted but closed database available for general use by opening the database.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;ALTER DATABASE OPEN;&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Opening a database in read-only mode enables you to query an open database while eliminating any potential for online data content changes.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;ALTER DATABASE OPEN READ ONLY;&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;You can also open a database in read/write mode (the default) as follows:&lt;br /&gt;&lt;br /&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;ALTER DATABASE OPEN READ WRITE;&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;4.0.3.2&amp;nbsp; Database Shutdown&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;To shut down a database and instance, you must first connect as SYSOPER or SYSDBA. To initiate database shutdown, use the SQL*Plus &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SHUTDOWN&lt;/span&gt;&lt;/b&gt; command or on EM Database Control page, you can click the Shutdown button to shut down the database and instance. If you then click the Advanced Options button, you can select the mode of the shutdown.&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;There are several modes for shutting down a database. Shutdown modes that wait for users to disconnect or for transactions to complete have a limit on the amount of time that they wait. If all events blocking the shutdown do not occur within one hour, the shutdown command cancels with the following message: &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;ORA-01013: user requested cancel of current operation&lt;br /&gt;&lt;br /&gt;Following are the different shutdown modes:&lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;NORMAL&lt;/li&gt;&lt;li&gt;IMMEDIATE&lt;/li&gt;&lt;li&gt;TRANSACTIONAL&lt;/li&gt;&lt;li&gt;ABORT &lt;/li&gt;&lt;/ul&gt;&lt;b&gt;4.0.3.2.1&amp;nbsp; NORMAL Mode&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;To shut down a database in normal situations, use the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SHUTDOWN&lt;/span&gt;&lt;/b&gt; command with the &lt;b style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;NORMAL&lt;/b&gt; clause:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-sZjLK9HFrZ8/TuhZI4rxdVI/AAAAAAAACVY/c58NG81c1zs/s1600/09.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-sZjLK9HFrZ8/TuhZI4rxdVI/AAAAAAAACVY/c58NG81c1zs/s1600/09.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The NORMAL clause is optional, because this is the default shutdown method if no clause is provided. Normal database shutdown proceeds with the following conditions: &lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;No new connections are allowed after the statement is issued.&lt;/li&gt;&lt;li&gt;Before the database is shut down, the database waits for all currently connected users to disconnect from the database.&lt;/li&gt;&lt;/ul&gt;The next startup of the database will not require any instance recovery procedures.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;Note: Typically, a normal shutdown is useless: there is always someone logged on, even if it is only the Database Control process.&lt;/i&gt;&lt;/div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;4.0.3.2.2&amp;nbsp; IMMEDIATE Mode&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;It is the most typically used option. To shut down a database immediately, use the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SHUTDOWN&lt;/span&gt;&lt;/b&gt; command with the&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt; IMMEDIATE&lt;/span&gt;&lt;/b&gt; clause:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-ZNl27smj0e8/TuhZowcTZ4I/AAAAAAAACVg/2zgv9FkghNQ/s1600/10.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-ZNl27smj0e8/TuhZowcTZ4I/AAAAAAAACVg/2zgv9FkghNQ/s1600/10.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Use immediate database shutdown only in the following situations: &lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;To initiate an automated and unattended backup&lt;/li&gt;&lt;li&gt;When a power shutdown is going to occur soon&lt;/li&gt;&lt;li&gt;When the database or one of its applications is functioning irregularly and you cannot contact users to ask them to log off or they are unable to log off&lt;/li&gt;&lt;/ul&gt;Immediate database shutdown proceeds with the following conditions: &lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li style="text-align: justify;"&gt;No new connections are allowed, nor are new transactions allowed to be started, after the statement is issued.&lt;/li&gt;&lt;li style="text-align: justify;"&gt;Any uncommitted transactions are rolled back. (If long uncommitted transaction exists, this method of shutdown might not complete quickly, despite its name.)&lt;/li&gt;&lt;li style="text-align: justify;"&gt;Oracle Database does not wait for users currently connected to the database to disconnect. The database implicitly rolls back active transactions and disconnects all connected users. &lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;The next startup of the database will not require any instance recovery procedures. The figure below shows the contents of the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;alert_$ORACLE_SID.log&lt;/span&gt;&lt;/b&gt; file when the database is shutdown immediately.&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;b&gt;4.0.3.2.3&amp;nbsp; TRANSACTIONAL Mode&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;When you want to perform a planned shutdown of an instance while allowing active transactions to complete first, use the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SHUTDOWN &lt;/span&gt;&lt;/b&gt;command with the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;TRANSACTIONAL&lt;/span&gt;&lt;/b&gt; clause:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-bzjMkTTyUHM/TuhaPzY3F1I/AAAAAAAACVo/258ET81GutA/s1600/11.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-bzjMkTTyUHM/TuhaPzY3F1I/AAAAAAAACVo/258ET81GutA/s1600/11.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;Transactional database shutdown proceeds with the following conditions: &lt;br /&gt;&lt;ol style="text-align: justify;"&gt;&lt;li&gt;No new connections are allowed, nor are new transactions allowed to be started, after the statement is issued.&lt;/li&gt;&lt;li&gt;After all transactions have completed, any client still connected to the instance is disconnected.&lt;/li&gt;&lt;li&gt;At this point, the instance shuts down just as it would when a &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SHUTDOWN IMMEDIATE&lt;/span&gt;&lt;/b&gt; statement is submitted. &lt;/li&gt;&lt;/ol&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;A transactional shutdown prevents clients from losing work, and at the same time, does not require all users to log off. The next startup of the database will not require any instance recovery procedures.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;4.0.3.2.4&amp;nbsp; ABORT Mode&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;You can shut down a database instantaneously by aborting the database instance. Use the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SHUTDOWN &lt;/span&gt;&lt;/b&gt;command with the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ABORT&lt;/span&gt;&lt;/b&gt; clause:&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-lN0VNttoKpI/Tuhau-7Qx3I/AAAAAAAACVw/CxviznY0Jas/s1600/12.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-lN0VNttoKpI/Tuhau-7Qx3I/AAAAAAAACVw/CxviznY0Jas/s1600/12.gif" /&gt;&lt;/a&gt;&lt;/div&gt;Use abort database shutdown only in the following situations:&lt;br /&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;You need to shut down the database instantaneously (for example, if you know a power shutdown is going to occur in one minute).&lt;/li&gt;&lt;li&gt;You experience problems when starting a database instance. &lt;/li&gt;&lt;/ul&gt;An aborted database shutdown proceeds with the following conditions: &lt;br /&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;No new connections are allowed, nor are new transactions allowed to be started, after the statement is issued.&lt;/li&gt;&lt;li&gt;Current client SQL statements being processed by Oracle Database are immediately terminated.&lt;/li&gt;&lt;li&gt;Uncommitted transactions are not rolled back.&lt;/li&gt;&lt;li&gt;Oracle Database does not wait for users currently connected to the database to disconnect. The database implicitly disconnects all connected users. &lt;/li&gt;&lt;/ul&gt;The next startup of the database will require instance recovery procedures. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;4.0.3.3&amp;nbsp; Quiescing a Database &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;In quiesced state you want to put a database in a state that allows only DBA transactions, queries, fetches, or PL/SQL statements. Without the ability to quiesce the database, you would need to shut down the database and reopen it in restricted mode. This is a serious restriction, especially for systems requiring 24x7 availability.&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;The quiesced state lets administrators perform actions that cannot safely be done otherwise. These actions include: &lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;Actions that fail if concurrent user transactions access the same object--for example, changing the schema of a database table or adding a column to an existing table where a no-wait lock is required.&lt;/li&gt;&lt;li&gt;Actions whose undesirable intermediate effect can be seen by concurrent user transactions--for example, a multistep procedure for reorganizing a table when the table is first exported, then dropped, and finally imported. A concurrent user who attempts to access the table after it was dropped, but before import, would not have an accurate view of the situation. &lt;/li&gt;&lt;/ul&gt;To place a database into a quiesced state, issue the following statement:&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-MFmIoODzNLQ/Tuhba6QNxJI/AAAAAAAACV4/lFZ1-m4onSI/s1600/13.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-MFmIoODzNLQ/Tuhba6QNxJI/AAAAAAAACV4/lFZ1-m4onSI/s1600/13.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Non-DBA active sessions will continue until they become inactive. Once all non-DBA sessions become inactive, the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ALTER SYSTEM QUIESCE RESTRICTED&lt;/span&gt;&lt;/b&gt; statement completes, and the database is in a quiesced state. In an Oracle Real Application Clusters environment, this statement affects all instances, not just the one that issues the statement. You can determine the sessions that are blocking the quiesce operation by querying the V$BLOCKING_QUIESCE and V$SESSION view.&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;SELECT bl.sid, user, osuser, type, program&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;FROM v$blocking_quiesce bl, v$session se&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;where bl.sid = se.sid;&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;You can query the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ACTIVE_STATE&lt;/span&gt;&lt;/b&gt; column of the V$INSTANCE view to see the current state of an instance.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-PE6MbAZUKRY/TuhbvzghsxI/AAAAAAAACWA/5DPitDmoYN0/s1600/14.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-PE6MbAZUKRY/TuhbvzghsxI/AAAAAAAACWA/5DPitDmoYN0/s1600/14.gif" /&gt;&lt;/a&gt;&lt;/div&gt;The following statement restores the database to normal operation:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-M868o4mE0p0/TuhcEaLk49I/AAAAAAAACWI/D7b5aWVBZyI/s1600/15.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-M868o4mE0p0/TuhcEaLk49I/AAAAAAAACWI/D7b5aWVBZyI/s1600/15.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;Note: Here DBA is defined only as user SYS or SYSTEM. Also you cannot perform a cold backup when the database is in the quiesced state.&lt;/i&gt;&lt;/div&gt;&lt;br /&gt;&lt;b&gt;4.0.3.4&amp;nbsp; Suspending and Resuming a Database&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Suspended state halts all I/O to datafiles and control files. When the database is suspended all preexisting I/O operations are allowed to complete and any new database accesses are placed in a queued state. The suspend command is not specific to an instance. In an Oracle Real Application Clusters environment, when you issue the suspend command on one system, internal locking mechanisms propagate the halt request across instances, thereby quiescing all active instances in a given cluster.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The suspended state lets you back up a database without I/O interference.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;To place a database into a suspended state, issue the following statement:&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-pOUplIXE-RI/TuhcfcAFZrI/AAAAAAAACWQ/RYnrQnMACNw/s1600/16.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-pOUplIXE-RI/TuhcfcAFZrI/AAAAAAAACWQ/RYnrQnMACNw/s1600/16.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The V$INSTANCE view can be queried to confirm database status.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-NawLYiV-DkY/TuhcqF3pDZI/AAAAAAAACWY/qLv8niVKLqA/s1600/17.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-NawLYiV-DkY/TuhcqF3pDZI/AAAAAAAACWY/qLv8niVKLqA/s1600/17.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The following statement restores the database to normal operation:&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-8h26RTrMtMU/Tuhc0le25XI/AAAAAAAACWg/mQYmDe0mPso/s1600/18.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-8h26RTrMtMU/Tuhc0le25XI/AAAAAAAACWg/mQYmDe0mPso/s1600/18.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4858278767901421083-3530829330771456636?l=asghars.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asghars.blogspot.com/feeds/3530829330771456636/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://asghars.blogspot.com/2011/02/managing-oracle-instance-oracle.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/3530829330771456636'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/3530829330771456636'/><link rel='alternate' type='text/html' href='http://asghars.blogspot.com/2011/02/managing-oracle-instance-oracle.html' title='04 - Managing the Oracle Instance'/><author><name>Muhammad Asghar Khan</name><uri>https://profiles.google.com/102545751511475719828</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-uiG6pTx0jQw/AAAAAAAAAAI/AAAAAAAAByM/7lMWjWkKRwc/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-SzqsPHgfzLk/Ts3djKOgplI/AAAAAAAACSA/ibZBgrphwyc/s72-c/06.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4858278767901421083.post-8226416485880514495</id><published>2011-02-01T11:30:00.000+05:00</published><updated>2011-12-14T13:29:45.768+05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DB-Shared Server'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-User Processes'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-Instance'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-Background Processes'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-Server Processes'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-Dedicated Server'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-Database'/><title type='text'>03 - Oracle Database Server Architecture</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div&gt;&lt;div&gt;&lt;div style="text-align: justify;"&gt;Oracle is designed to be a very portable database; it is available on every platform, from Windows to UNIX to mainframes. For this reason, the physical architecture of Oracle looks different on different operating systems. Even though the physical mechanisms used to implement Oracle from platform to platform vary, the architecture is sufficiently generalized so that you can get a good understanding of how Oracle works on all platforms.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;3.0&amp;nbsp; Database Server Architecture&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The Oracle database server consists of two entities, an Oracle Instance and an Oracle Database.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;Instanc&lt;/i&gt;e is a set of oracle background processes (on UNIX) or single threaded process (on Windows) and shared memory area, which is shared across those processes/threads running on a single computer. Thus an instance can exist without any disk storage at all.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;Database&lt;/i&gt; is a collection of physical operating system files or disks in case of Automatic Storage Management (ASM) or RAW partitions.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The relationship between database and instance is that a database may be mounted and opened by many instances, while an instance may mount and open a single database in its entire lifetime.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The following figure depicts graphically the previous paragraphs.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-kVMjVxhjZkU/TsSM7QHrGSI/AAAAAAAACHk/0Ahxp9Bf4_M/s1600/01.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-kVMjVxhjZkU/TsSM7QHrGSI/AAAAAAAACHk/0Ahxp9Bf4_M/s1600/01.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;Let’s verify it practically; login as oracle user and perform the following steps.&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Use the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ps&lt;/span&gt;&lt;/b&gt; command to see all the processes being run by the user oracle (the Oracle software owner). &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/--HgT1DX9bFA/TsSN4doNrzI/AAAAAAAACHs/j6arhQGd45o/s1600/02.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/--HgT1DX9bFA/TsSN4doNrzI/AAAAAAAACHs/j6arhQGd45o/s1600/02.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; There are no Oracle server processes whatsoever at this point.&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Now start up SQL*Plus and connect AS SYSDBA. &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-1Z16dHHCOQs/TsSOPfcJ_JI/AAAAAAAACH0/_T6neg85AGg/s1600/03.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-1Z16dHHCOQs/TsSOPfcJ_JI/AAAAAAAACH0/_T6neg85AGg/s1600/03.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;Again check process status our “instance” right now consists solely of the Oracle server process (oracleorcl).&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-cXOzvPYkIbo/TsSOiYpPQfI/AAAAAAAACH8/wY6YaKSZie4/s1600/04.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-cXOzvPYkIbo/TsSOiYpPQfI/AAAAAAAACH8/wY6YaKSZie4/s1600/04.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;Start instance in NOMOUNT mode. In NOMOUNT mode, the instance has been started, but no connection has been made to a database. &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-Ww1Gp8C7Z7w/TsSPOX2X3iI/AAAAAAAACIE/cQ6FPrNsjz4/s1600/05.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-Ww1Gp8C7Z7w/TsSPOX2X3iI/AAAAAAAACIE/cQ6FPrNsjz4/s1600/05.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;Now we have what we would call an “instance”. Through &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ps&lt;/span&gt;&lt;/b&gt; we can check the background processes that make up our instance. &lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-6EmTzeCJnqs/TsSPq3dsPHI/AAAAAAAACIM/GyPkv0OYXAI/s1600/06.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-6EmTzeCJnqs/TsSPq3dsPHI/AAAAAAAACIM/GyPkv0OYXAI/s1600/06.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;We can also verify the shared memory area allocated to the instance as: &lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-VFU-q9H2l5M/TsSQB5wNVUI/AAAAAAAACIU/vzavTCRg0lk/s1600/07.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-VFU-q9H2l5M/TsSQB5wNVUI/AAAAAAAACIU/vzavTCRg0lk/s1600/07.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;At this stage we don’t have any database i.e. no database is mounted and opened by our instance. We can verify it by querying the database as: &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-a2Jkui1xQhg/TsSQgyysoqI/AAAAAAAACIc/2ZIoT819xCc/s1600/08.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-a2Jkui1xQhg/TsSQgyysoqI/AAAAAAAACIc/2ZIoT819xCc/s1600/08.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;To bring life into the database, alter the state of instance to MOUNT and then OPEN.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-EPdzqnCSYoc/TsSQy9Flw0I/AAAAAAAACIk/rCrADk5tAeA/s1600/09.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-EPdzqnCSYoc/TsSQy9Flw0I/AAAAAAAACIk/rCrADk5tAeA/s1600/09.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;We can use a simple query against some Oracle dynamic views, specifically &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;V$DATAFILE&lt;/span&gt;&lt;/b&gt;, &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;V$LOGFILE&lt;/span&gt;&lt;/b&gt;, and &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;V$CONTROLFILE&lt;/span&gt;&lt;/b&gt;, to list the files that make up this database.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-tFAHdUQpSzA/TsSRM1qxGYI/AAAAAAAACIs/BzbYMWKQUAg/s1600/10.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-tFAHdUQpSzA/TsSRM1qxGYI/AAAAAAAACIs/BzbYMWKQUAg/s1600/10.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-wRzPXVucZ5c/TsSSKC16OpI/AAAAAAAACJA/Nlj5bahKfmY/s1600/11.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-wRzPXVucZ5c/TsSSKC16OpI/AAAAAAAACJA/Nlj5bahKfmY/s1600/11.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Let’s check the relationship between instance and database. If we close this database and try to open it again, we’ll discover that we can’t. It’s because an instance can mount and open at most one database in its life. We must discard this instance and create a new one in order to open this or any other database. &lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-zNjhiw_l_gc/TsSSdciDeAI/AAAAAAAACJI/3Pyv6kWNgz4/s1600/12.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-zNjhiw_l_gc/TsSSdciDeAI/AAAAAAAACJI/3Pyv6kWNgz4/s1600/12.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;3.1&amp;nbsp; Oracle Instance &lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;When an oracle instance is started on a server, the Oracle software allocates a shared memory area called the System Global Area (SGA) and starts several Oracle background processes.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The following figure depicts the overall architecture of the Oracle Instance.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-pgCGRAx-C3A/TsSTC5b2izI/AAAAAAAACJQ/p0zFXD29yq4/s1600/13.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-pgCGRAx-C3A/TsSTC5b2izI/AAAAAAAACJQ/p0zFXD29yq4/s1600/13.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;3.1.1&amp;nbsp; System Global Area&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;SGA contain data and control information for one Oracle database instance. If multiple users are concurrently connected to the same instance, then the data in the instance’s SGA is shared among the users. Consequently, the SGA is sometimes called the shared global area. &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;All components (e.g. Java Pool, Large Pool) of SGA allocate and de-allocate space in units of granules. Granule size is determined by total SGA size. A single granule is an area of memory 4 MB, 8 MB, or 16 MB in size. The granule is the smallest unit of allocation, so if you ask for a Java pool of 5MB and your granule size is 4MB, Oracle will actually allocate 8MB to the Java pool (8 being the smallest number greater than or equal to 5 that is a multiple of the granule size of 4).&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;The Automatic Shared Memory Management feature simplifies the SGA memory management significantly. A DBA can simply specify the total amount of SGA memory available to an instance using the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SGA_TARGET&lt;/span&gt;&lt;/b&gt; initialization parameter and the Oracle Database will automatically distribute this memory among various subcomponents to ensure most effective memory utilization. If &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SGA_TARGET&lt;/span&gt;&lt;/b&gt; is set to a value greater than &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SGA_MAX_SIZE&lt;/span&gt;&lt;/b&gt; at startup, then the latter is bumped up to accommodate &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SGA_TARGET&lt;/span&gt;&lt;/b&gt;. Note some SGA components like &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DB_KEEP_CACHE_SIZE&lt;/span&gt;&lt;/b&gt;, &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DB_RECYCLE_CACHE_SIZE&lt;/span&gt;&lt;/b&gt; and&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt; DB_nK_CACHE_SIZE&lt;/span&gt;&lt;/b&gt; are not automatically managed.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;The SGA contains the following memory components:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;Database Buffer Cache&lt;/li&gt;&lt;li&gt;Redo Log Buffer Cache&lt;/li&gt;&lt;li&gt;Shared Pool&lt;/li&gt;&lt;li&gt;Large Pool&lt;/li&gt;&lt;li&gt;Java Pool&lt;/li&gt;&lt;li&gt;Streams Pool&lt;/li&gt;&lt;li&gt;Fixed SGA&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The following dynamic views can be used to investigate the information abut SGA.&amp;nbsp;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;V$SGAINFO&lt;/b&gt;&lt;/li&gt;&lt;li style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;V$SGA_DYNAMIC_COMPONENTS&amp;nbsp;&lt;/b&gt;&lt;/li&gt;&lt;li style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;V$SGA_RESIZE_OPS&amp;nbsp;&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;V$SGA_TARGET_ADVICE&lt;/span&gt;&lt;/b&gt; &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-EX-qubuX3MA/TsSUGlasFMI/AAAAAAAACJY/MRgiNMsv8MU/s1600/14.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="311" src="http://2.bp.blogspot.com/-EX-qubuX3MA/TsSUGlasFMI/AAAAAAAACJY/MRgiNMsv8MU/s400/14.gif" width="400" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-35kGNirQENo/TsSUSceTZaI/AAAAAAAACJg/dsHd62eJeow/s1600/15.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-35kGNirQENo/TsSUSceTZaI/AAAAAAAACJg/dsHd62eJeow/s1600/15.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;The following figure depicts the internals of SGA. &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-1WxVMjQE_oI/TsSUm2v6WyI/AAAAAAAACJo/PJ9lj40lxDo/s1600/16.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-1WxVMjQE_oI/TsSUm2v6WyI/AAAAAAAACJo/PJ9lj40lxDo/s1600/16.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;3.1.1.1&amp;nbsp; Database Buffer Cache &lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;The database buffer cache is the portion of SGA that holds copies of data blocks read from datafiles. All user processes concurrently connected to the instance share access to the database buffer cache. &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;Oracle supports multiple block sizes in a database. You specify the standard block size by setting the initialization parameter &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DB_BLOCK_SIZE&lt;/span&gt;&lt;/b&gt;. The allowed values for &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DB_BLOCK_SIZE&lt;/span&gt;&lt;/b&gt; are from 2K to 32K. The sizes and numbers of non-standard block size buffers are specified by the following parameters:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DB_2K_CACHE_SIZE &lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DB_4K_CACHE_SIZE&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DB_8K_CACHE_SIZE&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DB_16K_CACHE_SIZE&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DB_32K_CACHE_SIZE&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;You can configure the database buffer cache with separate buffer pools that either keep data in the buffer cache or make the buffers available for new data immediately after using the data blocks.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;The DEFAULT ( &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DB_BLOCK_SIZE&lt;/span&gt;&lt;/b&gt;) buffer pool contains data blocks from schema objects that are not assigned to any buffer pool, as well as schema objects that are explicitly assigned to the DEFAULT pool&lt;/li&gt;&lt;li&gt;The KEEP (&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DB_KEEP_CACHE_SIZE&lt;/span&gt;&lt;/b&gt;) buffer pool retains the schema object’s data blocks in memory.&amp;nbsp;&lt;/li&gt;&lt;li&gt;The RECYCLE (&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DB_RECYCLE_CACHE_SIZE&lt;/span&gt;&lt;/b&gt;) buffer pool eliminates data blocks from memory as soon as they are no longer needed.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;Note: Multiple buffer pools are only available for the standard block size. Non-standard block size caches have a single DEFAULT pool.&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/i&gt;&amp;nbsp;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The buffers can be in the form of:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Free Buffers do not contain any useful data and are available for use.&lt;/li&gt;&lt;li&gt;Pinned Buffers are currently being accessed.&lt;/li&gt;&lt;li&gt;Dirty Buffers contain data that has been modified but has not yet been written to disk. &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;When configuring a new instance, it is impossible to know the correct size for the buffer cache. Typically, a database administrator makes a first estimate for the cache size, then runs a representative workload on the instance and examines the relevant statistics to see whether the cache is under or over configured.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;3.1.1.2&amp;nbsp; Redo Log Buffer Cache&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;When a server process changes data in the data buffer cache (via an insert, a delete, or an update), it generates redo data, which is recorded in the redo log buffer. The log writer process (LGWR) writes redo information from the redo log buffer in memory to the redo log files on disk.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The initialization parameter LOG_BUFFER determines the size (in bytes) of the redo log buffer. In general, larger values reduce log file I/O, particularly if transactions are long or numerous. The default setting is either 512 kilobytes (KB) or 128 KB times the setting of the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;CPU_COUNT&lt;/span&gt;&lt;/b&gt; parameter, whichever is greater.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The redo log buffer is a circular buffer—the log writer process writes the redo entries from the redo log buffer to the redo log files, and server processes write new redo log entries over the entries that have been written to the redo log files. You only need to have a small redo log buffer, about 1MB or so. Large redo log buffers will reduce your log file I/O (especially if you have large or many transactions), but your commits will take longer as well.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;b&gt;3.1.1.3&amp;nbsp; Shared Pool&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The shared pool portion of the SGA contains the library cache, the dictionary cache, buffers for parallel execution messages, and control structures. The total size of the shared pool is determined by the initialization parameter &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SHARED_POOL_SIZE&lt;/span&gt;&lt;/b&gt;. The default value of this parameter is 8MB on 32-bit platforms and 64MB on 64-bit platforms.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;&lt;span style="font-family: inherit;"&gt;Library Cache:&lt;/span&gt;&lt;/i&gt; The library cache includes the shared SQL areas, private SQL areas (in the case of a shared server configuration), PL/SQL procedures and packages, and control structures such as locks and library cache handles.&lt;/li&gt;&lt;li&gt;&lt;i&gt;Dictionary Cache: &lt;/i&gt;The data dictionary is a collection of database tables and views containing reference information about the database, its structures, and its users. The data dictionary cache is also known as the row cache because it holds data as rows instead of buffers (which hold entire blocks of data). &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;3.1.1.4&amp;nbsp; Large Pool&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;An optional memory area to provide large memory allocations for:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Session memory for the shared server and the Oracle XA interface (used where transactions interact with more than one database).&lt;/li&gt;&lt;li&gt;I/O server processes.&lt;/li&gt;&lt;li&gt;Oracle backup and restore operations.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;3.1.1.5&amp;nbsp; Java Pool&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: justify;"&gt;Java pool memory is used for all session-specific Java code and data within the JVM. In dedicated server mode, the Java pool includes the shared part of each Java class, which is actually used per session. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The parameter &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;JAVA_POOL_SIZE&lt;/span&gt;&lt;/b&gt; is used to fix the amount of memory allocated to the Java pool for all session-specific Java code and data.&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;b&gt;3.1.1.6&amp;nbsp; Streams Pool&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The Streams pool is a new SGA structure starting in Oracle 10g. The Streams pool is used to buffer queue messages used by the Streams process as it is moving/copying data from one database to another. The Streams pool will only be important in systems using the Streams database feature. In those environments, it should be set in order to avoid “stealing” 10 percent of the Shared pool for this feature.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;3.1.1.7&amp;nbsp; Fixed SGA&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Fixed SGA contains a set of variables that point to other components of the SGA. It is like a bootstrap section of the SGA. This part is fixed for each release of oracle and can’t be altered by any parameter settings.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;3.1.2&amp;nbsp; Oracle Processes&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;A process is a mechanism in an operating system that can run a series of steps. A process normally has its own private memory area in which it runs. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Oracle is a multiple-process (multi-user) database system which uses several processes to run different parts of the Oracle code and additional processes for the users—either one process for each connected user or one or more processes shared by multiple users.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The processes in an Oracle system can be categorized into two major groups:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;User Processes;&lt;/b&gt; run the application or oracle tool code.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Oracle Server Processes;&lt;/b&gt; run the oracle database server code. They include Server Processes and Background Processes.&lt;/li&gt;&lt;/ul&gt;The process structure varies for different Oracle configurations, depending on the operating system and the choice of Oracle options. The code for connected users can be configured as a dedicated server or a shared server.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;With dedicated server configuration, Oracle will create a new dedicated process for incoming connection for each session. There is a one-to-one mapping between a connection to the database and a server process or thread.&lt;/li&gt;&lt;li&gt;With shared server configuration, Oracle uses a pool of “shared processes” for a large community of users. A process (or set of processes) called dispatchers are used by the user process to talk to shared process.&lt;/li&gt;&lt;/ul&gt;&lt;b&gt;3.1.2.1&amp;nbsp; User Processes&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;When a user runs an application program (e.g. oracle form) or an Oracle tool (e.g. Enterprise Manager or SQL*Plus), Oracle creates a user process to run the user’s application. Two terms, Connection and Session are closely related to user process.&lt;br /&gt;&lt;br /&gt;A connection is a physical path from a client to an Oracle instance. A connection is established either over a network (Oracle Net Services) when different computers run the database application and Oracle, and communicate through a network or over an IPC mechanism when a computer runs both the user process and Oracle. &lt;br /&gt;&lt;br /&gt;A session, on the other hand, is a logical entity in the instance, where a user process can execute SQL and so on. Many independent sessions can be associated with a single connection, and these sessions can even exist independently of a connection. A connection may have zero, one, or more sessions established on it.&lt;br /&gt;&lt;br /&gt;We can use the v$session dynamic view to see sessions in action.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-VTJGpvyePvo/TsS9lPgwYKI/AAAAAAAACJw/cA3BILHvDSc/s1600/01.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-VTJGpvyePvo/TsS9lPgwYKI/AAAAAAAACJw/cA3BILHvDSc/s1600/01.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;b&gt;3.1.2.2&amp;nbsp; Oracle Server Processes&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Oracle server processes run the Oracle database server code. Again it can be categorized into two groups:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Server Processes&lt;/li&gt;&lt;li&gt;Background Processes&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;b&gt;3.1.2.2.1&amp;nbsp; Server Processes&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The server process is the process that services an individual user process. In some situations when the application and Oracle operate on the same computer, it is possible to combine the user process and corresponding server process into a single process to reduce system overhead. However, when the application and Oracle operate on different computers, a user process always communicates with Oracle through a separate server process.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The most common configuration for the server process is to assign each user a &lt;i&gt;dedicated serve&lt;/i&gt;r process. However, Oracle provides for a more sophisticated means of servicing several users through the same server process, called the &lt;i&gt;shared server&lt;/i&gt; architecture. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The following self-explanatory figures depict the dedicated and shared server configuration.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-ksvvu6hJ8-8/TsS_ncVAIqI/AAAAAAAACJ4/OQfDTbIz3sA/s1600/02.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-ksvvu6hJ8-8/TsS_ncVAIqI/AAAAAAAACJ4/OQfDTbIz3sA/s1600/02.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-fg3gpAlGreg/TsTAVypdubI/AAAAAAAACKA/nOzVaRLedYQ/s1600/03.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-fg3gpAlGreg/TsTAVypdubI/AAAAAAAACKA/nOzVaRLedYQ/s1600/03.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;We can query the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;v$shared_server&lt;/span&gt;&lt;/b&gt; dynamic view to get information about the shared server process.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-Gib8JzLL8wU/TsTAxnciYkI/AAAAAAAACKI/hw08gnyQlVs/s1600/04.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-Gib8JzLL8wU/TsTAxnciYkI/AAAAAAAACKI/hw08gnyQlVs/s1600/04.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;For server process the Oracle allocates a memory area called a program global area (PGA). PGA contains data and control information for server process. Unlike the SGA, the PGA is for the exclusive use of each server process and can’t be shared by multiple processes; consequently, the PGA is sometimes called the private global area.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The total PGA memory allocated by each server process attached to an Oracle instance is also referred to as the aggregated PGA memory allocated by the instance. You use automatic PGA memory management by setting the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;PGA_AGGREGATE_TARGET&lt;/span&gt;&lt;/b&gt; parameter.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The content of the PGA memory varies, depending on whether the instance is running the shared server option. But generally it can be:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;Session Memory: &lt;/i&gt;Session memory is the memory allocated to hold a session’s variables (logon information) and other information related to the session. For a shared server, the session memory is shared and not private.&lt;/li&gt;&lt;li&gt;&lt;i&gt;Private SQL Area: &lt;/i&gt;Each session that issues a SQL statement has a private SQL area. For dedicated server, private SQL areas are located in the server process’s PGA. However, for shared server, part of the private SQL area is kept in the SGA. We can query the V$SQL_WORKAREA to get information about SQL area.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The following dynamic views can be used to investigate the information abut PGA. &lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;V$PGASTAT&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;V$PROCESS &lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-3_sFOIgkr9s/TsTB8FWASpI/AAAAAAAACKQ/wsv6YgyFRm4/s1600/05.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-3_sFOIgkr9s/TsTB8FWASpI/AAAAAAAACKQ/wsv6YgyFRm4/s1600/05.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;3.1.2.2.2&amp;nbsp; Background Processes &lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: justify;"&gt;The background processes are the real workhorses of the Oracle instance—they enable large numbers of users to concurrently and efficiently use information stored in database. Each of the Oracle background processes is in charge of a separate task, thus increasing the efficiency of the database instance. These processes are automatically created by Oracle when you start the database instance, and they terminate when the database is shut down.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;An Oracle instance can have many background processes; not all are always present. You can query the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;V$BGPROCESS&lt;/span&gt;&lt;/b&gt; view for more information on the background processes.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-pVa6J444a0E/TsTDL7pjNkI/AAAAAAAACKY/EKHZz1tPgZE/s1600/06.gif" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-pVa6J444a0E/TsTDL7pjNkI/AAAAAAAACKY/EKHZz1tPgZE/s1600/06.gif" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The background processes in an Oracle instance can include the following:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Database Writer Process (DBWn)&lt;/li&gt;&lt;li&gt;Log Writer Process (LGWR)&lt;/li&gt;&lt;li&gt;Checkpoint Process (CKPT)&lt;/li&gt;&lt;li&gt;System Monitor Process (SMON)&lt;/li&gt;&lt;li&gt;Process Monitor Process (PMON)&lt;/li&gt;&lt;li&gt;Recoverer Process (RECO)&lt;/li&gt;&lt;li&gt;Archiver Processes (ARCn)&lt;/li&gt;&lt;li&gt;Job Queue Processes&lt;/li&gt;&lt;li&gt;Queue Monitor Processes (QMNn)&lt;/li&gt;&lt;li&gt;Other Background Processes&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Figure below illustrates how each background process interacts with the different parts of an Oracle database.&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-jJXbGGZ84T4/TsTDrn-hmXI/AAAAAAAACKg/l5lvNdQUDjY/s1600/07.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-jJXbGGZ84T4/TsTDrn-hmXI/AAAAAAAACKg/l5lvNdQUDjY/s1600/07.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;i&gt;&lt;b&gt;Database Writer Process (DBWn):&lt;/b&gt;&lt;/i&gt; The database writer processes&amp;nbsp; (DBWn) are responsible for writing modified (dirty) buffers in the database buffer cache to disk. The initialization parameter DB_WRITER_PROCESSES specifies the number of DBWn processes. The maximum number of DBWn processes is 20 i.e. DBW1 through DBW9 and DBWa through DBWj. But these additional DBWn processes are only useful on multi-processor systems. If &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DB_WRITER_PROCESSES&lt;/span&gt;&lt;/b&gt; is not specified by the user during startup, Oracle determines how to set it based on the number of CPUs and processor groups.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;DBWn manages the buffer cache so that user processes can always find free buffers. The database&amp;nbsp;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;writer process writes dirty buffers to disk under the following conditions:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;When the database issues a checkpoint&lt;/li&gt;&lt;li&gt;When a server process can’t find a clean reusable buffer&amp;nbsp;&lt;/li&gt;&lt;li&gt;Every 3 seconds&lt;/li&gt;&lt;/ul&gt;&lt;i&gt;&lt;b&gt;Log Writer Process (LGWR):&lt;/b&gt;&lt;/i&gt; The log writer process (LGWR) is responsible for redo log buffer management—writing the redo log buffer to a redo log file on disk. The redo log buffer is a circular buffer. When LGWR writes redo entries from the redo log buffer to a redo log file, server processes can then copy new entries over the entries in the redo log buffer that have been written to disk.&lt;br /&gt;&lt;br /&gt;When a user commits a transaction, the transaction is assigned a system change number (SCN), which Oracle records along with the transaction’s redo entries in the redo log. SCNs are recorded in the redo log so that recovery operations can be synchronized in Real Application Clusters and distributed databases.&lt;br /&gt;&lt;br /&gt;The log writer process writes the contents of the redo log buffer to disk under any of the following circumstances:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;Every three seconds&lt;/li&gt;&lt;li&gt;Whenever someone commits&lt;/li&gt;&lt;li&gt;When LGWR is asked to switch log files&lt;/li&gt;&lt;li&gt;When the redo buffer gets one-third full or contains 1MB of cached redo log data&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;&lt;b&gt;Checkpoint Process (CKPT): &lt;/b&gt;&lt;/i&gt;The checkpoint (CKPT) process is charged with telling the database writer process when to write the dirty data in the memory buffers to disk. After telling the database writer process to write the changed data, the checkpoint process updates the data file headers and the control file to indicate when the checkpoint was performed. The purpose of the checkpoint process is to synchronize the buffer cache information with the information on the database disks.&lt;br /&gt;&lt;br /&gt;A checkpointing process involves the following steps:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;Flushing the contents of the redo log buffers to the redo log files&lt;/li&gt;&lt;li&gt;Writing a checkpoint record to the redo log file&lt;/li&gt;&lt;li&gt;Flushing the contents of the database buffer cache to disk&lt;/li&gt;&lt;li&gt;Updating the data file headers and the control files after the checkpoint completes&lt;/li&gt;&lt;/ul&gt;&lt;i&gt;&lt;b&gt;System Monitor Process (SMON): &lt;/b&gt;&lt;/i&gt;The system monitor process (SMON) performs recovery, if necessary, at instance startup. SMON is also responsible for cleaning up temporary segments that are no longer in use and for coalescing contiguous free extents within dictionary managed tablespaces. If any terminated transactions were skipped during instance recovery because of file-read or offline errors, SMON recovers them when the tablespace or file is brought back online. Other processes can call SMON if they detect a need for it. &lt;br /&gt;&lt;br /&gt;With Real Application Clusters, the SMON process of one instance can perform instance recovery for a failed CPU or instance.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Process Monitor Process (PMON): &lt;/b&gt;&lt;/i&gt;The process monitor (PMON) performs process recovery when a user process fails. PMON is responsible for cleaning up the database buffer cache and freeing resources that the user process was using. &lt;br /&gt;&lt;br /&gt;PMON periodically checks the status of dispatcher and server processes, and restarts any that have stopped running (but not any that Oracle has terminated intentionally). PMON also registers information about the instance and dispatcher processes with the network listener. Like SMON, PMON checks regularly to see whether it is needed and can be called if another process detects the need for it.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Recoverer Process (RECO): &lt;/b&gt;&lt;/i&gt;The recoverer process (RECO) is used with the distributed database configuration that automatically resolves failures involving distributed transactions. The RECO process of a node automatically connects to other databases involved in an in-doubt distributed transaction. When the RECO process reestablishes a connection between involved database servers, it automatically resolves all in-doubt transactions, removing from each database’s pending transaction table any rows that correspond to the resolved in-doubt transactions. &lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Archiver Processes (ARCn): &lt;/b&gt;&lt;/i&gt;The archiver process (ARCn) copies redo log files to a designated storage device after a log switch has occurred. ARCn processes are present only when the database is in ARCHIVELOG mode, and automatic archiving is enabled. &lt;br /&gt;&lt;br /&gt;An Oracle instance can have up to 10 ARCn processes (ARC0 to ARC9). The LGWR process starts a new ARCn process whenever the current number of ARCn processes is insufficient to handle the workload. The alert log keeps a record of when LGWR starts a new ARCn process. &lt;br /&gt;&lt;br /&gt;If you anticipate a heavy workload for archiving, such as during bulk loading of data, you can specify multiple archiver processes with the initialization parameter &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;LOG_ARCHIVE_MAX_PROCESSES&lt;/span&gt;&lt;/b&gt;. &lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Job Queue Processes (Jnnn): &lt;/b&gt;&lt;/i&gt;Job queue processes are used for batch processing. They run user jobs. For each instance, these job queue processes are dynamically spawned by a coordinator job queue (CJQ0) background process.&lt;br /&gt;&lt;br /&gt;The initialization parameter &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;JOB_QUEUE_PROCESSES&lt;/span&gt;&lt;/b&gt; represents the maximum number of job queue processes that can concurrently run on an instance.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Queue Monitor Processes (QMNn): &lt;/b&gt;&lt;/i&gt;The queue monitor process is an optional background process for Oracle Streams Advanced Queuing, which monitors the message queues. You can configure up to 10 queue monitor processes. &lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;Other Background Processes&lt;/b&gt;&lt;/i&gt;: There are several other background processes that might be running. These can include the following:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Manageability Monitor (MMON) process collects several types of statistics to help the database manage itself. For example, MMON collects the Automatic Workload Repository (AWR) snapshot information, which is the basis for the performance diagnostics capability of the Automatic Database Diagnostic Monitor (ADDM).&lt;/li&gt;&lt;li&gt;Memory Manager (MMAN) process coordinates the sizing of the memory components. It observes the system and workload in order to determine the ideal distribution of memory, and it ensures that the needed memory is available.&lt;/li&gt;&lt;li&gt;Rebalance Master (RBAL) process coordinates disk rebalancing activity when you use an Automatic Storage Management (ASM) storage system.&lt;/li&gt;&lt;li&gt;ASM Rebalance (ARBn) processes perform the disk rebalancing activity in an ASM instance.&lt;/li&gt;&lt;li&gt;ASM Background (ASMB) process is present in all Oracle databases that use an ASM storage system. The ASMB process communicates with the ASM instance by logging into the ASM instance as a foreground process.&lt;/li&gt;&lt;li&gt;Recovery Writer (RVWR) process writes the flashback data from the flashback buffer to the flashback logs.&lt;/li&gt;&lt;/ul&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;3.2&amp;nbsp; Oracle Database&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The Oracle database has a logical layer and a physical layer. The physical layer consists of the files that reside on the disk; the components of the logical layer map the data to these physical components.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The separation of logical layer from physical layer is a necessary part of the relational database paradigm. The relational paradigm states that programmers should address only logical structures and let the database manage the mapping to physical structures. Thus database administrators see physical components while programmers see logical components.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The physical layer of the database consists of the following types of files: &lt;br /&gt;&lt;ul&gt;&lt;li&gt;Data Files&lt;/li&gt;&lt;li&gt;Control Files&lt;/li&gt;&lt;li&gt;Online Redo Log Files&lt;/li&gt;&lt;li&gt;Archive Log Files&lt;/li&gt;&lt;li&gt;Parameter Files&lt;/li&gt;&lt;li&gt;Trace Files&lt;/li&gt;&lt;li&gt;Alert Files&lt;/li&gt;&lt;li&gt;Password File&lt;/li&gt;&lt;li&gt;Backup Files&lt;/li&gt;&lt;li&gt;Flashback Log Files (Optional)&lt;/li&gt;&lt;li&gt;Change Tracking Files (Optional)&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The logical layer of the database consists of the following types of structures:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;Tablespaces&lt;/li&gt;&lt;li&gt;Segments&lt;/li&gt;&lt;li&gt;Extents&lt;/li&gt;&lt;li&gt;Oracle Blocks&lt;/li&gt;&lt;/ul&gt;Figure below shows the ER diagram of logical structure and physical structure.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-G7fIQvwe4Q8/Tsne7OYeMQI/AAAAAAAACKs/PGw8GLqXqao/s1600/01.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-G7fIQvwe4Q8/Tsne7OYeMQI/AAAAAAAACKs/PGw8GLqXqao/s1600/01.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;Note: A schema is a collection of database objects that are owned by a particular user. A schema has the same name as that user. Schema objects are the logical structures.&lt;/i&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;3.2.1&amp;nbsp; Physical Layer&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;3.2.1.1&amp;nbsp; Data Files&amp;nbsp; &lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Data files are the files where all of the data of the database will be stored. Every database has at least two data file associated with it, and typically it will have many more than two. The first tablespace in any database is always the SYSTEM tablespace, so Oracle automatically allocates the first datafiles of any database for the SYSTEM tablespace during database creation.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;A datafile can be associated with only one tablespace and only one database but a tablespace can spawn more than one datafile. If several disk drives are available to store the database, consider placing potentially contending datafiles on separate disks. This way, when users query information, both disk drives can work simultaneously, retrieving data at the same time.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;i&gt;Note: Datafiles should not be stored on the same disk drive that stores the database redo log files.&lt;/i&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;You can investigate about the data files by querying the following views:&lt;/div&gt;&lt;ul style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;li&gt;&lt;b&gt;V$DATAFILE&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;DBA_DATA_FILES&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;V$TEMPFILE&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;DBA_TEMP_FILES&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-g0YsOhcdgLU/Tsnfw2cycoI/AAAAAAAACK0/kBd7I-n38vE/s1600/02.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-g0YsOhcdgLU/Tsnfw2cycoI/AAAAAAAACK0/kBd7I-n38vE/s1600/02.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;3.2.1.2&amp;nbsp; Control Files&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The database control file is a small binary file necessary for the database to start and operate successfully. The control file is critical to the functioning of the database, and recovery is difficult without access to an up-to-date control file. If all control files of a database are permanently lost during operation, then the instance is aborted and media recovery (type of recovery that takes a backup and applies redo) is required.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The control file contains the names and locations of the data files, redo log files, current log sequence numbers, backup set and backup piece details, check point information and the all-important system change number (SCN), which indicates the most recent version of committed changes in the database.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;You specify control file names using the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;CONTROL_FILES&lt;/span&gt;&lt;/b&gt; initialization parameter in the database initialization parameter file. Every database has one control file, but due to the file’s importance, multiple identical copies (usually three) are maintained on a different physical disk—when the database writes to the control file, all copies of the file get written to. It is very important that you back up your control files. This is true initially, and every time you change the physical structure of your database.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The following views display information about control files:&lt;/div&gt;&lt;ul style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;li&gt;&lt;b&gt;V$CONTROLFILE&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;V$PARAMETER&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;ul style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;3.2.1.3&amp;nbsp; Online Redo Log Files&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The online redo log files record all the changes made to the database, and they are vital during the recovery of a database. The online redo log consists of groups of online redo log files, each file being known as a member. An Oracle database requires at least two groups of at least one member each to function.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;These files are filled with redo records or redo entry. Redo entries record data that you can use to reconstruct all changes made to the database. When you recover the database using redo data, the database reads the change vectors in the redo records and applies the changes to the relevant blocks.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Whenever a transaction is committed, LGWR writes the transaction redo records from the redo log buffer of the SGA to a redo log file, and assigns a system change number (SCN) to identify the redo records for each committed transaction. Only when all redo records associated with a given transaction are safely on disk in the online logs is the user process notified that the transaction has been committed.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;LGWR writes to redo log files in a circular fashion. When the current redo log file fills, LGWR begins writing to the next available redo log file. When the last available redo log file is filled, LGWR returns to the first redo log file and writes to it, starting the cycle again.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The point at which the database stops writing to one redo log file and begins writing to another is called log switching. Each online or archived redo log file is uniquely identified by its log sequence number. During crash, instance, or media recovery, the database properly applies redo log files in ascending order by using the log sequence number of the necessary archived and redo log files.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The following views provide information on redo logs.&lt;/div&gt;&lt;ul style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;li&gt;&lt;b&gt;V$LOG&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;V$LOGFILE&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-NH2nYW_DFo0/TsnglzrcMnI/AAAAAAAACK8/SR5qZBk2_lk/s1600/03.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-NH2nYW_DFo0/TsnglzrcMnI/AAAAAAAACK8/SR5qZBk2_lk/s1600/03.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;3.2.1.4&amp;nbsp; Archive Log Files&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;An archived redo log file is a copy of one of the filled members of an online redo log group. The process of turning redo log files into archived redo log files is called archiving. This process is only possible if the database is running in &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ARCHIVELOG&lt;/span&gt;&lt;/b&gt; mode. You can choose automatic or manual archiving.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The background process ARCn automates archiving operations when automatic archiving is enabled. The database starts multiple archiver processes as needed to ensure that the archiving of filled redo logs does not fall behind. The &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;LOG_ARCHIVE_MAX_PROCESSES&lt;/span&gt;&lt;/b&gt; initialization parameter specifies the num ARCn processes that the database initially invokes. The default is two processes.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;If you want to archive only to a single destination, you specify that destination in the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;LOG_ARCHIVE_DEST&lt;/span&gt;&lt;/b&gt; initialization parameter. If you want to multiplex the archived logs, you can choose whether to archive to up to ten locations (using the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;LOG_ARCHIVE_DEST_n&lt;/span&gt;&lt;/b&gt; parameters). The two modes of transmitting archived logs to their destination are normal archiving transmission and standby transmission mode. Normal transmission involves transmitting files to a local disk. Standby transmission involves transmitting files through a network to either a local or remote standby database.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;You can display information about the archived redo logs using the following sources:&lt;br /&gt;&lt;ul&gt;&lt;li style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;V$DATABASE&lt;/b&gt;&lt;/li&gt;&lt;li style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;V$ARCHIVE_DEST&lt;/b&gt;&lt;/li&gt;&lt;li&gt;SQL*Plus command &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ARCHIVE LOG LIST&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-QO4Rli7nvXg/TsnhRM58CNI/AAAAAAAACLE/fRHvDPwH6hw/s1600/04.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-QO4Rli7nvXg/TsnhRM58CNI/AAAAAAAACLE/fRHvDPwH6hw/s1600/04.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;3.2.1.5&amp;nbsp; Parameter Files&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;There are many different parameter files associated with an Oracle database, from a tnsnames.ora file on a client workstation (used to find a server on the network), to a listener.ora file on the server (for the network listener startup), to the sqlnet.ora, cman.ora, and ldap.ora files, to name a few. The most important parameter file, however, is the database’s parameter file—without this, we cannot even get a database started. &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;The parameter file for a database is commonly known as an init, pfile or spfile. The init and pfile (parameter file) is a text based file while spfile (server parameter file) has a binary format. It is called server parameter file because of the fact that it must reside on the server, while the text based parameter file can also be located on the client system. Because spfile is always stored on the database server; it removes the proliferation of parameter files and removes the need to manually maintain parameter files using text editors outside of the database.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;Parameter file contains a list of initialization parameters for an instance and a database. Parameter is a key/value pair. Initialization parameter tells Oracle, the name of database for which to startup the instance, memory for SGA, name and location for database control files.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;By default the init&amp;lt;SID&amp;gt;.ora can be found in dbs (on Linux) or database folder (on windows) while the spfile is located in dbs directory on both platforms. It is not necessary that a parameter file must be in particular location, you can use the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;pfile=name&lt;/span&gt;&lt;/b&gt; option with startup command.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;We can convert the pfile into spfile and vice versa as shown below:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;CREATE SPFILE FROM PFILE='/u01/oracle/dbs/init.ora';&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;CREATE SPFILE='/u01/oracle/dbs/test_spfile.ora'&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FROM PFILE='/u01/oracle/dbs/test_init.ora';&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;Spfiles are binary files, so what happens if one gets corrupted and the database won’t start? At least the init.ora file was just text, so we could edit it and fix it. First, the amount of binary data in the SPFILE is very small. If you are on a Linux platform, a simple strings command will extract all of your settings:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-or237A6S9mo/Tsnhyb_jztI/AAAAAAAACLM/qeeuR4u_reA/s1600/05.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-or237A6S9mo/Tsnhyb_jztI/AAAAAAAACLM/qeeuR4u_reA/s1600/05.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;In the event that the spfile has just “gone missing”, you can also restore the information for your parameter file from the database’s alert log. Every time you start the database, the alert log will contain a section having initialization parameter information.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;You can display information about the archived redo logs using the following sources:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;V$PARAMETER&lt;/b&gt;&lt;/li&gt;&lt;li style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;V$PARAMETER2&amp;nbsp;&lt;/b&gt;&lt;/li&gt;&lt;li style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;V$SPPARAMETER&lt;/b&gt;&lt;/li&gt;&lt;li&gt;SQL*Plus command &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SHOW PARAMETERS&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-_Px_taJta5s/TsniPS5J7DI/AAAAAAAACLU/wPR84ssNkfA/s1600/06.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-_Px_taJta5s/TsniPS5J7DI/AAAAAAAACLU/wPR84ssNkfA/s1600/06.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;3.2.1.6&amp;nbsp; Trace Files&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Each server and background process writes to an associated trace file. When a process detects an internal error, it dumps information about the error to its trace file. Trace files are a source of debugging information. Programmers who wrote the database kernel put the debugging code, and they left it in, on purpose.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;All filenames of trace files associated with a process contain the name of the process that generated the trace file. The one exception to this is trace files generated by job queue processes (Jnnn).&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Trace file is generated on the database server machine in one of two locations:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;If you are using a dedicated server connection, the trace file will be generated in the directory specified by the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;USER_DUMP_DEST&lt;/span&gt;&lt;/b&gt; parameter.&lt;/li&gt;&lt;li&gt;If you are using a shared server connection, the trace file will be generated in the directory specified by the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;BACKGROUND_DUMP_DEST&lt;/span&gt;&lt;/b&gt; parameter.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;You can display information about the trace files using the following sources:&lt;/div&gt;&lt;ul&gt;&lt;li style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;V$PARAMETER&lt;/b&gt;&lt;/li&gt;&lt;li&gt;SQL*Plus command &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SHOW PARAMETER DUMP_DEST&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-5iLKcXq7Eas/Tsni6DWg-pI/AAAAAAAACLc/DxNUAdB4MO8/s1600/07.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-5iLKcXq7Eas/Tsni6DWg-pI/AAAAAAAACLc/DxNUAdB4MO8/s1600/07.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;3.2.1.7&amp;nbsp; Alert Files&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The alert file also known as the alert log is the diary of the database. It is a simple text file written to from the day the database is created to until you erase it. In this file, you will find a chronological history of your database—the log switches; the internal errors that might be raised; when tablespaces were created, taken offline, put back online; and so on.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The alert log can come in handy during troubleshooting—it is usually the first place you should check to get an idea about what was happening inside the database when a problem occurred. In fact, Oracle support may ask you for a copy of the pertinent sections of the alert log during their analysis of database problems.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Oracle puts the alert log (alertdb_name.log) in the location specified for the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;BACKGROUND_DUMP_DEST&lt;/span&gt;&lt;/b&gt; initialization parameter.&lt;br /&gt;&lt;ul&gt;&lt;li style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;V$ALERT_TYPES&lt;/b&gt;&lt;/li&gt;&lt;li style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;DBA_OUTSTANDING_ALERTS&lt;/b&gt;&lt;/li&gt;&lt;li style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;b&gt;DBA_ALERT_HISTORY&lt;/b&gt;&lt;/li&gt;&lt;li&gt;SQL*Plus command &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SHOW PARAMETER&lt;/span&gt;&lt;/b&gt; &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;background_dump;&lt;/span&gt;&lt;/b&gt; to find out where the alert log is located&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-56TSNRCP_00/TsnjudiNZOI/AAAAAAAACLk/YPIqtzwA_gE/s1600/08.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-56TSNRCP_00/TsnjudiNZOI/AAAAAAAACLk/YPIqtzwA_gE/s1600/08.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Too see if there are any Oracle-related errors in your alert log, simply issue the following command:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-daj3LDF29IY/TsnkDNxAu-I/AAAAAAAACLs/nDqoJSwH_As/s1600/09.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-daj3LDF29IY/TsnkDNxAu-I/AAAAAAAACLs/nDqoJSwH_As/s1600/09.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;b&gt;3.2.1.8&amp;nbsp; Password File&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The password file is a file in which you can specify the names of database users who have been granted the special SYSDBA or SYSOPER administrative privileges.&lt;br /&gt;&lt;br /&gt;When you attempt to start up Oracle, there is no database available that can be consulted to verify passwords. When you start up Oracle on the “local” system (i.e., not over the network, but from the machine the database instance will reside on), Oracle will use the OS to perform the authentication. When Oracle was installed, the person performing the installation was asked to specify the “group” for the administrators. Normally on UNIX/Linux, this group will be dba by default and osdba on Windows. It can be any legitimate group name on that platform, however. That group is “special,” in that any user in that group can connect to Oracle “as SYSDBA” without specifying a username or password, for example:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-Uq3gyLQ3jZg/TsnoF8e2LfI/AAAAAAAACL0/w5fGpMT8Pf4/s1600/10.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-Uq3gyLQ3jZg/TsnoF8e2LfI/AAAAAAAACL0/w5fGpMT8Pf4/s1600/10.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;However, suppose you wanted to perform these operations from another machine, over the network. In that case, you would attempt to connect using @tns-connect-string. However, this would fail:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-jro93bGYu60/TsnoZ5wWiuI/AAAAAAAACL8/i-OkBMIpJGQ/s1600/11.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-jro93bGYu60/TsnoZ5wWiuI/AAAAAAAACL8/i-OkBMIpJGQ/s1600/11.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;OS authentication won’t work over the network for SYSDBA, even if the very unsafe parameter &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;REMOTE_OS_AUTHENT&lt;/span&gt;&lt;/b&gt; is set to TRUE. Here comes the password file for rescue. For remote authentication, first, we have set the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;REMOTE_LOGIN_PASSWORDFILE&lt;/span&gt;&lt;/b&gt;.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-MBM4ptVJ9I4/TsnoyOpqlDI/AAAAAAAACME/rajvtKF25Y0/s1600/12.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-MBM4ptVJ9I4/TsnoyOpqlDI/AAAAAAAACME/rajvtKF25Y0/s1600/12.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;Here&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt; EXCLUSIVE&lt;/span&gt;&lt;/b&gt; means only one database can uses a given password file. This setting cannot be changed dynamically while the instance is up and running, so we’ll have to restart for this to take effect.&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;The next step is to use the command-line tool named orapwd:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-NZbh3a7vfV0/TsnpGCrLRhI/AAAAAAAACMM/3YAnRVT03LY/s1600/13.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-NZbh3a7vfV0/TsnpGCrLRhI/AAAAAAAACMM/3YAnRVT03LY/s1600/13.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&amp;nbsp;Now we can connect as SYSDBA over the network:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;sqlplus sys/oracle@localhost.localdomain/orcl as sysdba&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Password file resides in the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;$ORACLE_HOME&lt;/span&gt;&lt;/b&gt;/dbs directory on linux (&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;%ORACLE_HOME%&lt;/span&gt;&lt;/b&gt;\database on windows).&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;V$PWFILE_USERS&lt;/span&gt;&lt;/b&gt; view can be used to see the users who have been granted SYSDBA or SYSOPER system privileges for a database.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-p1qLb4rCmvc/TsnpgA-tDUI/AAAAAAAACMU/k4aWoZ7X6DM/s1600/14.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-p1qLb4rCmvc/TsnpgA-tDUI/AAAAAAAACMU/k4aWoZ7X6DM/s1600/14.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;3.2.1.9&amp;nbsp; Backup Files&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;Backup files are used for database recovery. A backup is a copy of data. This copy can include important parts of the database, such as the control file and datafiles. &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;3.2.1.10&amp;nbsp; Flashback Log Files&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;Flashback logs were introduced in Oracle 10g in support of the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;FLASHBACK DATABASE&lt;/span&gt;&lt;/b&gt; command. The &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;FLASHBACK DATABASE&lt;/span&gt;&lt;/b&gt; command was introduced to speed up the otherwise slow process of a point in time database recovery. It can be used in place of a full database restore and a rolling forward using archive logs, and it is primarily designed to speed up the recovery from an “accident.” Flash-back logs contain “before images” of modified database blocks that can be used to return the database to the way it was at some prior point in time.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;&lt;br /&gt;3.2.1.11&amp;nbsp; Change Tracking Files&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;The change tracking file is a new file, use with Oracle 10g Enterprise Edition. The sole purpose of this file is to track what blocks have modified since the last incremental backup. In this fashion, the Recovery Manager (RMAN) tool can back up only the database blocks that have actually been modified without having to read the entire database.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;The process of creating the change tracking file is simple and is accomplished via the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ALTER DATABASE&lt;/span&gt;&lt;/b&gt; command:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-DURK7PvL-hc/TsnqGuuPDxI/AAAAAAAACMc/2jlC7W9dJp8/s1600/15.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-DURK7PvL-hc/TsnqGuuPDxI/AAAAAAAACMc/2jlC7W9dJp8/s1600/15.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;To turn off and remove the block change tracking file, you would use the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ALTER DATABASE&lt;/span&gt;&lt;/b&gt; command once again:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-WPX67M7L6n8/Tsnqd4WzYaI/AAAAAAAACMk/cn1_VY_4m40/s1600/16.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-WPX67M7L6n8/Tsnqd4WzYaI/AAAAAAAACMk/cn1_VY_4m40/s1600/16.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;i&gt;Note: This command will in fact erase the block change tracking file. It does not just disable the feature it removes the file as well.&lt;/i&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;3.2.2&amp;nbsp; Logical Layer&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;3.2.2.1&amp;nbsp; Tablespaces&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;A database is divided into logical storage units called tablespaces, which group related logical structures (table, index etc) together. One or more datafiles are explicitly created for each tablespace to physically store the data of all logical structures in a tablespace. &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;The previous paragraph is graphically depicted in the following figure:&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-UiKWb7vVmco/Ts3RNgyq42I/AAAAAAAACRY/oevw1jfcD98/s1600/01.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-UiKWb7vVmco/Ts3RNgyq42I/AAAAAAAACRY/oevw1jfcD98/s1600/01.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Tablespaces are divided into logical units of storage called segments, which are further divided into extents. The units of database space allocation are data blocks, extents, and segments.&lt;br /&gt;&lt;br /&gt;There is no hard and fast rule regarding the number of tablespaces you can have in a database. The following five tablespaces are generally the default tablespaces that all databases must have, even though it’s possible to create and use a database with just the first two:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;System Tablespace: &lt;/i&gt;It always contains the data dictionary tables for the entire database.&lt;/li&gt;&lt;li&gt;&lt;i&gt;Sysaux Tablespace:&lt;/i&gt; It is an auxiliary tablespace to the SYSTEM tablespace. The SYSAUX tablespace provides a centralized location for database metadata that does not reside in the SYSTEM tablespace.&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;i&gt;Undo Tablespace:&lt;/i&gt; It is used solely for storing undo information. You cannot create any other segment types (for example, tables or indexes) in undo tablespaces. In automatic undo management mode, each Oracle instance is assigned one (and only one) undo tablespace.&lt;/li&gt;&lt;li&gt;&lt;i&gt;Temporary Tablespace: &lt;/i&gt;It contains transient data that persists only for the duration of the session.&lt;/li&gt;&lt;li&gt;&lt;i&gt;Default Permanent Tablespace: &lt;/i&gt;It contains user objects.&lt;/li&gt;&lt;/ul&gt;Tablespaces allocate space in extents. Tablespaces can use two different methods to keep track of their free and used space: &lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;Locally Managed Tablespaces: &lt;/i&gt;extent management is done by the tablespace. It maintains a bitmap in each datafile to keep track of the free or used status of blocks in that datafile. Changes do not generate rollback information because they do not update tables in the data dictionary (except for special cases such as tablespace quota information).&lt;/li&gt;&lt;li&gt;&lt;i&gt;Dictionary Managed Tablespaces:&lt;/i&gt; extent management is done by the data dictionary. Oracle updates the appropriate tables in the data dictionary whenever an extent is allocated or freed for reuse. Oracle also stores rollback information about each update of the dictionary tables.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The following data dictionary and dynamic performance views provide useful information about the tablespaces of a database.&lt;br /&gt;&lt;ul style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;li&gt;&lt;b&gt;V$TABLESPACE&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;DBA_TABLESPACES&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;USER_TABLESPACES&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-OKgCkfLYntI/Ts3SJ9Hq5JI/AAAAAAAACRg/JQn5y12vAnc/s1600/02.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-OKgCkfLYntI/Ts3SJ9Hq5JI/AAAAAAAACRg/JQn5y12vAnc/s1600/02.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;3.2.2.2&amp;nbsp; Segments&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;A segment is a set of extents that contains all the data for a specific logical storage structure within a tablespace. There are three types of segments in an Oracle database:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;Data Segments:&lt;/i&gt; A single data segment in an Oracle database holds all of the data for one of the following: table that is not partitioned or clustered, partition of a partitioned table, cluster of tables and a materialized view.&lt;/li&gt;&lt;li&gt;&lt;i&gt;Index Segments:&lt;/i&gt; Every non partitioned index in an Oracle database has a single index segment to hold all of its data. For a partitioned index, every partition has a single index segment to hold its data.&lt;/li&gt;&lt;li&gt;&lt;i&gt;Temporary Segments:&lt;/i&gt; When processing queries, Oracle often requires temporary workspace for intermediate stages of SQL statement parsing and execution. Oracle automatically allocates this disk space called a temporary segment. Typically, Oracle requires a temporary segment as a database area for sorting, temporary tables and there indexes.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;The following data dictionary and dynamic performance views provide useful information about the segments.&lt;/div&gt;&lt;ul style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;li&gt;&lt;b&gt;DBA_SEGMENTS&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;USER_SEGMENTS&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;V$SORT_SEGMENT&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;V$TEMPSEG_USAGE&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-gOU5PjXkCNY/Ts3SzhSpcJI/AAAAAAAACRo/iPcJqRnrQBQ/s1600/03.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="219" src="http://1.bp.blogspot.com/-gOU5PjXkCNY/Ts3SzhSpcJI/AAAAAAAACRo/iPcJqRnrQBQ/s320/03.gif" width="320" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;3.2.2.3&amp;nbsp; Extents&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;An extent is a logical unit of database storage space allocation made up of a number of contiguous data blocks. One or more extents in turn make up a segment.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;When you create a table, Oracle allocates to the table’s data segment an initial extent of a specified number of data blocks. Although no rows have been inserted yet, the Oracle data blocks that correspond to the initial extent are reserved for that table’s rows. If the data blocks of a segment’s initial extent become full and more space is required to hold new data, Oracle automatically allocates an incremental extent for that segment. An incremental extent is a subsequent extent of the same or greater size than the previously allocated extent in that segment. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;For maintenance purposes, the header block of each segment contains a directory of the extents in that segment. A tablespace that manages its extents locally can have either uniform extent sizes or variable extent sizes that are determined automatically by the system.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;You can display information about the extents using the following views:&lt;br /&gt;&lt;ul style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;li&gt;&lt;b&gt;DBA_EXTENTS&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;USER_EXTENTS&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;DBA_FREE_SPACE&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;USER_FREE_SPACE&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-uupXAcGZsrM/Ts3TwEYtHgI/AAAAAAAACRw/03cJohTuTLM/s1600/04.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-uupXAcGZsrM/Ts3TwEYtHgI/AAAAAAAACRw/03cJohTuTLM/s1600/04.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;b&gt;3.2.2.4&amp;nbsp; Oracle Blocks &lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Extents, in turn, consist of Oracle blocks. An Oracle block is the smallest unit of space allocation in Oracle. In contrast, at the physical, operating system level, all data is stored in bytes. Each operating system has a block size. Oracle requests data in multiples of Oracle data blocks, not operating system blocks. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The standard block size is specified by the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DB_BLOCK_SIZE&lt;/span&gt;&lt;/b&gt; initialization parameter. In addition, you can specify up to five nonstandard block sizes. The data block sizes should be a multiple of the operating system’s block size within the maximum limit to avoid unnecessary I/O.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The Oracle data block format is similar regardless of whether the data block contains table, index, or clustered data. Figure below illustrates the format of a data block.&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-33OgHZUh5J8/Ts3UMN97nQI/AAAAAAAACR4/VMBvgn6AR_g/s1600/05.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-33OgHZUh5J8/Ts3UMN97nQI/AAAAAAAACR4/VMBvgn6AR_g/s1600/05.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;i&gt;Header (Common and Variable): &lt;/i&gt;The header contains general block information, such as the block address and the type of segment for example, data or index.&lt;/li&gt;&lt;li&gt;&lt;i&gt;Table Directory: &lt;/i&gt;This portion of the data block contains information about the table having rows in this block.&lt;/li&gt;&lt;li&gt;&lt;i&gt;Row Directory: &lt;/i&gt;This portion of the data block contains information about the actual rows in the block (including addresses for each row piece in the row data area). After the space has been allocated in the row directory of a data block’s overhead, this space is not reclaimed when the row is deleted. Therefore, a block that is currently empty but had up to 50 rows at one time continues to have 100 bytes allocated in the header for the row directory. Oracle reuses this space only when new rows are inserted in the block.&lt;/li&gt;&lt;li&gt;&lt;i&gt;Row Data: &lt;/i&gt;This portion of the data block contains table or index data. Rows can span blocks.&lt;/li&gt;&lt;li&gt;&lt;i&gt;Free Space: &lt;/i&gt;Free space is allocated for insertion of new rows and for updates to rows that require additional space. In data blocks allocated for the data segment of a table or cluster, or for the index segment of an index, free space can also hold transaction entries. A transaction entry is required in a block for each &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;INSERT&lt;/span&gt;&lt;/b&gt;, &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;UPDATE&lt;/span&gt;&lt;/b&gt;, &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DELETE&lt;/span&gt;&lt;/b&gt;, and &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;SELECT...FOR UPDATE&lt;/span&gt;&lt;/b&gt; statement accessing one or more rows in the block. &lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;In two circumstances, the data for a row in a table may be too large to fit into a single data block. In the first case, the row is too large to fit into one data block when it is first inserted. In this case, Oracle stores the data for the row in a chain of data blocks (one or more) reserved for that segment. Row chaining most often occurs with large rows, such as rows that contain a column of datatype &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;LONG&lt;/span&gt;&lt;/b&gt; or &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;LONG RAW&lt;/span&gt;&lt;/b&gt;. Row chaining in these cases is unavoidable. &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;However, in the second case, a row that originally fit into one data block is updated so that the overall row length increases, and the block’s free space is already completely filled. In this case, Oracle migrates the data for the entire row to a new data block, assuming the entire row can fit in a new block. Oracle preserves the original row piece of a migrated row to point to the new block containing the migrated row. The rowid of a migrated row does not change. &lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;When a row is chained or migrated, I/O performance associated with this row decreases because Oracle must scan more than one data block to retrieve the information for the row.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;ul&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4858278767901421083-8226416485880514495?l=asghars.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asghars.blogspot.com/feeds/8226416485880514495/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://asghars.blogspot.com/2011/05/01-oracle-server-architecture.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/8226416485880514495'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/8226416485880514495'/><link rel='alternate' type='text/html' href='http://asghars.blogspot.com/2011/05/01-oracle-server-architecture.html' title='03 - Oracle Database Server Architecture'/><author><name>Muhammad Asghar Khan</name><uri>https://profiles.google.com/102545751511475719828</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-uiG6pTx0jQw/AAAAAAAAAAI/AAAAAAAAByM/7lMWjWkKRwc/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-kVMjVxhjZkU/TsSM7QHrGSI/AAAAAAAACHk/0Ahxp9Bf4_M/s72-c/01.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4858278767901421083.post-5502766533346169317</id><published>2011-01-19T09:21:00.000+05:00</published><updated>2011-12-14T13:28:52.179+05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DB-CREATE DATABASE'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-DBCA'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-Database Creation'/><title type='text'>02 - Oracle Database Creation</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Before you can create a new database, the following prerequisites must be met: &lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;The Oracle software must be installed: This includes setting various environment variables unique to your operating system and establishing the directory structure for software and database files.&lt;/li&gt;&lt;li&gt;You must have the operating system privileges associated with a fully operational database administrator. Your Oracle username should be included in the DBA group by the system administrator, if you are working on a UNIX or a Linux server.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;You can create an Oracle Database in two ways: &lt;br /&gt;&lt;div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Use the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;CREATE DATABASE &lt;/span&gt;&lt;/b&gt;statement.&lt;/li&gt;&lt;li&gt;Use the Database Configuration Assistant (DBCA). &lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;2.0&amp;nbsp; Planning the Database&lt;/span&gt;&lt;/b&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;The database must be created with proper planning and research. Below is the list of some recommended actions: &lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&lt;b&gt;Plan the Logical Storage Structure:&lt;/b&gt; The number of tablespces, tables and indexes to use and estimate the amount of space they will require.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Plan Physical Storage Structure: &lt;/b&gt;The underlying operating system files your database will comprise. Proper distribution of files can improve database performance dramatically by distributing the I/O during file access. You can distribute I/O in several ways when you install Oracle software and create your database. For example, you can place redo log files on separate disks or use striping.&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Use Oracle Managed Files:&lt;/b&gt; Consider using Oracle-managed files and Automatic Storage Management to create and manage the operating system files that make up your database storage.&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Use Server Parameter File:&lt;/b&gt; A server parameter file lets you store and manage your initialization parameters persistently in a server-side disk file.&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Use Time Zones: &lt;/b&gt;Consider what time zones your database must support.&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Block Size: &lt;/b&gt;Select the standard database block size. This is specified at database creation by the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;DB_BLOCK_SIZE&lt;/span&gt;&lt;/b&gt; initialization parameter and cannot be changed after the database is created.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;2.1&amp;nbsp; Using the &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;CREATE DATABASE&lt;/span&gt; Statement&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Decide on a directory structure for the database; it is recommended that you comply with Oracle's Flexible Architecture as shown below:&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-EFfUOJibYqs/TsDZ4WMzoLI/AAAAAAAAB6U/tQuiacT05CY/s1600/01.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-EFfUOJibYqs/TsDZ4WMzoLI/AAAAAAAAB6U/tQuiacT05CY/s1600/01.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-Z19M6d8SIRw/TsDaLSRR-DI/AAAAAAAAB6c/0tNxD9lCSb8/s1600/02.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-Z19M6d8SIRw/TsDaLSRR-DI/AAAAAAAAB6c/0tNxD9lCSb8/s1600/02.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;Decide on a unique Oracle system identifier (SID) for your instance and set the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ORACLE_SID&lt;/span&gt;&lt;/b&gt; environment variable accordingly. This identifier is used to distinguish this instance from other Oracle Database instances that you may create later and run concurrently on your system. &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-PdQyN5FMNHQ/TsDanY1t27I/AAAAAAAAB6k/C0Rk6r_ED2w/s1600/03.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-PdQyN5FMNHQ/TsDanY1t27I/AAAAAAAAB6k/C0Rk6r_ED2w/s1600/03.gif" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Open your favorite text editor and type the following minimum initialization parameters.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-VhJyFpFYGA4/TsDbo47Jr2I/AAAAAAAAB6s/khamyz2wBpU/s1600/04.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-VhJyFpFYGA4/TsDbo47Jr2I/AAAAAAAAB6s/khamyz2wBpU/s1600/04.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Store your initialization parameter file with name initdb1.ora in the /u01/app/oracle/admin/db1/pfile&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; directory.&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Start SQL*Plus and connect to your Oracle Database instance AS SYSDBA.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-2JFZn5K8-OU/TsDcCEoVU5I/AAAAAAAAB60/CHDm_gN5i4k/s1600/05.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-2JFZn5K8-OU/TsDcCEoVU5I/AAAAAAAAB60/CHDm_gN5i4k/s1600/05.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Create a Server Parameter File. The server parameter file enables you to change initialization parameters with database commands and persist the changes across a shutdown and startup.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-oDW1Q8OHEHw/TsDceH57L_I/AAAAAAAAB68/i7A-7OTJQuE/s1600/06.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-oDW1Q8OHEHw/TsDceH57L_I/AAAAAAAAB68/i7A-7OTJQuE/s1600/06.gif" /&gt; &lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;Start an instance without mounting a database. Typically, you do this only during database creation or while performing maintenance on the database.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&amp;nbsp;&lt;a href="http://4.bp.blogspot.com/-aag9k2-YXBw/TsDc8Z5ECdI/AAAAAAAAB7E/5XNHMaKjE8c/s1600/07.gif" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-aag9k2-YXBw/TsDc8Z5ECdI/AAAAAAAAB7E/5XNHMaKjE8c/s1600/07.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;To create the new database, use the&amp;nbsp;&lt;span style="font-size: small;"&gt;&lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;CREATE DATABASE&lt;/span&gt;&lt;/b&gt;&lt;/span&gt; statement. The following statement creates database db1, note we are using Oracle-Managed Files.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&amp;nbsp;&lt;a href="http://1.bp.blogspot.com/-VGAJ62kD28I/TsDdX5U2TBI/AAAAAAAAB7M/svYHkvqrvF0/s1600/08.gif" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-VGAJ62kD28I/TsDdX5U2TBI/AAAAAAAAB7M/svYHkvqrvF0/s1600/08.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;To make the database functional, you need to create additional user tablespace.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&amp;nbsp;&lt;a href="http://1.bp.blogspot.com/-wZ88o6AtS9E/TsDd73fI6iI/AAAAAAAAB7U/uFIXbdJQqFo/s1600/09.gif" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-wZ88o6AtS9E/TsDd73fI6iI/AAAAAAAAB7U/uFIXbdJQqFo/s1600/09.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-lC5wIMsjDNI/TsDeP9YfGbI/AAAAAAAAB7c/8jbYERomo1E/s1600/10.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;Run the scripts necessary to build the database. CATALOG.SQL creates the views of the data dictionary tables, the dynamic performance views, and public synonyms for many of the views. CATPROC.SQL Runs all scripts required for or used with PL/SQL.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&amp;nbsp;&lt;a href="http://1.bp.blogspot.com/-lC5wIMsjDNI/TsDeP9YfGbI/AAAAAAAAB7c/8jbYERomo1E/s1600/10.gif" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-lC5wIMsjDNI/TsDeP9YfGbI/AAAAAAAAB7c/8jbYERomo1E/s1600/10.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-b8e37bRN7sc/TsDe-IHL10I/AAAAAAAAB7k/FIMC_7OHia4/s1600/11.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;The following graphics shows the database files.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&amp;nbsp;&lt;a href="http://1.bp.blogspot.com/-b8e37bRN7sc/TsDe-IHL10I/AAAAAAAAB7k/FIMC_7OHia4/s1600/11.gif" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" src="http://1.bp.blogspot.com/-b8e37bRN7sc/TsDe-IHL10I/AAAAAAAAB7k/FIMC_7OHia4/s400/11.gif" width="399" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;2.2&amp;nbsp; Using the Database Configuration Assistant&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;The Database Configuration Assistant (DBCA) tool creates a database from Oracle-supplied templates. Templates contain settings optimized for workload. Choose the template suited to the type of workload your database will support. Alternatively, you can create your own database and templates.&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;Start DBCA on UNIX or Linux, or at the command-line prompt on the Windows operating system, enter the following command: &lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-o8DBiEKc4ig/TsICsiNIDZI/AAAAAAAACE4/8mdPk31F2NM/s1600/12.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-o8DBiEKc4ig/TsICsiNIDZI/AAAAAAAACE4/8mdPk31F2NM/s1600/12.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The dbca utility is typically located in the $ORACLE_HOME/bin directory. &lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;Click Next to bypass with Welcome window.&lt;/li&gt;&lt;li&gt;Select Create Database from the wizard and click next.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-1uXO6nIuzdY/TsIDrskibZI/AAAAAAAACFA/Dn_Bq3HNBzg/s1600/13.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-1uXO6nIuzdY/TsIDrskibZI/AAAAAAAACFA/Dn_Bq3HNBzg/s1600/13.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;&amp;nbsp;The next screen shows pre-defined templates. If you are not sure which to choose, select the default General Purpose template. You can check the initialization parameters by clicking the Show Details button. Click next.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-ZbqINEY68Tw/TsIEEKMONHI/AAAAAAAACFI/r6E3JWW6axM/s1600/14.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-ZbqINEY68Tw/TsIEEKMONHI/AAAAAAAACFI/r6E3JWW6axM/s1600/14.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;In the Global Database Name box, enter the database name in the form &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;database_name.domain_name&lt;/span&gt;&lt;/b&gt;. In the SID box, enter the Oracle system identifier. The SID defaults to the database name and uniquely identifies the instance that runs the database. Click next.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-kX5KGpFGVlE/TsIEd3FR_VI/AAAAAAAACFc/98LLFfBdVzQ/s1600/15.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-kX5KGpFGVlE/TsIEd3FR_VI/AAAAAAAACFc/98LLFfBdVzQ/s1600/15.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Set up your database so it can be managed with Oracle Enterprise Manager.&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-200tIcyOalU/TsIE03oW5rI/AAAAAAAACFo/8fwKIdL4R14/s1600/16.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-200tIcyOalU/TsIE03oW5rI/AAAAAAAACFo/8fwKIdL4R14/s1600/16.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;Specify the passwords for the administrative accounts such as SYS and SYSTEM.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-luSfsdK9zKw/TsIFKnw5DCI/AAAAAAAACFw/I7HEFQd6aYg/s1600/17.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-luSfsdK9zKw/TsIFKnw5DCI/AAAAAAAACFw/I7HEFQd6aYg/s1600/17.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;Select storage mechanism do you want your database to use. &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-MobqPOsxi9s/TsIFkMuhucI/AAAAAAAACF4/pcaud1RJtGU/s1600/18.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-MobqPOsxi9s/TsIFkMuhucI/AAAAAAAACF4/pcaud1RJtGU/s1600/18.gif" /&gt; &lt;/a&gt;&lt;i&gt;&amp;nbsp;&lt;/i&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;i&gt;File System&lt;/i&gt; option creates database files that are managed by your operating system's file system.&lt;i&gt; Automatic Storage Management&lt;/i&gt; enables you to define a pool of storage (called a disk group) in which&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;Oracle automatically manages database file placement and naming. &lt;i&gt;Raw Devices&lt;/i&gt; option enables you to manage your storage devices outside of the operating system file system by providing Oracle Database with unformatted physical disk space called raw devices.&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;If you are not certain of which option to use, choose the default selection of File System.&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Specify file locations for the database files. For now select the Use Database File Location from Template, we will change it at the end according to our requirements. &lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-wV--Yfuu9I0/TsIGnF4TwqI/AAAAAAAACGA/wYF5IQnZX3M/s1600/19.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-wV--Yfuu9I0/TsIGnF4TwqI/AAAAAAAACGA/wYF5IQnZX3M/s1600/19.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-0r0ZmqY_SMs/TsIHIbAuEqI/AAAAAAAACGI/F0BwXCS7GvY/s1600/20.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;Specify Flash Recovery Area option to specify a backup and recovery area and specify its directory location and size.&amp;nbsp; Enable Archiving option to enable archiving of database redo logs, which can be used to recover a database.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&amp;nbsp;&lt;a href="http://1.bp.blogspot.com/-0r0ZmqY_SMs/TsIHIbAuEqI/AAAAAAAACGI/F0BwXCS7GvY/s1600/20.gif" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-0r0ZmqY_SMs/TsIHIbAuEqI/AAAAAAAACGI/F0BwXCS7GvY/s1600/20.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;Load database with data. Check Sample Schemas to include the Sample Schemas tablespace in your database. In the Custom Scripts tab, you can specify one or more SQL scripts to run after your database is created. Scripts are useful for performing post-installation tasks, such as loading custom schemas.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-xiVyTwY7FiQ/TsIHeMB9dPI/AAAAAAAACGQ/St9KugESvxQ/s1600/21.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-xiVyTwY7FiQ/TsIHeMB9dPI/AAAAAAAACGQ/St9KugESvxQ/s1600/21.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;The initialization parameters window is used to set the initialization parameters that control how the database manages its memory usage.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-AT3Uxk8N-ak/TsIH-pdPsvI/AAAAAAAACGY/tir3Q9L_zBw/s1600/22.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-AT3Uxk8N-ak/TsIH-pdPsvI/AAAAAAAACGY/tir3Q9L_zBw/s1600/22.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;i&gt;Sizing &lt;/i&gt;tab specify the smallest block size and the maximum number of operating system user processes that can simultaneously connect to the database. &lt;i&gt;Character Sets&lt;/i&gt; tab define the character sets used by your database. Character sets are the encoding schemes used to display characters on your computer screen. National character set is an alternative character set that enables you to store Unicode characters in a database that does not have a Unicode database character set. &lt;i&gt;Connection Mode&lt;/i&gt; can be shared or dedicated.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;Next a navigation tree displays the storage structure of your database (control files, datafiles, redo log groups, and so forth). Here we will change the files location as shown below:&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-q7EMbW7jA00/TsIIkmVKscI/AAAAAAAACGg/CPXLVDLVKK8/s1600/23.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-q7EMbW7jA00/TsIIkmVKscI/AAAAAAAACGg/CPXLVDLVKK8/s1600/23.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-EYtdnG2mWmk/TsII79t9fII/AAAAAAAACGo/25gB-iM9R6w/s1600/24.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-EYtdnG2mWmk/TsII79t9fII/AAAAAAAACGo/25gB-iM9R6w/s1600/24.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;Check create database checkbox and select finish to start orcl database creation.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&amp;nbsp;&lt;a href="http://4.bp.blogspot.com/-85GZwobCJoA/TsIJVUIWCOI/AAAAAAAACGw/DayeNTx7a6I/s1600/25.gif" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-85GZwobCJoA/TsIJVUIWCOI/AAAAAAAACGw/DayeNTx7a6I/s1600/25.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;The database configuration assistant window will be appeared and shows the database creation progress.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-gVBr9_eaV1U/TsIJ1U2qfrI/AAAAAAAACG4/XsLWH_wpCiI/s1600/26.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-gVBr9_eaV1U/TsIJ1U2qfrI/AAAAAAAACG4/XsLWH_wpCiI/s1600/26.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;The following graphics shows the database files.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-Jf0nPnIOVUU/TsIKRwW5AGI/AAAAAAAACHA/-Joe90xcZ8k/s1600/27.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="345" src="http://4.bp.blogspot.com/-Jf0nPnIOVUU/TsIKRwW5AGI/AAAAAAAACHA/-Joe90xcZ8k/s400/27.gif" width="400" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-wNPml5ZrPRs/TsIK5VrjTXI/AAAAAAAACHI/lBvamJUaN8M/s1600/28.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="137" src="http://4.bp.blogspot.com/-wNPml5ZrPRs/TsIK5VrjTXI/AAAAAAAACHI/lBvamJUaN8M/s400/28.gif" width="400" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;2.3&amp;nbsp; Viewing Information about the Database &lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;You can view information about your database content and structure using the following views:&lt;/div&gt;&lt;ul style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;li&gt;&lt;b&gt;DATABASE_PROPERTIES&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;GLOBAL_NAME&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;V$DATABASE&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;V$PARAMETER&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;V$PARAMETER2&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;V$SPPARAMETER&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;div class="separator" style="clear: both; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-PdQyN5FMNHQ/TsDanY1t27I/AAAAAAAAB6k/C0Rk6r_ED2w/s1600/03.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;&lt;br /&gt; &lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4858278767901421083-5502766533346169317?l=asghars.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asghars.blogspot.com/feeds/5502766533346169317/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://asghars.blogspot.com/2011/07/creating-oracle-database.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/5502766533346169317'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/5502766533346169317'/><link rel='alternate' type='text/html' href='http://asghars.blogspot.com/2011/07/creating-oracle-database.html' title='02 - Oracle Database Creation'/><author><name>Muhammad Asghar Khan</name><uri>https://profiles.google.com/102545751511475719828</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-uiG6pTx0jQw/AAAAAAAAAAI/AAAAAAAAByM/7lMWjWkKRwc/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-EFfUOJibYqs/TsDZ4WMzoLI/AAAAAAAAB6U/tQuiacT05CY/s72-c/01.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4858278767901421083.post-7926418664515620126</id><published>2011-01-10T09:34:00.000+05:00</published><updated>2011-12-14T13:28:14.804+05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DB-Installation'/><category scheme='http://www.blogger.com/atom/ns#' term='DB-OFA'/><title type='text'>01 - Oracle Database Server Installation</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div style="text-align: justify;"&gt;Installing the Oracle server software is really a simple affair. Installing all the software will probably not take you more than a couple of hours. All the real effort goes into the proper planning of such things as the operating system configuration and physical space you need for your Oracle databases to function optimally.&lt;/div&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;1.0&amp;nbsp; Choice of Operating System&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;All operating systems have good and bad points: none are suitable for all applications. In general, Oracle Corporation supports all the mainstream platforms, including:&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Linux on Intel and AMD&lt;/li&gt;&lt;li&gt;Microsoft Windows on Intel and AMD&lt;/li&gt;&lt;li&gt;Solaris on SPARC (Scalable Processor Architecture) from Sun Microsystems&lt;/li&gt;&lt;li&gt;HPUX on PA-RISC (Precision Architecture- Reduced Instruction Set Computer) from HP&lt;/li&gt;&lt;li&gt;AIX on POWER from IBM&lt;/li&gt;&lt;/ul&gt;&lt;b&gt;1.0.1&amp;nbsp; Setting up the RHEL 5.0 on VMware Workstation&lt;/b&gt;&lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Open the VMware and Select File --&amp;gt; New --&amp;gt; Virtual Machine.&lt;/li&gt;&lt;li&gt;Select typical configuration from the Welcome screen and click Next.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11pt; line-height: 115%;"&gt;&lt;span id="goog_1239424654"&gt;&lt;/span&gt;&lt;span id="goog_1239424655"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-USvRNVLM3ek/Tr33IW_VpgI/AAAAAAAAB0M/HXZrHQVPSt4/s1600/01.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="157" src="http://4.bp.blogspot.com/-USvRNVLM3ek/Tr33IW_VpgI/AAAAAAAAB0M/HXZrHQVPSt4/s320/01.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Select the last option on next screen and click Next.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-YwmpPvntnwQ/Tr33c19-VsI/AAAAAAAAB0U/gwcQpzw15E0/s1600/02.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="245" src="http://4.bp.blogspot.com/-YwmpPvntnwQ/Tr33c19-VsI/AAAAAAAAB0U/gwcQpzw15E0/s320/02.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Select Red Hat Enterprise Linux 5 from the drop down list and click Next.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-SIi-74-_9Kc/Tr33xnSGSSI/AAAAAAAAB0c/D3dkiMNtjEE/s1600/03.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="208" src="http://4.bp.blogspot.com/-SIi-74-_9Kc/Tr33xnSGSSI/AAAAAAAAB0c/D3dkiMNtjEE/s320/03.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Enter virtual machine Name, Location and click Next button.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-yWyBP4ASdAw/Tr34Jiv9rkI/AAAAAAAAB0s/7oIzFArW7Y8/s1600/04.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="152" src="http://2.bp.blogspot.com/-yWyBP4ASdAw/Tr34Jiv9rkI/AAAAAAAAB0s/7oIzFArW7Y8/s320/04.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;On next screen enter the value for disk size and click Finish on next screen.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-4x7nMTvDeCo/Tr34bcuz0_I/AAAAAAAAB00/SBsYw8UztWw/s1600/05.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="132" src="http://1.bp.blogspot.com/-4x7nMTvDeCo/Tr34bcuz0_I/AAAAAAAAB00/SBsYw8UztWw/s320/05.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;On the RedHat5 tab select Edit Virtual Machine Settings.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-oZHCVTsn8SQ/Tr34vV62YtI/AAAAAAAAB08/U2N1k6XQVho/s1600/06.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-oZHCVTsn8SQ/Tr34vV62YtI/AAAAAAAAB08/U2N1k6XQVho/s1600/06.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Click the Add button at the bottom of list. Select Hard Disk from the hardware list and click Next.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-JCe0Si2iV00/Tr35F1yNzoI/AAAAAAAAB1E/ZcyFK6iVi4U/s1600/07.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="93" src="http://1.bp.blogspot.com/-JCe0Si2iV00/Tr35F1yNzoI/AAAAAAAAB1E/ZcyFK6iVi4U/s320/07.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Select Create a new virtual disk option and click next button.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-TAFaV60bpH8/Tr35Y37WBYI/AAAAAAAAB1M/fQM6H3Q6uuE/s1600/08.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="120" src="http://1.bp.blogspot.com/-TAFaV60bpH8/Tr35Y37WBYI/AAAAAAAAB1M/fQM6H3Q6uuE/s320/08.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Here select the SCSI option.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-xJeddyAvOhI/Tr35pzfo74I/AAAAAAAAB1U/Mv2cI2qTG7Q/s1600/09.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="117" src="http://2.bp.blogspot.com/-xJeddyAvOhI/Tr35pzfo74I/AAAAAAAAB1U/Mv2cI2qTG7Q/s320/09.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Provide 10 GB size and on next screen accept the default name and clcik Finish.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-2TdnnfPzKs4/Tr36DLH3kbI/AAAAAAAAB1c/vyRqjSXLq2A/s1600/10.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="122" src="http://2.bp.blogspot.com/-2TdnnfPzKs4/Tr36DLH3kbI/AAAAAAAAB1c/vyRqjSXLq2A/s320/10.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Similarly add three more hard disks each one has a size of 10GB.&lt;/li&gt;&lt;li&gt;Your Virtual Machine Setting should be identical to the one as shown below.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-5gsv56XWpFU/Tr36W9RikRI/AAAAAAAAB1k/7MfbaB4JRSY/s1600/11.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="195" src="http://1.bp.blogspot.com/-5gsv56XWpFU/Tr36W9RikRI/AAAAAAAAB1k/7MfbaB4JRSY/s320/11.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Insert the RHEL media in the DVD player and Power On the Virtual Machine, you will be welcomed by the RHEL installer.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-4J3vWUAqtkg/Tr36vw9csaI/AAAAAAAAB1s/xi_9pq60yaY/s1600/12.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="121" src="http://2.bp.blogspot.com/-4J3vWUAqtkg/Tr36vw9csaI/AAAAAAAAB1s/xi_9pq60yaY/s320/12.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;Click the Next button on the next screen.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-tgElSUyaAk0/Tr37D9Yx7XI/AAAAAAAAB10/YC1PaZM6lzQ/s1600/13.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="109" src="http://2.bp.blogspot.com/-tgElSUyaAk0/Tr37D9Yx7XI/AAAAAAAAB10/YC1PaZM6lzQ/s320/13.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;On next screens select Language, Keyboard and enter Installation Number.&lt;/li&gt;&lt;li&gt;Select yes on next screen to create partitions on our virtual drives.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-ZGJ_YfhZgZM/Tr37kpDfUNI/AAAAAAAAB18/T0NZCOxiGmA/s1600/14.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="163" src="http://2.bp.blogspot.com/-ZGJ_YfhZgZM/Tr37kpDfUNI/AAAAAAAAB18/T0NZCOxiGmA/s320/14.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Select Custom Layout from the drop down list on next screen and click Next.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: left;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-0qpEUlxIfdg/Tr370tPhg9I/AAAAAAAAB2E/NXibk7CmQFo/s1600/15.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="78" src="http://2.bp.blogspot.com/-0qpEUlxIfdg/Tr370tPhg9I/AAAAAAAAB2E/NXibk7CmQFo/s320/15.gif" width="320" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Set the partition on first drive (sda) as shown below. For oracle the swap size should be 1.5 times of the RAM size. &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-S3yWchWRqdQ/Tr38RN7sTMI/AAAAAAAAB2M/8Wuc4C7bk0Q/s1600/16.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="113" src="http://3.bp.blogspot.com/-S3yWchWRqdQ/Tr38RN7sTMI/AAAAAAAAB2M/8Wuc4C7bk0Q/s320/16.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul&gt;&lt;li&gt;Partition the next drives as shown below.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-ARHkFklxAyM/Tr38jVQ5svI/AAAAAAAAB2U/p1v4xp7JSPs/s1600/17.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="225" src="http://1.bp.blogspot.com/-ARHkFklxAyM/Tr38jVQ5svI/AAAAAAAAB2U/p1v4xp7JSPs/s320/17.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-NGApLwImOHk/Tr382ewRKTI/AAAAAAAAB2c/QWwb6xIBGLg/s1600/18.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="72" src="http://3.bp.blogspot.com/-NGApLwImOHk/Tr382ewRKTI/AAAAAAAAB2c/QWwb6xIBGLg/s320/18.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;Provide root user password and click Next. On package selection screen select Customize Now.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-TfK9EsI1gm0/Tr39HAE2zLI/AAAAAAAAB2k/Ofgrse_YuQw/s1600/19.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="47" src="http://2.bp.blogspot.com/-TfK9EsI1gm0/Tr39HAE2zLI/AAAAAAAAB2k/Ofgrse_YuQw/s320/19.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Select the all packages for development section of customization to fulfill the oracle installation requirements.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-VXD5-KMk8H8/Tr39hEnjbPI/AAAAAAAAB2s/4r07N1Q_iog/s1600/20.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="100" src="http://1.bp.blogspot.com/-VXD5-KMk8H8/Tr39hEnjbPI/AAAAAAAAB2s/4r07N1Q_iog/s320/20.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;Finally select Next, after formatting the partition the installer will start installation of the required packages.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-Rt-CiiniMFE/Tr39z6PbgpI/AAAAAAAAB20/VSkTDJU4Peg/s1600/21.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="57" src="http://4.bp.blogspot.com/-Rt-CiiniMFE/Tr39z6PbgpI/AAAAAAAAB20/VSkTDJU4Peg/s320/21.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;b&gt;1.0.2&amp;nbsp; Configure RHEL Kernel for Oracle &lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Oracle recommends that you tune the following values to optimize the performance of the system. &lt;/div&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Semaphore Parameters: &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;semmsl, semmns, semopm, semmni&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Shared Memory Segments:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;shmall, shmmax, shmmni&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; File Handles:&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;file-max&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Port Numbers:&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ip_local_port_range&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Socket Receive Buffer Size:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;rmem_default, rmem_max&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Socket Send Buffer Size:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;wmem_default, wmem_max&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;If the value of any kernel parameter is different from the recommended value, then using any text editor, create or edit the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;/etc/sysctl.conf&lt;/span&gt;&lt;/b&gt; file, and add or edit lines similar to the following:&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-Ej6AoSAtDrs/TgqrIn-TM_I/AAAAAAAABgA/tQpetloSLIQ/s1600/02-KernalPara01.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="213" src="http://3.bp.blogspot.com/-Ej6AoSAtDrs/TgqrIn-TM_I/AAAAAAAABgA/tQpetloSLIQ/s400/02-KernalPara01.gif" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Restart the system to persist the changes.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;1.0.3&amp;nbsp; Configure RHEL Shell for Oracle&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;To improve the performance of the software on Linux systems, you must increase the following shell limits for the oracle user:&lt;/div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;nofile&lt;/span&gt;&lt;/b&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Maximum number of open file descriptors&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;nproc&lt;/span&gt;&lt;/b&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Maximum number of processes available to a single user&lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Add the following lines to the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;/etc/security/limits.conf&lt;/span&gt;&lt;/b&gt; file: &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-3Af7M7AH21U/TgqrmpcBdAI/AAAAAAAABgE/QYyB0q9hsAM/s1600/02-ShellLimits01.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="162" src="http://1.bp.blogspot.com/-3Af7M7AH21U/TgqrmpcBdAI/AAAAAAAABgE/QYyB0q9hsAM/s400/02-ShellLimits01.gif" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;Add or edit the following line in the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;/etc/pam.d/login&lt;/span&gt;&lt;/b&gt; file, if it does not already exist:&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-cPPLTGRB9pk/TgqryF42dWI/AAAAAAAABgI/pU092EN2vCI/s1600/02-ShellLimits02.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="158" src="http://1.bp.blogspot.com/-cPPLTGRB9pk/TgqryF42dWI/AAAAAAAABgI/pU092EN2vCI/s400/02-ShellLimits02.gif" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-3S-70AWBCto/TsC3JJprm4I/AAAAAAAAB5U/h5OvKIHF7Hs/s1600/36.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;b&gt;1.0.4&amp;nbsp; Check Network Configuration&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Verify that the /etc/hosts file is used for name resolution. You can do this by checking the hosts file entry in the nsswitch.conf file.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&amp;nbsp;&lt;a href="http://1.bp.blogspot.com/-3S-70AWBCto/TsC3JJprm4I/AAAAAAAAB5U/h5OvKIHF7Hs/s1600/36.gif" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="46" src="http://1.bp.blogspot.com/-3S-70AWBCto/TsC3JJprm4I/AAAAAAAAB5U/h5OvKIHF7Hs/s400/36.gif" width="400" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The output of the command should contain an entry for files.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;Check hostname.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&amp;nbsp;&lt;a href="http://1.bp.blogspot.com/-vzULSBw5EZM/TsC3mKLHGTI/AAAAAAAAB5c/C29Ao1LyUGg/s1600/37.gif" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-vzULSBw5EZM/TsC3mKLHGTI/AAAAAAAAB5c/C29Ao1LyUGg/s1600/37.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; The output should be similar to the output shown above.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;Check the domain name has not been set dynamically.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&lt;img alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAAnCAIAAABvzgELAAAJL0lEQVR4nO2cbUhTYRvHTyN1OrbpVq4lemSSjMSXzGy01kwTCl8209CKhhqZIJiFUmjYyKKSAkOCsqAPlkJpU/ogab6gUVm5RBGVrMyF03T5tuNbuvv5cHgOYzvnODUXz7P792nnOrfXdV/3uf67d7ZziQAIxIFB/vUEIJB/CRQAxKGBAoA4NFAAEIfGUgAzMzMIgqAoeu7cuY2Ip9VqY2JiLIwmk+nBgwfh4eEoioaFhdXV1eF2FEWFQiGCIGNjYxsxGSr/crm8tLT0r4QgzXcNKJXK7du3CwQC61NSqbS5ubm7u1ssFtvu8OLFiydPnlz/xOzpeSMgF8D37983KF5zczOfz7cwZmdnx8bG4kHb29sFAkF/fz9+Sq/Xb5wAqPz/RQGQ5rs2GhoarAWwuLjIYrGMRmNZWVlaWprt3jauTN++fVtfX78RnjcCWwWgUCjOnz8fHx/v6+srFArxN+nR0VGFQsFmsz08PNLT0zEMwweT2vv7+1EUFQgEDAYDRVEURQsLCwEA7969CwwMXFxcJGLl5eXdvn0bf01aoFRxAQA1NTUhISEsFksoFF69ehU3Pnr0SCwWu7m58fl8i/FUAsjLy9u/f7+Li4tEIhkZGaGPOz4+rlQquVyuu7v7rl278NWjynfNkAqgvb09KCgIAJCWllZWVkbv4cuXL1KplMVi7d27Nzk5mRAAaV4ajcbPz08sFvv4+BQUFHC5XIVCgY+nWs/nz5+jKMrhcCykJZfL09PTDxw44Ovra76eVHZS/zTzmZ6ePnPmzJYtW9hs9tGjRw0Gg+2rugoB8Pn8trY2AACGYTqdDgAQExMTHx+PYdjY2Nju3btzcnLwwVR2QPaOmJWVdf/+fQDAw4cPRSJRQEBAQkLC5cuX8bOkBUrlv7W1lclkvnjxwmQyTU5OVldX4/aKioqOjg6TyYSPz8/PJ1xRCcDf339wcNBgMISGhl66dIk+bn5+flRUFIZhJpPp8+fPo6OjNPmuGQsBtLW1cblcJpPp7OzM5XIZDAabzd6zZw+Nh7CwsIyMjMXFxY6ODjc3N6JMSfPSaDRCoXB+fj4qKioxMRHDMA6H8+PHD0C7noBsb5HL5aGhobOzs8vLy1FRUcR6UtlJ/dPMJyEhITIy0mAwzM3NqVSqpKQk21d1FQKw2GExDGMwGG/evMEPy8vLvb29aew41gUhk8m0Wm13d7eXl9fQ0JDRaIyMjCwoKMDPWhcojX+VSqVSqegTLi4uPnz4MHFIJQBi9ygsLFQqlfRx1Wp1cHCwVqtdXl62CGe7AIaGhiIjI52dnSUSycuXLzEMq6ioaGpqIgaQ7gCxsbFVVVU/f/7ctm0bvf/BwUEEQb59+4YfpqSk4GVKlZdGo5FIJACAs2fP4pdDLBa/f//ewq3FegIKAdy4cQN/rVar8fWksZP6p5oPfgW1Wi0+vq+vz8nJaWFhgX41CFYhAKImcHQ6HYIgX79+xQ9fv37NZDJp7DjWBRESEjIwMPDkyZMTJ07glnv37tEIgMb/oUOH1Gq1dZKvXr2Sy+U+Pj4oivJ4vIiICOLUivcARUVF+F0sTdyZmZmcnByxWMxisY4dOzYxMUGTLxWVlZUNDQ3z8/N1dXVyuZzJZCYlJU1NTREDrAWwtLTk4eFhMBjKy8tTUlLo/X/8+BFBEKIycnNz8TKlykuj0UilUgBAVlbWlStXAAABAQG4TmjWE1AIwHo9aeyk/qnm8+nTJwRB8MEoivr4+HC53F+/fq2w3P9lFQIoKioyt6xtB2hpaeHxeOZ+IiIi2tvbe3t7RSLR+Pj44uJiTEwMIYDR0VEEQczzofF/6tQp6x1gcnLSxcXl2bNnJpMJAHDz5k25XE6ctfYPKC4MfV44Op0uMDDw+vXrNPmuGQsBeHl58Xi8zZs3CwQCJpPJ4XAEAsHw8DDVn+M7gF6vxw/T09NX3AGsC66trY1+PcG6BUDln2o+w8PDCIIQ9w+rZe0CAAAcOXJEoVDgnx3DwsKys7Pp7QCAnp4eBoNh7j8vL6+4uBgAUFlZKZFIZDLZ8ePHiZvgP3/+cDicqqoqW+K2tLS4urrW1taaTKbp6ena2loAwMjIyKZNm/r6+gAAExMTAQEB5heM1D/VBaOKW19fPzAwAAD4/ft3UFDQnTt3aPJdM9Y7QH5+vlqtXlpaEggERGXTEBoaeuvWLQDA2NiYp6cnUaakeVEVHP16gnULgMo/1XwAAHFxccnJyePj4wAAnU5H3PvZwroEoNfr4+Li8G8PUlNTjUYjvR0nIyODx+N5eXnhd7q9vb0oitLcuT99+tTT05PFYhE/TdD4r66uDg4OZrFYW7duxZcJAFBSUuLn5yeVSg8ePJienm5xwaz9U10wqrh379719fVls9l8Pv/06dOzs7M0+a4ZawGIxeKurq7GxkaZTGaLh/7+/n379oWGhoaHh0dHRxNlSpoXTcFRradcLse/BWKxWCiK+vv7E/ZVfQQi9U8zn6mpqYyMDPwiikQi4rrbgr1/ByCltLQ0ODi4tbXVZDItLS2Zf4aGEJDeBEPWiaUAjEYjn8/fsWPHhQsX7DmPpqYmhUIhEom8vb1LSkrsGfp/gsTERJFItHPnzn89kf834LNAEIcGCgDi0EABQBwaKACIQwMFAHFooAAgDg25AJRK5ePHj+05j/z8/NzcXHtGhEAAqQBaWlr8/PysH2zcUCYmJtzd3e38AxwEQiIApVJ57do1cwtV4wJVgwjVePrGBZVKBTcBiJ2xFMDCwoKrq+uHDx/MjVSNC1QNIlTj6RsXnjx5sqquVghk/VgKoLOzE0GQubk5cyNp4wLN48Gk41dsXOjq6kIQxOLJOQhkQ7EUQGNjo4uLi4VxtQ0ipONXbFwYGhpCEARvcoNA7IOlAPAytegoW22DCOn4FRsXenp6EASZnJz8C2lBILZhKQAMw5ycnDo7O82Nq20QoRpP37iA/0+Bv5gbBLIiJN8CRUdHm/c0gdU3iFCNp29cyMzMzMzM/GuZQSA2QCKA2trawMBAO89jdnaWz+d3dXXZOS7EwSH/JVgmk9XU1NhzHsXFxampqfaMCIEAKgFMT0/jn9Tthl6vt/juFQKxA/BhOIhDAwUAcWigACAODRQAxKGBAoA4NP8BY+4ip0YuaFYAAAAASUVORK5CYII=" /&gt; &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-ADXjGgNPtcg/TsC4TmX2ozI/AAAAAAAAB5k/Yabs_BjbbJw/s1600/38.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Check the hosts file contains the fully qualified host name by using the following command.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-ADXjGgNPtcg/TsC4TmX2ozI/AAAAAAAAB5k/Yabs_BjbbJw/s1600/38.gif" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-ADXjGgNPtcg/TsC4TmX2ozI/AAAAAAAAB5k/Yabs_BjbbJw/s1600/38.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; This output should contain an entry for the fully qualified host name for localhost. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;b&gt;1.0.5&amp;nbsp; Create Groups &amp;amp; User for Oracle&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Create the following groups;&lt;/li&gt;&lt;/ul&gt;&lt;ul style="text-align: left;"&gt;&lt;ul&gt;&lt;li&gt;OSDBA group (dba); identifies operating system user accounts that have database administrative privileges (the SYSDBA privilege)&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ul style="text-align: left;"&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;OSOPER group (oper); optional group, create&amp;nbsp; this group if you want a separate group of operating system users to have a limited set of database administrative privileges (the SYSOPER privilege)&lt;/li&gt;&lt;li&gt;Oracle Inventory group (oinstall); create this group the first time you install Oracle software on the system&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-CC5W22KtJ9s/Tr4CTxTjHYI/AAAAAAAAB28/-iNGPzF2zz8/s1600/22.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-CC5W22KtJ9s/Tr4CTxTjHYI/AAAAAAAAB28/-iNGPzF2zz8/s1600/22.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;&lt;span style="font-family: Symbol;"&gt;&lt;span style="font: 7pt &amp;quot;Times New Roman&amp;quot;;"&gt; &lt;/span&gt;&lt;/span&gt;Create an Oracle software owner user (oracle).&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-Lj_dEwBXR8w/Tr4C1wfXa9I/AAAAAAAAB3E/Tsp6Mhz8jQM/s1600/23.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="11" src="http://3.bp.blogspot.com/-Lj_dEwBXR8w/Tr4C1wfXa9I/AAAAAAAAB3E/Tsp6Mhz8jQM/s400/23.gif" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; In the preceding command,&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;ul&gt;&lt;li&gt;g denotes the primary group of the oracle user, which is the oinstall group&lt;/li&gt;&lt;li&gt;G is the secondary group, which is the dba group&lt;/li&gt;&lt;li&gt;d denotes the home directory for the new user&lt;/li&gt;&lt;li&gt;p is the password for the oracle user&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ul style="text-align: left;"&gt;&lt;ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;div style="text-align: left;"&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;1.1&amp;nbsp; Directory Structure &amp;amp; File Naming Conventions&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;The Oracle needs a file system into which it can be installed. Oracle strongly recommends a disk layout methodology formally called the Optimal Flexible Architecture (OFA).&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;The OFA is a set of recommendations from Oracle Corporation aimed at simplifying management of complex software and databases often running under multiple versions of software. The OFA essentially imposes a standardized way of naming the different physical components of Oracle and places them on the file system according to a logical plan.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;OFA was designed to achieve minimize disk contention, to provide for operating more than one database without administrative confusion, and to improve database performance. You can consider the OFA guidelines a set of best practices regarding two important issues—disk layout and naming conventions—based on extensive field experience by Oracle professionals. &lt;/div&gt;&lt;br /&gt;&lt;b&gt;1.1.1&amp;nbsp; Mount Points&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Mounting refers to attach a directory with a file system. This directory is the top-level directory of a file system. Oracle recommends that all your Oracle mount points be named according to the convention /pm, where p is a string constant to distinguish itself from other mount points, and m is a two-digit number. This means you can name your mount points /u01, /u02, /u03, and so on. &lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-GJ1tftEXrFw/Tr4EApfH7VI/AAAAAAAAB3M/1yh-QYfaOLw/s1600/24.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="126" src="http://1.bp.blogspot.com/-GJ1tftEXrFw/Tr4EApfH7VI/AAAAAAAAB3M/1yh-QYfaOLw/s400/24.gif" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Oracle recommends that you have four mount points to fully comply with the OFA guidelines. The first of these is for locating the Oracle Database server binaries, and the other three are for holding the database files. Let’s say you’re creating mount points for a database named “orcl”. In this case, the three mount points designated for the data files can be clearly named as follows: /u02/oradata/orcl, /u03/oradata/orcl, and /u04/oradata/orcl. This nomenclature makes it clear that these file systems are meant for Oracle databases and that the data for different databases is stored on separate mount points.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;In Linux and UNIX systems, a home directory is the directory that a user lands in when he or she first logs in. All home directories should follow the naming convention /pm/h/u, where pm is the mount point name, h is a standard directory name, and u refers to the directory owner. For example, the /u01/app/oracle directory could be the home directory for the user named oracle.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;1.1.2&amp;nbsp; Oracle Base Directory&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;At the root of the Oracle directory structure is the directory called Oracle base, denoted by the environment variable ORACLE_BASE. The Oracle base directory is the top directory for all Oracle software installations. Oracle recommends that you use the form /pm/h/u. Where:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;pm is the mount point name (e.g. u01)&lt;/li&gt;&lt;li&gt;h is the name of a standard directory (e.g. app)&amp;nbsp;&lt;/li&gt;&lt;li&gt;u is the directory’s owner’s name (e.g. oracle)&lt;/li&gt;&lt;/ul&gt;The default owner of the Oracle base directory is usually a user named oracle, and the standard directory is usually named app. Therefore, the Oracle base directory usually has the form of /pm/app/oracle (for example, /u01/app/oracle).&lt;br /&gt;&lt;br /&gt;The following commands create the Oracle Base Directory.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-GXss3ACqwk0/Tr4Endm6CmI/AAAAAAAAB3U/xaXQyZRlXTQ/s1600/25.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-GXss3ACqwk0/Tr4Endm6CmI/AAAAAAAAB3U/xaXQyZRlXTQ/s1600/25.gif" /&gt;&lt;/a&gt;&lt;/div&gt;Change the owner of base directory to oracle and group to oinstall.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-GOSJbak8N4M/Tr4FpzBphjI/AAAAAAAAB3c/QHruv8QYHJs/s1600/26.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-GOSJbak8N4M/Tr4FpzBphjI/AAAAAAAAB3c/QHruv8QYHJs/s1600/26.gif" /&gt;&lt;/a&gt;&lt;/div&gt;Change permission on the base directory.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-XlzdTHnXDPs/Tr4F_gYB1HI/AAAAAAAAB3k/bEW4lgdc0Ow/s1600/27.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-XlzdTHnXDPs/Tr4F_gYB1HI/AAAAAAAAB3k/bEW4lgdc0Ow/s1600/27.gif" /&gt;&lt;/a&gt;&lt;/div&gt;In the numeric 775 permission, 7 means rwx and 5 means r-x.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;b&gt;1.1.3&amp;nbsp; Oracle Home Directory&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;The Oracle home directory is denoted by the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;ORACLE_HOME &lt;/span&gt;&lt;/b&gt;environment variable, the Oracle server software executable files and other configuration files are located under this directory. For example, the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;$ORACLE_HOME/bin&lt;/span&gt;&lt;/b&gt; directory holds the executables for the Oracle products.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;In order to comply with the OFA requirement of enabling the simultaneous running of multiple versions of Oracle software, you need to install Oracle software in a directory with the following path: /pm/h/u/product/v/type_n, where:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;pm: The mount point name (e.g. u01)&lt;/li&gt;&lt;li&gt;h: The standard directory name (e.g. app)&lt;/li&gt;&lt;li&gt;u: The owner of the directory (e.g. oracle)&lt;/li&gt;&lt;li&gt;v: The version of the software (e.g. 10.2.0)&lt;/li&gt;&lt;li&gt;type: The type of installation, such as database (db), client (client) or companion (companion)&lt;/li&gt;&lt;li style="text-align: justify;"&gt;n: An optional counter, which enables you to install the same product multiple times under the same Oracle base directory&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;In the preceding syntax for the Oracle home, /pm/h/u/product/v_type_n, the first part, /pm/h/u, is nothing but the Oracle base directory. Thus the Oracle home directory is always located underneath the Oracle base directory, and it can also be specified as &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;$ORACLE_BASE/product/v/type_n&lt;/span&gt;&lt;/b&gt;.&lt;/div&gt;&lt;div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Oracle supports multiple Oracle homes, but you can’t install products from one release of Oracle into an Oracle home directory of a different release. You must install the Oracle Database 10.2 software into a new Oracle home directory. For example, you can’t install release 10.2 software into an existing Oracle9i Oracle home directory.&lt;/div&gt;&lt;br /&gt;Oracle Home Directory (e.g. /u01/app/oracle/product/10.2.0/db_1), is automatically created by OUI.&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;b&gt;1.1.4 Oracle Inventory Directory&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;The Oracle Inventory Directory, also known as OraInventory, is used to store an inventory of all the Oracle software on a server. Multiple Oracle installations can share the same Oracle Inventory Directory. You need to specify the path for this directory only the first time you install an Oracle product on a server. The usual format of this directory is as follows: &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;$ORACLE_BASE/ora_inventory&lt;/span&gt;&lt;/b&gt;.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Again the OUI will prompt for its location and no need to create manually.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;1.1.5&amp;nbsp; Flash Recovery Area Directory&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Flash recovery area is a disk area (a directory or ASM disk group but not a raw file system) set apart for storing all the recovery-related files. It’s a good idea to create it on entirely different storage devices from where you have your data files.&amp;nbsp; The usual format is as follows: &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;$ORACLE_BASE/flash_recovery_area&lt;/span&gt;&lt;/b&gt;.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The following commands create the flash recovery area, change owner and permissions.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://2.bp.blogspot.com/-GqVGXtgRG4A/Tr4khymGJqI/AAAAAAAAB3s/J-cKoa8hHcY/s1600/28.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-GqVGXtgRG4A/Tr4khymGJqI/AAAAAAAAB3s/J-cKoa8hHcY/s1600/28.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;b&gt;1.1.6&amp;nbsp; Administrative Files&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Every Oracle database has several administrative files associated with it. Among these files are con-figuration files, core dump files, trace files, export files, and other related log files. You need to store these files under separate directories for ease of maintenance.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Oracle recommends the following directory structure for clarity: /h/admin/d/a, where:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;h is the Oracle base directory (e.g. /u01/app/oracle)&lt;/li&gt;&lt;li&gt;admin indicates that this directory holds administration-related files&lt;/li&gt;&lt;li&gt;d refers to the specific database, and&amp;nbsp;&lt;/li&gt;&lt;li&gt;a refers to the sub directories for each specific type of administrative files&lt;/li&gt;&lt;/ul&gt;Following is the list of standard administrative directories that you’ll need in most cases.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;adhoc; Contains ad hoc SQL files&lt;/li&gt;&lt;li&gt;arch; Contains archived redo log files&lt;/li&gt;&lt;li&gt;adump; Contains any audit files&lt;/li&gt;&lt;li&gt;bdump; Contains background process trace files&lt;/li&gt;&lt;li&gt;create; Contains SQL scripts that you can use for creating your databases&lt;/li&gt;&lt;li&gt;cdump; Contains core dump files&lt;/li&gt;&lt;li&gt;dpdump; Contains the Data Pump Export files&lt;/li&gt;&lt;li&gt;pfile; Contains instance parameter files (such as init.ora)&lt;/li&gt;&lt;li&gt;udump; Contains SQL trace files for user processes&lt;/li&gt;&lt;/ul&gt;These directories will be automatically created by the database configuration assistant.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;b&gt;1.1.7&amp;nbsp; Product Files&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Oracle recommends that you keep each version of the software in a separate directory distinguished by the naming convention /h/product/v, where h is the home directory, product indicates that the software versions are under this directory, and v is the version of the product. For example, I have a directory on my system called /u01/app/oracle/product/10.2.0 under which I save all the Oracle server software subdirectories during installation. If I decide to install the 10.2.1 version, I’ll do so under the directory /u01/app/oracle/product/10.2.1. You can see that this type of naming convention makes it very easy to install and manage multiple versions of the Oracle software.&amp;nbsp; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;1.1.8&amp;nbsp; Database Files&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;These include the data files that contain the table and index data and certain operational files called control files and redo log files.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Oracle recommends that all tablespaces be named with no more than eight characters, with the format tn, where t is a descriptive name for the tablespace and n is a two-digit number. For data files, the recommended notation is /pm/q/d/tn.dbf, where pm is the mount point; q is an indicator, usually “oradata”, d is the database name, t is the descriptive name for the tablespace that contains this data file, and n is a two-digit number. Thus, a typical data file under the OFA guidelines would have a name like /u02/oradata/prod/system01.dbf, which refers to a data file in the System table-space.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;The recommendation for control and redo files is to follow the naming conventions /pm/q/d/controln.ctl and /pm/q/d/redon.log, respectively. In this notation, pm is the mount point; q is an indicator, such as “oradata”, denoting that the files contain Oracle-related data; d is the data-base name, and n is a two-digit number.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-12spd_VqxVo/Tr4mLrAMTWI/AAAAAAAAB30/5AJM8LPF688/s1600/29.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;The following commands create the directories for database files.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-12spd_VqxVo/Tr4mLrAMTWI/AAAAAAAAB30/5AJM8LPF688/s1600/29.gif" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-12spd_VqxVo/Tr4mLrAMTWI/AAAAAAAAB30/5AJM8LPF688/s1600/29.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&amp;nbsp; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;1.2&amp;nbsp; Configure Oracle User’s Environment&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Login as the oracle user and set the following environment variables.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;Open the oracle user’s shell startup file in any text editor,&amp;nbsp; on&amp;nbsp; bourne shell , bash shell, or korn shell it will be &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;.bash_profile&lt;/span&gt;&lt;/b&gt; while on c shell it will be .login and enter the following lines&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-gaRMZh-ZNxI/Ts3xIngHGOI/AAAAAAAACTk/2AFmUxMsVfs/s1600/01.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-gaRMZh-ZNxI/Ts3xIngHGOI/AAAAAAAACTk/2AFmUxMsVfs/s1600/01.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;Depending on the oracle user's default shell, make the following changes to the default shell start-up file: For the Bourne, Bash, or Korn shell, add the following lines to the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;/etc/profile&lt;/span&gt;&lt;/b&gt; file&amp;nbsp;&amp;nbsp; (or the file on SUSE systems) &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;/etc/profile.local&lt;/span&gt;&lt;/b&gt;:&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-nYUbBef-mio/Ts3xXIYZlFI/AAAAAAAACTs/btWsxN3A9mA/s1600/02.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-nYUbBef-mio/Ts3xXIYZlFI/AAAAAAAACTs/btWsxN3A9mA/s1600/02.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;&amp;nbsp;Run the shell script&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-DT8Ay2akicM/Tr4np9LiozI/AAAAAAAAB38/f6CCG57vn60/s1600/30.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-DT8Ay2akicM/Tr4np9LiozI/AAAAAAAAB38/f6CCG57vn60/s1600/30.gif" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;1.3&amp;nbsp; Running Oracle Universal Installer&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Oracle Universal Installer (OUI) is a Java application that performs component-based installations. OUI provides the following capabilities for addressing software management and distribution:&lt;br /&gt;&lt;ul&gt;&lt;ul&gt;&lt;li&gt;Automatic dependency resolution and complex logic handling&lt;/li&gt;&lt;li&gt;Installation from the Web&lt;/li&gt;&lt;li&gt;Component and suite installations&lt;/li&gt;&lt;li&gt;Implicit deinstallation&lt;/li&gt;&lt;li&gt;Support for multiple Oracle homes&lt;/li&gt;&lt;li&gt;NLS or globalization support&lt;/li&gt;&lt;li&gt;Support for distributed installations&lt;/li&gt;&lt;li&gt;Unattended “silent” installations that use response files&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Create a staging directory, such as /staging, and copy the contents of the CD to this directory as shown: &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;$ cp -r /mnt/cdrom /u01/staging&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Login as an oracle user, start the installation, go to the /staging directory and run the following command&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-efrzwa_0Q78/Tr4pEJXxLHI/AAAAAAAAB4E/JfcnWuItqq4/s1600/31.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="162" src="http://2.bp.blogspot.com/-efrzwa_0Q78/Tr4pEJXxLHI/AAAAAAAAB4E/JfcnWuItqq4/s400/31.gif" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;Here we are going to install oracle software only so uncheck the “Create Starter Database” option and click Next.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&amp;nbsp;&lt;a href="http://1.bp.blogspot.com/-jiy63O9l3A0/Tr4pZ-mWZWI/AAAAAAAAB4M/bghfFHYHRAY/s1600/32.gif" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="165" src="http://1.bp.blogspot.com/-jiy63O9l3A0/Tr4pZ-mWZWI/AAAAAAAAB4M/bghfFHYHRAY/s400/32.gif" width="400" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;On next screen accept the suggested location for oracle inventory.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-zxkiWFowEW0/Tr4pyKU7YaI/AAAAAAAAB4U/TnzXig3sw2I/s1600/33.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="131" src="http://4.bp.blogspot.com/-zxkiWFowEW0/Tr4pyKU7YaI/AAAAAAAAB4U/TnzXig3sw2I/s400/33.gif" width="400" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Click Install button on summary page to start the installation.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-6Sdk39nC1jU/Tr4qJyxHMDI/AAAAAAAAB4c/USSu09Y9YcQ/s1600/34.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="148" src="http://1.bp.blogspot.com/-6Sdk39nC1jU/Tr4qJyxHMDI/AAAAAAAAB4c/USSu09Y9YcQ/s400/34.gif" width="400" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;After installation login as root user and execute the following scripts to complete the installation.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-94v_o4j0kFM/Tr4qtLH42VI/AAAAAAAAB4k/FBW9o2yNrsc/s1600/35.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="233" src="http://2.bp.blogspot.com/-94v_o4j0kFM/Tr4qtLH42VI/AAAAAAAAB4k/FBW9o2yNrsc/s400/35.gif" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4858278767901421083-7926418664515620126?l=asghars.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asghars.blogspot.com/feeds/7926418664515620126/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://asghars.blogspot.com/2011/06/oracle-server-installation.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/7926418664515620126'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/7926418664515620126'/><link rel='alternate' type='text/html' href='http://asghars.blogspot.com/2011/06/oracle-server-installation.html' title='01 - Oracle Database Server Installation'/><author><name>Muhammad Asghar Khan</name><uri>https://profiles.google.com/102545751511475719828</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-uiG6pTx0jQw/AAAAAAAAAAI/AAAAAAAAByM/7lMWjWkKRwc/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-USvRNVLM3ek/Tr33IW_VpgI/AAAAAAAAB0M/HXZrHQVPSt4/s72-c/01.gif' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4858278767901421083.post-8301503925550980496</id><published>2011-01-02T11:56:00.053+05:00</published><updated>2011-12-26T11:22:21.653+05:00</updated><title type='text'>Posts List - Oracle Database Administration</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&lt;a href="http://asghars.blogspot.com/2011/06/oracle-server-installation.html"&gt;01 - Oracle Database Server Installation &lt;/a&gt;&amp;nbsp; &lt;/li&gt;&lt;ul&gt;&lt;li&gt;1.0&amp;nbsp; Choice of Operating System&lt;/li&gt;&lt;ul&gt;&lt;li&gt;1.0.1&amp;nbsp; Setting up the RHEL 5.0 on VMware Workstation&lt;/li&gt;&lt;li&gt;  1.0.2&amp;nbsp; Configure RHEL Kernel for Oracle&lt;/li&gt;&lt;li&gt;1.0.3&amp;nbsp; Configure RHEL Shell for Oracle &lt;/li&gt;&lt;li&gt;1.0.4  Check Network Configuration &lt;/li&gt;&lt;li&gt;1.0.5  Create Groups &amp;amp; User for Oracle&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&amp;nbsp;1.1  Directory Structure &amp;amp; File Naming Conventions&lt;/li&gt;&lt;ul&gt;&lt;li&gt;1.1.1  Mount Points&amp;nbsp;&lt;/li&gt;&lt;li&gt;1.1.2  Oracle Base Directory&lt;/li&gt;&lt;li&gt;1.1.3  Oracle Home Directory&amp;nbsp;&lt;/li&gt;&lt;li&gt;1.1.4 Oracle Inventory Directory&amp;nbsp;&lt;/li&gt;&lt;li&gt;1.1.5  Flash Recovery Area Directory&amp;nbsp;&lt;/li&gt;&lt;li&gt;1.1.6  Administrative Files&amp;nbsp;&lt;/li&gt;&lt;li&gt;1.1.7  Product Files&amp;nbsp;&lt;/li&gt;&lt;li&gt;1.1.8  Database Files&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;1.2  Configure Oracle User’s Environment&amp;nbsp;&lt;/li&gt;&lt;li&gt;1.3  Running Oracle Universal Installer&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&lt;a href="http://asghars.blogspot.com/2011/07/creating-oracle-database.html"&gt;02 - Creating an Oracle Database&lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;2.0&amp;nbsp; Planning the Database&lt;/li&gt;&lt;li&gt;2.1&amp;nbsp; Using the &lt;b&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;CREATE DATABASE&lt;/span&gt;&lt;/b&gt; Statement&amp;nbsp;&lt;/li&gt;&lt;li&gt;2.2&amp;nbsp; Using the DBCA&lt;/li&gt;&lt;li&gt;2.3&amp;nbsp; Viewing Information about the Database&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ul style="text-align: left;"&gt;&lt;ul&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href="http://asghars.blogspot.com/2011/05/01-oracle-server-architecture.html"&gt;03 - Oracle Database Server Architecture &lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;3.0  Database Server Architecture&lt;/li&gt;&lt;ul&gt;&lt;li&gt;3.1  Oracle Instance&lt;/li&gt;&lt;ul&gt;&lt;li&gt;3.1.1  System Global Area&lt;/li&gt;&lt;ul&gt;&lt;li&gt;3.1.1.1 Database Buffer Cache&amp;nbsp;&lt;/li&gt;&lt;li&gt;3.1.1.2  Redo Log Buffer Cache&lt;/li&gt;&lt;li&gt;3.1.1.3  Shared Pool&amp;nbsp;&lt;/li&gt;&lt;li&gt;3.1.1.4  Large Pool&amp;nbsp;&lt;/li&gt;&lt;li&gt;3.1.1.5  Java Pool&amp;nbsp;&lt;/li&gt;&lt;li&gt;3.1.1.6  Streams Pool&amp;nbsp;&lt;/li&gt;&lt;li&gt; 3.1.1.7  Fixed SGA&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;3.1.2  Oracle Processes&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;ul&gt;&lt;li&gt;3.1.2.1  User Processes&lt;/li&gt;&lt;li&gt;3.1.2.2  Oracle Server Processes&amp;nbsp;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;3.1.2.2.1  Server Processes&lt;/li&gt;&lt;li&gt;3.1.2.2.2  Background Processes &lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;3.2  Oracle Database&lt;/li&gt;&lt;ul&gt;&lt;li&gt;3.2.1  Physical Layer&amp;nbsp;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;3.2.1.1  Data Files  &amp;nbsp;&lt;/li&gt;&lt;li&gt;3.2.1.2  Control Files&amp;nbsp;&lt;/li&gt;&lt;li&gt;3.2.1.3  Online Redo Log Files&amp;nbsp;&lt;/li&gt;&lt;li&gt; 3.2.1.4  Archive Log Files&amp;nbsp;&lt;/li&gt;&lt;li&gt;3.2.1.5  Parameter Files&amp;nbsp;&lt;/li&gt;&lt;li&gt;3.2.1.6  Trace Files&lt;/li&gt;&lt;li&gt;3.2.1.7  Alert Files&amp;nbsp;&lt;/li&gt;&lt;li&gt;3.2.1.8  Password File&amp;nbsp;&lt;/li&gt;&lt;li&gt;3.2.1.9  Backup Files&amp;nbsp;&lt;/li&gt;&lt;li&gt;3.2.1.10  Flashback Log Files&amp;nbsp;&lt;/li&gt;&lt;li&gt;3.2.1.11  Change Tracking Files&amp;nbsp; &lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;3.2.2  Logical Layer&lt;/li&gt;&lt;ul&gt;&lt;li&gt;3.2.2.1  Tablespaces&lt;/li&gt;&lt;li&gt;3.2.2.2  Segments&amp;nbsp;&lt;/li&gt;&lt;li&gt;3.2.2.3  Extents&lt;/li&gt;&lt;li&gt;3.2.2.4  Oracle Blocks &amp;nbsp; &lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&lt;a href="http://asghars.blogspot.com/2011/02/managing-oracle-instance-oracle.html"&gt;04 - Managing the Oracle Instance &lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;span id="goog_76900613"&gt;&lt;/span&gt;&lt;span id="goog_76900614"&gt;&lt;/span&gt;4.0 Oracle Database Management Framework&lt;/li&gt;&lt;ul&gt;&lt;li&gt;4.0.1&amp;nbsp; Management Interface&lt;/li&gt;&lt;li&gt;4.0.2&amp;nbsp; Database Listener&lt;/li&gt;&lt;li&gt;4.0.3&amp;nbsp; Database Instance&lt;/li&gt;&lt;ul&gt;&lt;li&gt;4.0.3.1&amp;nbsp; Database Startup&lt;/li&gt;&lt;ul&gt;&lt;li&gt;4.0.3.1.1&amp;nbsp; SHUTDOWN State&lt;/li&gt;&lt;li&gt;4.0.3.1.2&amp;nbsp; NOMOUNT State&lt;/li&gt;&lt;li&gt;4.0.3.1.3&amp;nbsp; MOUNT State&lt;/li&gt;&lt;li&gt;4.0.3.1.4&amp;nbsp; OPEN State&lt;/li&gt;&lt;li&gt;4.0.3.1.5&amp;nbsp; RESTRICT State&lt;/li&gt;&lt;li&gt;4.0.3.1.6&amp;nbsp; Altering Database Availability &lt;/li&gt;&lt;/ul&gt;&lt;li&gt;4.0.3.2&amp;nbsp; Database Shutdown&lt;/li&gt;&lt;ul&gt;&lt;li&gt;4.0.3.2.1&amp;nbsp; NORMAL Mode&lt;/li&gt;&lt;li&gt;4.0.3.2.2&amp;nbsp; IMMEDIATE Mode&lt;/li&gt;&lt;li&gt;4.0.3.2.3&amp;nbsp; TRANSACTIONAL Mode&lt;/li&gt;&lt;li&gt;4.0.3.2.4&amp;nbsp; ABORT Mode&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;4.0.3.3  Quiescing a Database&amp;nbsp;&lt;/li&gt;&lt;li&gt;4.0.3.4&amp;nbsp; Suspending and Resuming a Database &lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href="http://asghars.blogspot.com/2011/12/05-managing-oracle-instance-memory.html"&gt;05 - Managing the Oracle Instance Memory&lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;5.0&amp;nbsp; Memory Management&lt;/li&gt;&lt;ul&gt;&lt;li&gt;5.0.1&amp;nbsp; Automatic SGA Memory Management&lt;/li&gt;&lt;li&gt;5.0.2&amp;nbsp; Manual SGA Memory Management&lt;/li&gt;&lt;li&gt;5.0.3&amp;nbsp; Automatic PGA Memory Management&lt;/li&gt;&lt;li&gt;5.0.4&amp;nbsp; Manual PGA Memory Management&amp;nbsp;&lt;/li&gt;&lt;li&gt;5.0.5&amp;nbsp; Database Smart Flash Cache&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4858278767901421083-8301503925550980496?l=asghars.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asghars.blogspot.com/feeds/8301503925550980496/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://asghars.blogspot.com/2011/05/post-list.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/8301503925550980496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/8301503925550980496'/><link rel='alternate' type='text/html' href='http://asghars.blogspot.com/2011/05/post-list.html' title='Posts List - Oracle Database Administration'/><author><name>Muhammad Asghar Khan</name><uri>https://profiles.google.com/102545751511475719828</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-uiG6pTx0jQw/AAAAAAAAAAI/AAAAAAAAByM/7lMWjWkKRwc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4858278767901421083.post-1025886528626934263</id><published>2011-01-02T11:53:00.000+05:00</published><updated>2011-12-15T10:46:26.128+05:00</updated><title type='text'>Posts List - Recovery Manager</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&lt;a href="http://asghars.blogspot.com/2011/11/01-backup-and-recovery-overview.html"&gt;01- Backup and Recovery Overview&lt;/a&gt;&amp;nbsp; &lt;/li&gt;&lt;ul&gt;&lt;li&gt;1.0  Types of Backups&lt;/li&gt;&lt;ul&gt;&lt;li&gt;1.0.1  Physical &amp;amp; Logical Backups&amp;nbsp; &lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;1.1  Database Recovery Process&lt;/li&gt;&lt;ul&gt;&lt;li&gt;1.1.1&amp;nbsp; Data Recovery Types&lt;/li&gt;&lt;ul&gt;&lt;li&gt;1.1.1.1&amp;nbsp; Datafile Media Recovery&lt;/li&gt;&lt;li&gt;1.1.1.2&amp;nbsp; Complete, Incomplete and Point-In-Time Recovery&lt;/li&gt;&lt;li&gt;1.1.1.3&amp;nbsp; Crash Recovery&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;1.1.2&amp;nbsp; When Recovery is Required from Backup?&lt;/li&gt;&lt;ul&gt;&lt;li&gt;1.1.2.1&amp;nbsp; User Errors&lt;/li&gt;&lt;li&gt;1.1.2.2&amp;nbsp; Media Failure&lt;/li&gt;&lt;li&gt;1.1.2.3&amp;nbsp; Application Errors&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;li&gt;1.2&amp;nbsp; Instance Memory Used in Backups&lt;/li&gt;&lt;li&gt;1.3&amp;nbsp; Database Structures Used in Database Recovery&lt;/li&gt;&lt;li&gt;1.4&amp;nbsp; Oracle Recovery Manager&amp;nbsp;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;1.4.1&amp;nbsp; Files That RMAN Can Back Up&amp;nbsp;&lt;/li&gt;&lt;li&gt;1.4.2&amp;nbsp; RMAN Backup Destinations&amp;nbsp;&lt;/li&gt;&lt;li&gt;1.4.3&amp;nbsp; Full and Incremental Backups&lt;/li&gt;&lt;li&gt;1.4.4&amp;nbsp; Image Copies, Backup Sets and Backup Pieces&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href="http://asghars.blogspot.com/2011/12/02-rman-architecture.html"&gt;02 - RMAN Architecture&lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;2.0&amp;nbsp; RMAN Utility&lt;/li&gt;&lt;li&gt;2.1&amp;nbsp; Database Control File&lt;/li&gt;&lt;li&gt;2.2&amp;nbsp; RMAN Server Processes&lt;/li&gt;&lt;li&gt;2.3&amp;nbsp; Recovery Catalog&lt;/li&gt;&lt;li&gt;2.4&amp;nbsp; Auxiliary Database&lt;/li&gt;&lt;li&gt;2.5&amp;nbsp; Flash Recovery Area&lt;/li&gt;&lt;li&gt;2.6&amp;nbsp; RMAN Memory Structure&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4858278767901421083-1025886528626934263?l=asghars.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asghars.blogspot.com/feeds/1025886528626934263/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://asghars.blogspot.com/2011/11/blog-post.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/1025886528626934263'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/1025886528626934263'/><link rel='alternate' type='text/html' href='http://asghars.blogspot.com/2011/11/blog-post.html' title='Posts List - Recovery Manager'/><author><name>Muhammad Asghar Khan</name><uri>https://profiles.google.com/102545751511475719828</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-uiG6pTx0jQw/AAAAAAAAAAI/AAAAAAAAByM/7lMWjWkKRwc/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4858278767901421083.post-187139429932150041</id><published>2011-01-01T12:05:00.003+05:00</published><updated>2011-11-23T13:44:54.818+05:00</updated><title type='text'>Gallery</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;table style="width: 194px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td align="center" style="background: url(https://picasaweb.google.com/s/c/transparent_album_background.gif) no-repeat left; height: 194px;"&gt;&lt;a href="https://picasaweb.google.com/102545751511475719828/StudentLife?authuser=0&amp;amp;feat=embedwebsite"&gt;&lt;img src="https://lh4.googleusercontent.com/-zlY-zYoxMAQ/TkNZDyAO2oE/AAAAAAAACFk/WIN8kVWwmOg/s160-c/StudentLife.jpg" style="margin: 1px 0pt 0pt 4px;" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td align="center" style="background: url(https://picasaweb.google.com/s/c/transparent_album_background.gif) no-repeat left; height: 194px;"&gt;&lt;a href="https://picasaweb.google.com/102545751511475719828/LUMS?authuser=0&amp;amp;feat=embedwebsite"&gt;&lt;img src="https://lh3.googleusercontent.com/-2HQK7qRr4hw/TkNUS_-xBvE/AAAAAAAABr4/tv2U-SmaCGQ/s160-c/LUMS.jpg" style="margin: 1px 0pt 0pt 4px;" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td align="center" style="background: url(https://picasaweb.google.com/s/c/transparent_album_background.gif) no-repeat left; height: 194px;"&gt;&lt;a href="https://picasaweb.google.com/102545751511475719828/GuliatTour2008?authuser=0&amp;amp;feat=embedwebsite"&gt;&lt;img src="https://lh4.googleusercontent.com/-574Ht3nlkLE/TsyxIJiY6kE/AAAAAAAACRM/ZW2KoytudjI/s160-c/GuliatTour2008.jpg" style="margin: 1px 0pt 0pt 4px;" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="center" style="background: url(https://picasaweb.google.com/s/c/transparent_album_background.gif) no-repeat left; height: 194px;"&gt;&lt;a href="https://picasaweb.google.com/102545751511475719828/Batkhela2009?authuser=0&amp;amp;feat=embedwebsite"&gt;&lt;img src="https://lh6.googleusercontent.com/-Kz_C5K9xyuc/TsywSMN-u9E/AAAAAAAACRU/ssA9Oflpc8E/s160-c/Batkhela2009.jpg" style="margin: 1px 0pt 0pt 4px;" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4858278767901421083-187139429932150041?l=asghars.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asghars.blogspot.com/feeds/187139429932150041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://asghars.blogspot.com/2011/06/gallary.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/187139429932150041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4858278767901421083/posts/default/187139429932150041'/><link rel='alternate' type='text/html' href='http://asghars.blogspot.com/2011/06/gallary.html' title='Gallery'/><author><name>Muhammad Asghar Khan</name><uri>https://profiles.google.com/102545751511475719828</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-uiG6pTx0jQw/AAAAAAAAAAI/AAAAAAAAByM/7lMWjWkKRwc/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='https://lh4.googleusercontent.com/-zlY-zYoxMAQ/TkNZDyAO2oE/AAAAAAAACFk/WIN8kVWwmOg/s72-c/StudentLife.jpg' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
