Monday, 8 February 2016

Windows system key combinations

Windows system key combinations
  • F1: Help
  • CTRL+ESC: Open Start menu
  • ALT+TAB: Switch between open programs
  • ALT+F4: Quit program
  • SHIFT+DELETE: Delete item permanently
  • Windows Logo+L: Lock the computer (without using CTRL+ALT+DELETE)

Windows program key combinations

  • CTRL+C: Copy
  • CTRL+X: Cut
  • CTRL+V: Paste
  • CTRL+Z: Undo
  • CTRL+B: Bold
  • CTRL+U: Underline
  • CTRL+I: Italic

Mouse click/keyboard modifier combinations for shell objects

  • SHIFT+right click: Displays a shortcut menu containing alternative commands
  • SHIFT+double click: Runs the alternate default command (the second item on the menu)
  • ALT+double click: Displays properties
  • SHIFT+DELETE: Deletes an item immediately without placing it in the Recycle Bin

General keyboard-only commands

  • F1: Starts Windows Help
  • F10: Activates menu bar options
  • SHIFT+F10 Opens a shortcut menu for the selected item (this is the same as right-clicking an object
  • CTRL+ESC: Opens the Start menu (use the ARROW keys to select an item)
  • CTRL+ESC or ESC: Selects the Start button (press TAB to select the taskbar, or press SHIFT+F10 for a context menu)
  • CTRL+SHIFT+ESC: Opens Windows Task Manager
  • ALT+DOWN ARROW: Opens a drop-down list box
  • ALT+TAB: Switch to another running program (hold down the ALT key and then press the TAB key to view the task-switching window)
  • SHIFT: Press and hold down the SHIFT key while you insert a CD-ROM to bypass the automatic-run feature
  • ALT+SPACE: Displays the main window's System menu (from the System menu, you can restore, move, resize, minimize, maximize, or close the window)
  • ALT+- (ALT+hyphen): Displays the Multiple Document Interface (MDI) child window's System menu (from the MDI child window's System menu, you can restore, move, resize, minimize, maximize, or close the child window)
  • CTRL+TAB: Switch to the next child window of a Multiple Document Interface (MDI) program
  • ALT+underlined letter in menu: Opens the menu
  • ALT+F4: Closes the current window
  • CTRL+F4: Closes the current Multiple Document Interface (MDI) window
  • ALT+F6: Switch between multiple windows in the same program (for example, when the Notepad Find dialog box is displayed, ALT+F6 switches between the Find dialog box and the main Notepad window)

Shell objects and general folder/Windows Explorer shortcuts

For a selected object:
  • F2: Rename object
  • F3: Find all files
  • CTRL+X: Cut
  • CTRL+C: Copy
  • CTRL+V: Paste
  • SHIFT+DELETE: Delete selection immediately, without moving the item to the Recycle Bin
  • ALT+ENTER: Open the properties for the selected object

To copy a file

Press and hold down the CTRL key while you drag the file to another folder.

To create a shortcut

Press and hold down CTRL+SHIFT while you drag a file to the desktop or a folder.

General folder/shortcut control

  • F4: Selects the Go To A Different Folder box and moves down the entries in the box (if the toolbar is active in Windows Explorer)
  • F5: Refreshes the current window.
  • F6: Moves among panes in Windows Explorer
  • CTRL+G: Opens the Go To Folder tool (in Windows 95 Windows Explorer only)
  • CTRL+Z: Undo the last command
  • CTRL+A: Select all the items in the current window
  • BACKSPACE: Switch to the parent folder
  • SHIFT+click+Close button: For folders, close the current folder plus all parent folders

Windows Explorer tree control

  • Numeric Keypad *: Expands everything under the current selection
  • Numeric Keypad +: Expands the current selection
  • Numeric Keypad -: Collapses the current selection.
  • RIGHT ARROW: Expands the current selection if it is not expanded, otherwise goes to the first child
  • LEFT ARROW: Collapses the current selection if it is expanded, otherwise goes to the parent

Properties control

  • CTRL+TAB/CTRL+SHIFT+TAB: Move through the property tabs

