Understanding the Oracle Server

PART I. INTRODUCTION AND ARCHITECTURE. 1. The Big Picture. Chapter Overview. Oracle7 and Client/Server. Front Ends and Back Ends. The Multiple Servers of Oracle. Applications. Ease of Use. Reduction of Redundancy. Reinforcement of Business Rules. Custom Applications. Application-Development Tools and Related Products. Letting the Tool Handle the Mechanics. Helping Out with Creative Work. The 2000 Series. Networking Products. Preview of Concepts to Come. 2. Structured Query Language. Chapter Overview. The Relational Model: Columns, Rows, and Tables. What Is a Database? Device Independence. Data Definition and Data Manipulation. Common Commands. SELECT. INSERT. UPDATE. DELETE. COMMIT. ROLLBACK. From SQL to PL/SQL. 3. Logical Structures. Chapter Overview. Schemas and Schema Objects. Views. Sequences. Indexes. Clusters. Database Links. Synonyms. Procedures. Packages. Tablespaces. Segments. Data Segments. Rollback Segments. Index Segments. Temporary Segments. Extents. Data Blocks. Data Dictionary and Its Views. Instances. 4. Physical, Memory, and Process Structures. Chapter Overview. Architecture Summary. System Global Area (SGA). Purpose of the SGA. Database Buffer Cache. Redo Log Buffer. Shared Pool. Cursors. Processes. User Processes. Server Processes. Background Processes. Storing Information for a Process. Files. Data Files. Redo Log Files. Control Files. How the Server Uses the Database Buffer Cache. Types of Buffers. The Dirty List. The LRU List. PART II. ADMINISTRATION. 5. Data Integrity. Chapter Overview. Domain Integrity and Datatypes. What Is Domain Integrity? Why Domain Integrity? The Datatypes. Entity Integrity and the Primary Key. Referential Integrity and the Foreign Key. Referencing Versus Referenced Tables. The Foreign Key. Self-Referential Integrity. Enforcing Referential Integrity. Using Declarative Integrity Constraints. NOT NULL. UNIQUE. PRIMARY KEY. FOREIGN KEY. CHECK. Enforcing Custom Data Integrity Rules. Using Procedural Means. Stored Procedures, Functions, and Packages. Database Triggers. 6. Data Consistency and Concurrency. Chapter Overview. Statements and Transactions. Ensuring Accurate Writes. The Lost-Update Problem. How Locks Prevent Destructive Interference. Lock Restrictiveness. Lock Granularity. How the Server Handles Locks. Ensuring Accurate Reads. Consistent Reads. The Multi-version Consistency Model. Transaction-Level Read Consistency. Putting It All Together. 7. Starting and Stopping an Instance. Chapter Overview. Starting an Instance. SQL*DBA: Line Mode Versus Screen Mode. Instance Startup Options. How Do You Start an Instance? What Happens During Instance Startup? Setting Initialization Parameters. Stopping an Instance. When Do You Need to Stop an Instance? How Do You Stop an Instance? What Happens During Shutdown? 8. Managing Space Usage. Chapter Overview. Planning Initial Space Usage. Planning for Fault Tolerance. Setting Up Tablespaces. Setting the Size of Data Files. Setting the Size of Database Blocks. Altering Space Usage. Adding Tablespaces. Adding Data Files. Removing Tablespaces. Deleting Data Files. Further Controlling Space Usage. Controlling Block Usage. Controlling Extent Allocation. Setting Tablespace Quotas. 9. Optimizing Performance. Chapter Overview. Optimizing the Use of Memory. Total Memory. SGA Allocation. Optimizing the Use of Disk Resources. Reducing Contention. Reducing Fragmentation. Using the Multi-threaded Server. Optimizing Queries. Rule-Based Method. Cost-Based Method. Choosing a Method. Using Indexes and Hash Clusters. Indexes. Hash Clusters. 10. Security. Chapter Overview. Identification and Authentication. Creating Users. Choosing an Authentication Method. Setting Resource Limits Through Profiles. Dropping Users. Getting Information About Users. Privileges. Types of Privileges. Granting Privileges. Revoking Privileges. Granting Privileges on Program Units. Getting Information About Privileges. Roles. How Do Roles Work? Why Use Roles When You Can Use Privileges? Predefined Roles. Getting Information About Roles. File Permissions. Auditing Database Activity. 11. Backup, Failure, and Recovery. Chapter Overview. Types of Failure. User Process Failure. Instance Failure. Media Failure. Backup. How Backup Makes Full Recovery Possible. Types of Backup. Performing Offline Backups. Performing Online Backups. Frequency of Backups. Another Reason to Create a Backup. Recovery. Redo Log Buffers and Redo Log Files. How Multiple Log Files Work Together. How the Server Performs Recovery. Checkpoints. Additional Structures for Full Recovery from Media Failure. Mirrored Redo Log Files. Mirrored Control File. Archived Redo Log Files. Read-Only Tablespaces. Advantage of Read- Only Tablespaces. Candidates for Read-Only Tablespaces. Making a Tablespace Read-Only. 12. Distributed Processing. Chapter Overview. Why Use Distributed Databases? SQL*Net. Global Names, Database Links, and Synonyms. Global Names. Database Links. Synonyms. Two-phase Commit: Data Consistency in a Distributed Database. Some Definitions. Potential Problems. How a Two-phase Commit Works. Replication. Read-Only Snapshots. Updatable Snapshots. 13. Parallel Processing. Chapter Overview. Parallel Server. What Is the Parallel Server? Advantages of the Parallel Server. How the Parallel Server Works. Parallel Queries. Uses. How Parallel Querying Works. Hardware and Disk Requirements. Specifying How Many Processors to Use. Index.