Oracle Database 12c Administrator (OCA)
1 Introduction to Oracle Database 12c
1-1 Overview of Oracle Database 12c
1-2 Oracle Database Architecture
1-3 Oracle Database Components
1-4 Oracle Database Installation
2 Oracle Database Administration
2-1 Database Creation and Configuration
2-2 Managing Tablespaces and Datafiles
2-3 Managing Users and Security
2-4 Managing Privileges and Roles
2-5 Managing Profiles
2-6 Managing Auditing
3 Oracle Database Storage Structures
3-1 Understanding Oracle Database Storage Structures
3-2 Managing Oracle Database Storage
3-3 Managing Oracle Database Segments
3-4 Managing Oracle Database Extents
3-5 Managing Oracle Database Blocks
4 Oracle Database Backup and Recovery
4-1 Introduction to Oracle Database Backup and Recovery
4-2 Oracle Database Backup Strategies
4-3 Oracle Database Recovery Strategies
4-4 Oracle Database Backup and Recovery Tools
4-5 Oracle Database Backup and Recovery Procedures
5 Oracle Database Performance Tuning
5-1 Introduction to Oracle Database Performance Tuning
5-2 Oracle Database Performance Tuning Tools
5-3 Oracle Database Performance Tuning Techniques
5-4 Oracle Database Performance Tuning Best Practices
6 Oracle Database High Availability
6-1 Introduction to Oracle Database High Availability
6-2 Oracle Database High Availability Features
6-3 Oracle Database High Availability Tools
6-4 Oracle Database High Availability Best Practices
7 Oracle Database Security
7-1 Introduction to Oracle Database Security
7-2 Oracle Database Security Features
7-3 Oracle Database Security Tools
7-4 Oracle Database Security Best Practices
8 Oracle Database Monitoring and Maintenance
8-1 Introduction to Oracle Database Monitoring and Maintenance
8-2 Oracle Database Monitoring Tools
8-3 Oracle Database Maintenance Tasks
8-4 Oracle Database Monitoring and Maintenance Best Practices
9 Oracle Database Cloud Services
9-1 Introduction to Oracle Database Cloud Services
9-2 Oracle Database Cloud Services Features
9-3 Oracle Database Cloud Services Tools
9-4 Oracle Database Cloud Services Best Practices
10 Oracle Database SQL and PLSQL
10-1 Introduction to Oracle Database SQL and PLSQL
10-2 Oracle Database SQL and PLSQL Syntax
10-3 Oracle Database SQL and PLSQL Functions
10-4 Oracle Database SQL and PLSQL Best Practices
11 Oracle Database Data Management
11-1 Introduction to Oracle Database Data Management
11-2 Oracle Database Data Management Tools
11-3 Oracle Database Data Management Techniques
11-4 Oracle Database Data Management Best Practices
12 Oracle Database Application Development
12-1 Introduction to Oracle Database Application Development
12-2 Oracle Database Application Development Tools
12-3 Oracle Database Application Development Techniques
12-4 Oracle Database Application Development Best Practices
Oracle Database Architecture

Oracle Database Architecture

Oracle Database 12c is a powerful relational database management system (RDBMS) that is designed to store, manage, and retrieve large volumes of data efficiently. Understanding its architecture is crucial for effective administration and optimization.

1. Instance and Database

In Oracle, an instance refers to the memory structures and background processes that manage the database. A database, on the other hand, consists of the physical files where the actual data is stored. An instance can be thought of as the "operating system" for the database, while the database is the "storage" where the data resides.

Example: When you start an Oracle instance, it loads the necessary memory structures and starts background processes. The database files, such as data files, control files, and redo log files, are then accessed by this instance to perform operations like reading, writing, and managing data.

2. Memory Structures

Oracle uses several memory structures to optimize performance. The most important of these are the System Global Area (SGA) and the Program Global Area (PGA). The SGA is a shared memory region that contains data and control information for one Oracle instance. The PGA is a memory region that contains data and control information for a server process.

Example: When a user queries a table, the data retrieved from the disk is first loaded into the SGA. This allows other processes to access the same data without needing to read it from the disk again, thereby improving performance. The PGA, on the other hand, is used for sorting and hashing operations specific to a single user process.

3. Background Processes

Oracle relies on several background processes to manage various tasks such as writing data to disk, managing memory, and ensuring data integrity. Some key background processes include the Database Writer (DBWn), Log Writer (LGWR), and System Monitor (SMON).

Example: The DBWn process is responsible for writing dirty buffers (modified data blocks) from the SGA to the data files. The LGWR process writes redo entries from the redo log buffer to the online redo log files. The SMON process performs recovery operations if the instance fails.

4. Data Files, Control Files, and Redo Log Files

Data files store the actual data in the database. Control files contain metadata about the database, such as its name, creation date, and the location of data files and redo log files. Redo log files record all changes made to the database, which are used for recovery in case of a failure.

Example: If a table is updated, the new data is first written to the redo log files. This ensures that if the system crashes, the changes can be reapplied from the redo log files during recovery. The control files are crucial for the database to start correctly, as they provide essential information about the database's structure.

5. Logical Storage Structures

Oracle uses logical storage structures to organize data within the database. These include tablespaces, segments, extents, and data blocks. A tablespace is a logical container for segments, which in turn are made up of extents. Extents consist of a set of contiguous data blocks.

Example: A tablespace might contain segments for different tables. Each table's data is stored in its own segment, which is divided into extents. These extents are further divided into data blocks, which are the smallest units of storage in Oracle.

Understanding these key concepts of Oracle Database Architecture is essential for anyone looking to become an Oracle Certified Associate (OCA). By grasping the interaction between instances, memory structures, background processes, and storage structures, you can effectively manage and optimize Oracle databases.