Accessibility shortcuts

  • Press SHIFT five times: Toggles StickyKeys on and off
  • Press down and hold the right SHIFT key for eight seconds: Toggles FilterKeys on and off
  • Press down and hold the NUM LOCK key for five seconds: Toggles ToggleKeys on and off
  • Left ALT+left SHIFT+NUM LOCK: Toggles MouseKeys on and off
  • Left ALT+left SHIFT+PRINT SCREEN: Toggles high contrast on and off

Microsoft Natural Keyboard keys

  • Windows Logo: Start menu
  • Windows Logo+R: Run dialog box
  • Windows Logo+M: Minimize all
  • SHIFT+Windows Logo+M: Undo minimize all
  • Windows Logo+F1: Help
  • Windows Logo+E: Windows Explorer
  • Windows Logo+F: Find files or folders
  • Windows Logo+D: Minimizes all open windows and displays the desktop
  • CTRL+Windows Logo+F: Find computer
  • CTRL+Windows Logo+TAB: Moves focus from Start, to the Quick Launch toolbar, to the system tray (use RIGHT ARROW or LEFT ARROW to move focus to items on the Quick Launch toolbar and the system tray)
  • Windows Logo+TAB: Cycle through taskbar buttons
  • Windows Logo+Break: System Properties dialog box
  • Application key: Displays a shortcut menu for the selected item

Microsoft Natural Keyboard with IntelliType software installed

  • Windows Logo+L: Log off Windows
  • Windows Logo+P: Starts Print Manager
  • Windows Logo+C: Opens Control Panel
  • Windows Logo+V: Starts Clipboard
  • Windows Logo+K: Opens Keyboard Properties dialog box
  • Windows Logo+I: Opens Mouse Properties dialog box
  • Windows Logo+A: Starts Accessibility Options (if installed)
  • Windows Logo+SPACEBAR: Displays the list of Microsoft IntelliType shortcut keys
  • Windows Logo+S: Toggles CAPS LOCK on and off

Dialog box keyboard commands

  • TAB: Move to the next control in the dialog box
  • SHIFT+TAB: Move to the previous control in the dialog box
  • SPACEBAR: If the current control is a button, this clicks the button. If the current control is a check box, this toggles the check box. If the current control is an option, this selects the option.
  • ENTER: Equivalent to clicking the selected button (the button with the outline)
  • ESC: Equivalent to clicking the Cancel button
  • ALT+underlined letter in dialog box item: Move to the corresponding item

Wednesday, 16 September 2015

Autoconfig in 11i

1. Introduction and Scope

Autoconfig is a tool that supports automated configuration of an Oracle Application Instance.

It manages Oracle Application Release 11i Configuration Files , such as httpd.conf , jserv.properties and appsweb.cfg.

All information required for configuring an Application Instance is collected in a repository , called the Application Context. Autoconfig uses information from the application context file to generate all configuration files and update database profiles.

The application tier context file is an XML file in $APPL_TOP/admin

In Application 11.5.9 Release the Application Context File is named as .xml

The Context Name is a combination of SID and Hostname.
The Application Context file has the standard format _.xml

Limitations:Autoconfig does not undertake all aspects of configuration management, such as Operating System Level that have implication outside the context of Oracle E-Business Suite.

The Application Context Files

This is one of the most critical files in an Autoconfig enabled environment.

The context file contains enough information to configure all the other files necessary to setup and make available a particular environment.

The configuration information are supplied on a standard location, so that Autoconfig simplifies procedure for activities from upgrading a technology stack component through to starting and stopping application services.

Benefits of the Context Files

There is only one location to remember , instead of numerous files and directories distributed across the environment.
Avoid need for repeaded configuration information.
The APPL_TOP enviroment is readily described in one file.
Easier to integrate into the process of cloning new enviroments , as opposed to editing numerous files.
The XML format is easier to read and use than a variety of format , since the configuration information is represented in a platform independent format.
Able to handle Windows Registry Information.

Additional Features on an Autoconfig Enabled Instance

· Support shared APPL_TOP
(Single APPL_TOP distrubuted to multiple machines )

· Support Cloning of APPL_TOPs

