Oracle instance consists of SGA and oracle processes. Oracle processes can be divided into server processes and background processes. Oracle database uses background processes to perform overall database operations, for example, database writer process writes dirty buffer from database buffer cache to datafiles. Continue reading “Oracle PGA”
Often database developers require temporary storage location which is private to session. To accomplish this requirement, Oracle database allows us to create Temporary tables. Temporary tables are of two types Continue reading “Oracle Temporary Table”
This article explains configuration of oracle Database 10g as shared server. Before reading this article you must have concept of Oracle shared server and dedicated server architecture. Visit following link to revive shared server and dedicated server architecture.
Configuration of shared server involves only few steps. Oracle database 10g has pre-configured setting to enable shared server. Shared server can be configured by setting values for few initialization parameters at run time. These parameters can also be initialized in initialization parameter file. Following section discusses these parameters in detail. Continue reading “Configuration of Oracle Shared Server”
In order to communicate with oracle database, oracle users need a program such as SQL *Plus which can issue SQL statements and few processes which can execute these SQL statements. These processes are divided into User Process, Server Process and Background Processes. User process runs user application like SQL *Plus. Server process manages oracle user process’s requests. Server process executes SQL statements and returns result to user process. Background processes are the core of oracle database which handle over all database operations. Continue reading “Oracle Shared Server and Oracle Dedicated Server Architecture”
Oracle server requires some metadata information to process SQL statements. This information is necessary to maintain data integrity, data consistency and data security. When a user submits a query, oracle needs detailed information about objects involved in the query, for example, whether the accessed objects exist and the user has required privileges. Continue reading “Oracle Dictionary Cache | Oracle Data Dictionary”
Library cache is very important part of Oracle Shared pool. Shared Pool controls execution of SQL statements. Shared pool is divided into Data dictionary Cache and Library Cache. Main component of Library cache include Shared SQL Area and Private SQL Area (in case of shared server configuration).In Dedicated server configuration Private SQL area is created in PGA of server process. In oracle database each statement is associated with a shared area and a private area. Both are discussed in detail below.
Oracle database keeps record of changes made to data. Every time user performs a DML, DDL or DCL operation, its redo entries are also created. These redo entries contain commands to rebuild or redo the changes. These entries are stored in Redo Log buffer. Log writer process (LGWR) writes these redo entries to redo log files. Redo log buffer works in circular fashion. It means that it overwrites old entries. Continue reading “Redo Log Buffer & Log writer process (LGWR)”
Data required by oracle user process is loaded into buffer cache, if it is not already present in cache. Proper memory tuning is required to avoid repeated disk access for the same data. This means that there should be enough space in buffer cache to hold required data for long time. If same data is required in very short intervals then such data should be permanently pinned into memory. Oracle allows us to use multiple buffers. Using multiple buffers we can control that how long objects should be kept in memory.
Database Buffer cache is one of the most important components of System Global Area (SGA). Database Buffer Cache is the place where data blocks are copied from datafiles to perform SQL operations. Buffer Cache is shared memory structure and it is concurrently accessed by all server processes.
Working of Database buffer Cache
Buffer Cache is organized into two lists
Write list contains dirty buffers. These are the data blocks which contain modified data and needed to be written to datafiles.
Oracle Database Architecture consists of following three main structures
1- Storage Structure
2- Memory Structure
3- Process Structure
Two of these constitute in primary storage and one in secondary storage.
When a database is created, database files are installed on secondary storage. These files include Control files, Data files, online redo log files, parameter file and password file. All these files formulate “Storage Structure”. Continue reading “Oracle Database Architecture | Oracle Instance”