· Allows Oracle Application Manager (OAM) and Autoconfig to work together to synchronize multiple nodes.

· Use of a single file allows services to be added or removed without having to modify the core startup/shutdown mechanism.

· Fewer files for Oracle Development to maintain and support , improving robustness and reliability across the E-Business Suite.

How Autocofig Works

Autoconfig uses template files to determine the basic settings that are needed.
There is one template file for each configuration file.

Different version of the template files exists for UNIX and Windows.
For Example :

httpd_ux.conf / httpd_nt.conf
adfrmctl_ux.sh / adfrmctl_nt.sh

The template files are located in the relevant $PROD_TOP/admin/template
Directories. For example :

$AD_TOP/admin/template
$FND_TOP/admin/template

What happens when Autoconfig Runs ?

When Autoconfig runs, it cycles through the various /admin/driver directories looking for Autoconfig template driver files.

Updating Template and Driver Files

A significant advantage of the use of Autoconfig is that template and driver files can be updated via Application Patches.

When patches are applied they have the appropriate template and driver files updated and finally when Autoconfig is run it updates the configuration and settings in a single go.

Template Files are used to specify the basic settings.
Driver Files have the list of names and location of the files for specific products.

adautocfg.sh

The script adautocfg.sh will update configuration files and profile options.

It also does the following ;

* The Instance Specific values that are found on the XML Context files are updated / configured by running the adautocfg.sh
* Copies any Customization that has been performed on the instance.
* Overwrites existing configuration files with new ones.
* Runs SQL Scripts to update database like updating the instance specific profile options.


Autoconfig uses the tmpl.drv files as drivers for the process as these files has the information about which source and destination files has to be merged and the commands/instructions that has are used

When adautocfg.sh scripts completes , it internally calls another script adconfig.sh. To this script adautocfg.sh passes parameters for processing.
adconfig.sh again calls the Java API to start the AutoConfig Engine located in $AD_TOP/java/adconfig.zip.

When AutoConfig is run it scans through each PRODUCT TOP/admin/drivers directory and searches for the appropriate template driver files. The files have the list of files that need to have token replaced along with the special actions that AutoConfig needs to perform.

Once Autoconfig is run it needs no additional input to perform the task.

Before running Autoconfig

- Middle Tier must be down
- Database Tier must be available
-
As Autoconfig runs it evaluates the tokens found in the template file and determines the substitute values required and creates a target file with the appropriate values substituted for the tokens.

The files created are know as target files and they are used during the configuration processes.

Other AutoConfig Scripts �.

adbldxml.sh and adchkcfg.sh

The adbldxml.sh script is used to create the Context File.

The adchkcfg.sh script generates a report that highlights the differences between the original configuration files and those that AutoConfig will generate.


2. Standard configuration steps description

2.1 Prerequisites

The following software component version must exist on the application tier and /or on the database tier.

· JDK 1.3.1
· Zip 2.3
· Unzip 5.x
· Perl 5.xxxx

2.2 Standard Configuration

The following are the activitites performed when a request for Autoconfig run is requested.

· Identify Customizations
· Implement Config Changes and Customizations
. Run Autoconfig in the correct sequence

Identifying Customizations

Identifying Customization is a read-only process and there is no
downtime associated with this operations. It could be safely executed when the instance is up and running. It is also termed as Check Mode of running Autoconfig.

Procedure to Execute Autoconfig in Check Mode

Login using Unix account to Apps user and make sure that the environment is populated.

Run the following command to run Autoconfig in Check Mode
$AD_TOP/bin/adchkcfg.sh contextfile=$APPL_TOP/admin/.xml appspass=
This will generate the report containing the differences. The location of the report will be output to your screen that is generally

$APPL_TOP/admin/_ /out//cfgcheck.txt.
cfgcheck.txt have the summary for customization changes. This file contains the list of files that will under go a change during the next autoconfig run. In the report there will be three sections for each report.
· Existing File
· New File
· Diff File
Existing File is the original location of the Autoconfig Managed File.
New File is the file that gets generated when the autconfig is run. This file is stored in the autoconfig out directory for checking the difference.
Diff File is the file which has x_ as its prefix. This file is the differences output of the New File and the Existing File.
Syntax : DIFF ExistingFile NewFile > DiffFile
An Example differences is
x_appsweb_STESTI_
astest02.cfg
Checking differences between
Existing file(<) : /stesti/applmgr/common/html/bin/appsweb_STESTI_
astest02.cfg New file(>) :/stesti/applmgr/1159/admin/STESTI_astest02/out/
04051937/appsweb_STESTI_
astest02.cfg
Note: You will lose the custom changes in the existing file as listed below. Please resolve the differences before you run AutoConfig in normal mode. Use begin custom/end custom blocks to retain your customizations.
====================================================
Differences
=====================================================

32c32
serverURL=/forms/formservlet
----- < serverurl =" /forms/formservlet?ifip=">Implementing Configuration Changes and Customizations

Repeate these step for every configuration file changes

· Identify the template file

View the header in the respective configuration file (appsweb_STESTI_
astest02.cfg in above example).
Second line of header would show the name of template file:

* Forms Web CGI Configuration File for Oracle Applications 11i
* $Header: appsweb.cfg 115.127 2003/11/06 05:15:23 skghosh ship $
* Apps templates could be found in $FND_TOP/admin/template or $AD_TOP/admin/template


Review the type of customization

Check the entry for respective change in template file:
Changes which can be implemented in XML file

* In above case, template file appsweb.cfg has following entry for serverURL:
* serverURL=%s_forms_servlet_serverurl%
* If the value is enclosed in % signs, the string within the % is the name of context parameter. When autoconfig runs, it would take the value of this parameter in XML file and update it on this line.
* To implement this change properly, you would need to find this parameter in XML file and update it to proper value.
* Changes which require template customizations
* If the config change were to a value which is hard coded in Template file, you would need to customize the template file. For example:
* <> CustomLog /stesti/applmgr/product/iAS/Apache/Apache/logs/access_log common
* Corresponding template shows:
* CustomLog %s_tp%/Apache/Apache/logs/access_log common
* To generate correct entry as above, template needs to be modified as follows:
* CustomLog "%s_tp%/Apache/Apache/bin/rotatelogs %s_tp%/Apache/Apache/logs/access_log common


Customizing Templates

* Once you have identified which template needs to be customized and what changes are required, perform following steps:
* cd $FND_TOP/admin/template (or AD_TOP if template is there)
* mkdir custom (if it doesn�t exists)
* cp httpd_ias_1022.conf custom (copy current template to custom directory)
* Edit httd_ias_1022.conf and make changes as decided above.
* When making changes to conf files or templates, care must be taken to use macros that are instantiated by autoconfig and not hardcode any values in the conf files that could potentially cause failures in other scenarios like refresh, clone etc. (e.g.: hard coding ORACLE_SID instead of using macro %s_dbSid% which causes autoconfig to replace it with the proper ORACLE_SID.


Sample MACROS
o List of sample macros can be reviewed from the following template file:
o $AD_TOP/admin/template/adctxinf.tmp
Differences which can be ignored
o If the difference only includes context variables, these can be ignored.
o ====================================================
o Differences
o ====================================================
o 262c262
o < allowedaddresses="">astest02.testsourcing.com"> security.allowedAddresses=127.0.0.1,astest02.testsourcing.com,%s_allowed_addresses%

Running Autoconfig in correct sequence

For a multi-midtier environment, Profile options needs to be updated from Admin node only. To avoid updating profile options from other nodes, previously we used to run autoconfig with wrong password. However that does create other problems. Here is a better way to do it:

Run autoconfig on all MTs except Concurrent Node with following options:
adconfig.sh run=INSTE8_SETUP contextfile= appspass=
Run autconfig on Concurrent Node (incase of PCP it is Primary Concurrent Node)
adconfig.sh contextfile= appspass=

* If in the future, a new patch is installed, which happens to replace the original template, autoconfig will detect this (via version in the "Header" section of the file) and refuse to proceed with autoconfig until the custom version of conf file is updated. The following error is spit out by autoconfig such a situation is encountered.
* "Version Conflicts among development maintained and customized templates encountered; aborting AutoConfig run." This error occurs when a patch brings a new version of a template that is already customized. In those cases, you are required to customize the new version of the template by comparing the development maintained template with customized template.

Saturday, 16 May 2015

Introduction to Architecture of Oracle Database

Oracle Database Architecture:
An Oracle server:
Is a database management system that provides an open,     comprehensive, integrated approach to information management.
Consists of an Oracle instance and an Oracle Database.
Oracle instance:
·        An instance is a set of memory structures that manage database files.
·        The instance consists of a shared memory area, called the system global area (SGA), and a set of background processes.
·        An instance can exist independently of database files.
Oracle Database:
·        A database is a set of files, located on disk, that store data.
·        These files can exist independently of a database instance.
Oracle Database Architecture:
·        The Oracle server is the key to information management.
·        In general, an Oracle server must reliably manage a large amount of data in a multiuser environment so that many users can concurrently access the same data.
·        All this must be accomplished while delivering high performance.
·        An Oracle server must also prevent unauthorized access and provide efficient solutions for failure recovery.

Database Structures:

1.     Memory structures
2.     Process structures
3.     Storage structures
·        Each running Oracle database is associated with an Oracle instance.
·        When a database is started on a database server, the Oracle software allocates a shared memory area called the System Global Area (SGA) and starts several Oracle background processes. This combination of the SGA and the Oracle processes is called an Oracle instance.
·        After starting an instance, the Oracle software associates the instance with a specific database. This is called mounting the database.
·        The database is then ready to be opened, which makes it accessible to authorized users.
·        Multiple instances can execute concurrently on the same computer, each accessing its own physical database.
·        An Oracle database uses memory structures and processes to manage and access the database.
·        All memory structures exist in the main memory of the computers that constitute the database server.
·        Processes are jobs that work in the memory of these computers.
·        A process is defined as a “thread of control” or a mechanism in an operating system that can run a series of steps.

Oracle Memory Structures:
The basic memory structures associated with an Oracle instance include the following:
System Global Area (SGA): Shared by all server and background processes
Program Global Area (PGA): Private to each server and background process. There is one PGA for each process.

System Global Area (SGA):
The SGA is a memory area that contains data and control information for the instance.
The SGA includes the following data structures:
Database buffer cache: Caches blocks of data retrieved from the database.
Redo log buffer: Caches redo information (used for instance recovery) until it can be written to the physical redo log files stored on the disk.
Shared pool: Caches various constructs that can be shared among users.
Large pool: Is an optional area that provides large memory allocations for certain large processes, such as Oracle backup and recovery operations, and I/O server processes.
Java pool: Is used for all session-specific Java code and data within the Java Virtual Machine (JVM).
Streams pool: Is used by Oracle Streams.

·        When you start the instance by using Enterprise Manager or SQL*Plus, the amount of memory allocated for the SGA is displayed.
·        With the dynamic SGA infrastructure, the size of the database buffer cache, the shared pool, the large pool, the Java pool, and the Streams pool changes without shutting down the instance.
·        The Oracle database uses initialization parameters to create and configure memory structures.
·        For example: the SGA_TARGET parameter specifies the total amount of space available to the SGA. If you set SGA_TARGET to 0, Automatic Shared Memory Management is disabled.
Program Global Area (PGA):
·        A Program Global Area (PGA) is a memory region that contains data and control information for each server process.
·        An Oracle server process services a client’s requests.
·        Each server process has its own private PGA that is created when the server process is started.
·        Access to the PGA is exclusive to that server process, and the PGA is read and written only by the Oracle code acting on its behalf.
Process Structures:
·        User process: Is started at the time a database user requests a connection to the Oracle server
·        Server process: Connects to the Oracle instance and is started when a user establishes a session.
·        Background processes: Are started when an Oracle instance is started

·        When you invoke an application program or an Oracle tool, such as Enterprise Manager, the Oracle server creates a server process to execute the commands issued by the application.
·        The Oracle server also creates a set of background processes for an instance that interact with each other and with the operating system to manage the memory structures, asynchronously perform I/O to write data to disk, and perform other required tasks.
·        Which background processes are present depends on the features that are being used in the database.


Oracle Instance Management:
Description of Figure 15-1 follows
Oracle Instance Management:
·        An Oracle database server consists of an Oracle database and an Oracle instance.
·        An Oracle instance is made up of memory structures, known as the System Global Area (SGA), and background processes that handle much of the behind-the-scenes work involved in running an instance.
The most common background processes are the following:
System Monitor (SMON): Performs crash recovery when the instance is started following a failure.
Process Monitor (PMON): Performs process cleanup when a user process fails.
Database Writer (DBWn): Writes modified blocks from the database buffer cache to the data files on the disk.
Checkpoint (CKPT): Updates all the data files and control files of the database to indicate the most recent checkpoint
LogWriter (LGWR): Writes redo log entries to the disk
Archiver (ARCn): Copies redo log files to the archival storage when a log switch occurs.

Server Process and Database Buffer Cache:

·        When a query is processed, the Oracle server process looks in the database buffer cache for any blocks that it needs.
·        If the block is not found in the database buffer cache, the server process
reads the block from the data file and places a copy in the database buffer cache.
·        Because subsequent requests for the same block may find the block in memory, the requests may not require physical reads.
·        The Oracle server uses the least recently used algorithm to age out buffers
that have not been accessed recently to make room for new blocks in the database buffer cache.
Buffers in the buffer cache can be in one of the following four states:
·        Pinned: Multiple sessions are kept from writing to the same block at the same time. Other sessions wait to access the block.
·        Clean: The buffer is now unpinned and is a candidate for immediate aging out, if the current contents (data block) are not referenced again. Either the contents are in sync with the block contents stored on the disk or the buffer contains a consistent read (CR) snapshot of a block.
·        Free or unused: The buffer is empty because the instance has just started. This state is very similar to the clean state, except that the buffer has not been used.
·        Dirty: The buffer is no longer pinned but the contents (data block) have changed and must be flushed to the disk by DBWn before it can be aged out.

Physical Database Structure
The files that constitute an Oracle database are organized into the following:
·        Control files: Contain data about the database itself (that is, physical database structure information). These files are critical to the database. Without them, you cannot open data files to access the data within the database.
·        Data files: Contain the user or application data of the database.
·        Online redo log files: Allow for instance recovery of the database. If the database crashes and does not lose any data files, then the instance can recover the database with the information in these files.
The following additional files are important to the successful running of the database:
·        Parameter file: Is used to define how the instance is configured when it starts up.
·        Password file: Allows users to connect remotely to the database and perform administrative tasks.
·        Backup files: Are used for database recovery. You typically restore a backup file when a media failure or user error has damaged or deleted the original file.
·        Archive log files: Contain an ongoing history of the data changes (redo) that are generated by the instance. Using these files and a backup of the database, you can recover a lost data file. That is, archive logs enable the recovery of restored data files.
·        Trace files: Each server and background process can write to an associated trace file.When an internal error is detected by a process, the process dumps information about the error to its trace file. Some of the information written to a trace file is intended for the database administrator, whereas other information is for Oracle Support Services.
·        Alert log files: These are special trace files. They are also known as alert logs. The alert log of a database is a chronological log of messages and errors. Oracle recommends that you review these files.

Tablespaces and Data Files:
Tablespaces consist of one or more data files.
Data files belong to only one tablespace.

·        A database is divided into logical storage units called tablespaces, which can be used to group related logical structures together.
·        Each database is logically divided into one or more tablespaces.
·        One or more data files are explicitly created for each tablespace to physically store the data of all logical structures in a tablespace.

SYSTEM and SYSAUX Tablespaces
       The SYSTEM and SYSAUX tablespaces are mandatory tablespaces.
       They are created at the time of database creation.
       They must be online.
       The SYSTEM tablespace is used for core functionality (for example, data dictionary tables).
       The auxiliary SYSAUX tablespace is used for additional database components (such as the Enterprise Manager Repository).

·        Each Oracle database contains a SYSTEM tablespace and a SYSAUX tablespace. They are automatically created when the database is created.
·        The system default is to create a smallfile tablespace. You can also create bigfile tablespaces, which enable the Oracle database to manage
ultralarge files (up to 8 exabytes).
·        A tablespace can be online (accessible) or offline (not accessible).
·        The SYSTEM tablespace is always online when the database is open. It stores tables that support the core functionality of the database, such as the data dictionary tables.
·        The SYSAUX tablespace is an auxiliary tablespace to the SYSTEM tablespace.
·        The SYSAUX tablespace stores many database components, and it must be online for the correct functioning of all database components.

Segments, Extents, and Blocks:
·        Database objects, such as tables and indexes, are stored as segments in tablespaces.
·        Each segment contains one or more extents.
·        An extent consists of contiguous data blocks, which means that each extent can exist only in one data file.
·        Data blocks are the smallest unit of I/O in the database.
·        When the database requests a set of data blocks from the operating system (OS), the OS maps this to an actual file system or disk block on the storage device.
·        Because of this, you need not know the physical address of any of the data in your database. This also means that a data file can be striped or mirrored on several disks.
·        The size of the data block can be set at the time of the creation of the database. The default size of 8 KB is adequate for most databases.
·        If your database supports a data warehouse application that has large tables and indexes, then a larger block size may be beneficial.
·        If your database supports a transactional application where reads and writes are random, then specifying a smaller block size may be beneficial. The maximum block size depends on your OS.
·        The minimum Oracle block size is 2 KB and should rarely (if ever) be used.

Logical and Physical Database Structures:
An Oracle database is a collection of data that is treated as a unit.
The general purpose of a database is to store and retrieve related information. The database has logical structures and physical structures.

Tablespaces:
·        A database is divided into logical storage units called tablespaces, which group related logical structures together.
For example, tablespaces commonly group all of an application’s objects to
simplify some administrative operations. You may have a tablespace for application data and an additional one for application indexes.
Databases, Tablespaces, and Data Files:
·        Each database is logically divided into one or more tablespaces.
·        One or more data files are explicitly created for each tablespace to physically store the data of all logical structures in a tablespace.
·        If it is a TEMPORARY tablespace, instead of a data file, then the tablespace has a temporary file.
Schemas:
·        A schema is a collection of database objects that are owned by a database user.
·        Schema objects are the logical structures that directly refer to the database’s data.
·        Schema objects include such structures as tables, views, sequences, stored procedures, synonyms, indexes, clusters, and database links.
·        In general, schema objects include everything that your application creates in the database.
Data Blocks:
·        At the finest level of granularity, an Oracle database’s data is stored in data blocks.
·        One data block corresponds to a specific number of bytes of physical database space on the disk.
·        A data block size is specified for each tablespace when it is created.
·        A database uses and allocates free database space in Oracle data blocks.
Extents:
·        The next level of logical database space is called an extent.
·        An extent is a specific number of contiguous data blocks (obtained in a single allocation) that are used to store a specific type of information.
Segments:
·        The level of logical database storage above an extent is called a segment.
·        A segment is a set of extents allocated for a certain logical structure.
For example, the different types of segments include:
       Data segments: Each nonclustered, non-indexed-organized table has a data segment. All of the table’s data is stored in the extents of its data segment. For a partitioned table, each partition has a data segment. Each cluster has a data segment. The data of every table in the cluster is stored in the cluster’s data segment.
       Index segments: Each index has an index segment that stores all of its data. For a partitioned index, each partition has an index segment.
       Undo segments: One UNDO tablespace is created by the database administrator to temporarily store undo information. The information in an undo segment is used to generate read-consistent database information and, during database recovery, to roll back
uncommitted transactions for users.
       Temporary segments: Temporary segments are created by the Oracle database when a SQL statement needs a temporary work area to complete execution. When the statement finishes execution, the temporary segment’s extents are returned to the instance for future
use. Specify a default temporary tablespace for every user or a default temporary tablespace, which is used databasewide.
·        The Oracle database dynamically allocates space. When the existing extents of a segment are full, additional extents are added.

·        Because extents are allocated as needed, the extents of a segment may or may not be contiguous on the disk.