1Introduction Objectives 1-2 Course Objectives 1-3 Oracle Products 1-4 Relational Database Systems 1-5 How the Data Is Organized 1-6 Integrity Constraints 1-7 Structured Query Language 1-8 Tasks of an Oracle Database Administrator 1-9 Summary Installing Oracle Database 10g Software Objectives 2-2 System Requirements 2-3 Optimal Flexible Architecture (OFA) 2-4 Using Optimal Flexible Architecture 2-5 Setting Environment Variables 2-7 Preinstallation Checks 2-9 Oracle Universal Installer 2-10 Inventory and UNIX Group Name 2-11 orainstRoot.sh 2-12 File Locations 2-14 Install Type 2-15 Prerequisite Checks 2-16 Starter Database 2-17 Configuration and Management 2-18 File Storage and Backup Recovery 2-19 Passwords and Summary 2-20 Installation 2-21 Configuration Assistants 2-22 Summary 2-24 Practice 2: Installing the Oracle Software Creating an Oracle Database Objectives 3-2 Database Architecture 3-3 Exploring the Storage Structure 3-4 Control Files 3-5 Redo Log Files 3-6 Tablespaces and Datafiles 3-7 Segments, Extents, and Blocks 3-8 Contents i
Oracle Instance Management 3-9 Oracle Memory Structures 3-10 Oracle Processes 3-12 Data Dictionary 3-13 Database Control 3-14 Grid Control 3-15 Database Configuration Assistant (DBCA) Overview 3-16 Creating a Database 3-17 Database Identification 3-18 Management Options 3-19 Passwords and Storage 3-20 File Locations and Backup Recovery 3-21 File Location Variables 3-22 Content and Initialization Parameters 3-23 Database Storage 3-25 Creation Options and Create 3-26 Other Actions with DBCA 3-27 Summary 3-28 Practice 3: Creating an Oracle Database Database Interfaces Objectives 4-2 What Is SQL? 4-3 Using SQL 4-4 Enterprise Manager: Seeing the SQL 4-5 What Is SQL*Plus? 4-6 What Is i SQL*Plus? 4-7 Using i SQL*Plus 4-9 Describing Data 4-10 Querying Data 4-11 Sorting the Data 4-12 Joining Tables 4-13 Manipulating Data 4-15 Defining Data 4-16 Overview of Transactions 4-17 Transaction Control Statements 4-18 Locking Data 4-19 Other Statement Categories 4-20 What Is PL/SQL? 4-21 Example PL/SQL Block 4-22 Uses of PL/SQL 4-23 What Is Java? 4-24 Oracle and Java 4-25 ii
What Is OCI? 4-26 Other APIs 4-27 Summary 4-29 Practice 4: Using SQL Controlling the Database Objectives 5-2 Starting and Stopping i SQL*Plus 5-3 Management Framework 5-4 Starting and Stopping Database Control 5-5 Accessing Database Control 5-6 SYSOPER and SYSDBA 5-7 Database Home Page 5-8 Changing the Listener Status 5-9 Startup and Shutdown 5-10 Starting Up a Database NOMOUNT 5-11 Starting Up a Database MOUNT 5-12 Starting Up a Database OPEN 5-13 Shutting Down the Database 5-14 SHUTDOWN Options 5-15 Initialization Parameter Files 5-18 Viewing Initialization Parameters 5-19 Viewing the Alert Log 5-20 Summary 5-21 Practice 5: Controlling the Database Storage Structures Objectives 6-2 Tablespaces and Data Files 6-3 Space Management in Tablespaces 6-4 Creating a New Tablespace 6-5 Storage for Locally Managed Tablespaces 6-7 Tablespaces in the Preconfigured Database 6-9 Altering a Tablespace 6-11 Actions with Tablespaces 6-13 Dropping Tablespaces 6-15 Viewing Tablespace Information 6-16 Summary 6-17 Practice 6: Working with Tablespaces 6-18 iii
7 Administering Users Objectives 7-2 Database User Accounts 7-3 Creating a User 7-4 Profiles and Users 7-5 Authenticating Users 7-7 Default and Temporary Tablespaces and Locking 7-9 Database Users and Schemas 7-10 Checklist for Creating Users 7-11 Privileges 7-12 System Privileges 7-13 Object Privileges 7-15 Assigning Quota to Users 7-16 Assigning Roles to Users 7-17 Roles 7-18 Benefits of Roles 7-19 Predefined Roles 7-20 Secure Roles 7-21 Summary 7-22 Practice 7: Administering Users Managing Schema Objects Objectives 8-2 What Is a Schema? 8-3 Schemas 8-4 Accessing Schema Objects 8-6 Naming Database Objects 8-7 Schema Object Namespaces 8-9 Specifying Data Types in Tables 8-10 Other Data Types 8-11 Creating and Modifying Tables 8-13 Understanding Data Integrity 8-15 Defining Constraints 8-17 Viewing the Attributes of a Table 8-18 Viewing the Contents of a Table 8-19 Actions with Tables 8-20 Creating Indexes 8-22 What Is a View? 8-23 Creating Views 8-24 iv
What Is a Sequence? 8-25 Using a Sequence 8-27 Summary 8-28 Practice 8: Working with Tables Managing Data Objectives 9-2 Manipulating Data Through SQL 9-3 The INSERT Command 9-4 The UPDATE Command 9-5 The DELETE Command 9-6 The COMMIT and ROLLBACK Commands 9-7 Integrity Constraints and DML 9-8 Data Pump Export 9-9 Data Pump Import 9-11 DIRECTORY Objects 9-13 SQL*Loader 9-14 The SQL*Loader Control File 9-16 Control File Syntax Considerations 9-19 Input Data and Data Files 9-20 Loading Methods 9-23 Comparing Direct and Conventional Path Loads 9-25 Loading Data with SQL*Loader 9-27 Summary 9-29 Practice 9: Using Data Pump Export and Import PL/SQL Objectives 10-2 PL/SQL 10-3 Administering PL/SQL Objects 10-4 PL/SQL Objects 10-5 Functions 10-6 Procedures 10-7 Packages 10-8 Package Body 10-9 Built-In Packages Triggers PL/SQL Configuration Options Summary Practice Overview v
11 Oracle Database Security Objectives 11-2 Database Security 11-3 Apply the Principle of Least Privilege 11-5 Protect the Data Dictionary 11-6 Revoke Unnecessary Privileges from PUBLIC 11-7 Restrict the Operating System Directories Accessible by the User 11-9 Limit Users with Administrative Privileges Disable Remote Operating System Authentication Manage Default User Accounts Implement Standard Password Security Features Password Account Locking Password Expiration and Aging Password History Password Verification Supplied Password Verification Function: VERIFY_FUNCTION Creating a Password Profile Assigning Users to a Password Profile Monitoring for Suspicious Activity Audit Tool Comparisons Standard Database Auditing Specifying Audit Options Viewing Auditing Options Standard Database Auditing Viewing Auditing Results Value-Based Auditing Fine-Grained Auditing (FGA) FGA Policy DBMS_FGA Package Enabling and Disabling an FGA Policy Dropping an FGA Policy Triggering Audit Events Data Dictionary Views DBA_FGA_AUDIT_TRAIL FGA Guidelines Auditing SYSDBA and SYSOPER Users Security Updates Summary Practice 11-1 Overview: Database Security (Part 1) Practice 11-2 Overview: Database Security (Part 2) vi
12 Oracle Net Services Objectives 12-2 Oracle Net Services 12-3 Oracle Net Listener 12-4 Monitoring the Listener 12-5 Creating a Listener 12-6 Listening Addresses 12-7 Configuring Optional Parameters 12-8 Static Database Registration 12-9 Listener Control Utility Listener Control Utility Syntax Monitoring with Listener Control Oracle Net Connections Names Resolution Easy Connect Local Naming Directory Naming Configuring Service Aliases Advanced Connection Options Oracle Net Manager Choosing Naming Methods Configuring Service Aliases with Net Manager Advanced Connection Options Using Oracle Net Manager Testing Oracle Net Connectivity Summary Practice 12 Overview: Oracle Net Services Oracle Shared Servers Objectives 13-2 Establishing a Connection 13-3 Dedicated Server Process 13-4 User Sessions 13-5 User Sessions: Dedicated Server 13-6 User Sessions: Shared Server 13-7 Processing a Request 13-8 The SGA and PGA 13-9 Configuring Oracle Shared Server DISPATCHERS SHARED_SERVERS MAX_SHARED_SERVERS CIRCUITS SHARED_SERVER_SESSIONS Related Parameters vii
Verifying Shared Server Setup Data Dictionary Views Choosing a Connection Type When Not to Use Shared Server Summary Practice 13 Overview: Oracle Shared Servers Practice Lesson Performance Monitoring Objectives 14-2 Performance Monitoring 14-3 Monitoring Methodologies 14-4 Database and Instance Metrics 14-5 Data Dictionary Metrics 14-7 Invalid and Unusable Objects 14-8 Optimizer Statistics Manually Gather Optimizer Statistics Automate Optimizer Statistics Collection Schedule Optimizer Statistics Collection Dynamic Performance Views Viewing Metric Information Reacting to Performance Issues Reacting to Performance Issues Summary Practice 14: Monitoring Performance Proactive Maintenance Objectives 15-2 Server Generated Alerts 15-3 Thresholds 15-4 Setting Thresholds 15-5 Baseline Measurements 15-6 Using Baselines 15-7 Tuning and Diagnostic Advisors 15-8 SQL Tuning and Access Advisors Memory Advisors Segment Advisor Automatic Workload Repository (AWR) Managing the AWR Automatic Database Diagnostic Monitor (ADDM) ADDM Findings ADDM Recommendations Summary Practice 15: Proactive Maintenance viii
16Undo Management Objectives 16-2 Undo Data 16-3 Transactions and Undo Data 16-5 Storing Undo Information 16-6 Monitoring Undo 16-7 Administering Undo 16-9 Configuring Undo Retention Guaranteeing Undo Retention Sizing the Undo Tablespace Using the Undo Advisor Summary Practice 16: Managing Undo Monitoring and Resolving Lock Conflicts Objectives 17-2 Locks 17-3 Locking Mechanism 17-4 Data Concurrency 17-5 DML Locks 17-7 Enqueue Mechanism 17-8 Lock Conflicts 17-9 Possible Causes of Lock Conflicts Detecting Lock Conflicts Resolving Lock Conflicts Deadlocks Summary Practice 17: Locks in the Oracle Database Backup and Recovery Concepts Objectives 18-2 Backup and Recovery Issues 18-3 Categories of Failures 18-4 Statement Failures 18-5 User Process Failure 18-6 Network Failure 18-7 User Errors 18-8 Instance Failure Instance Recovery Phases of Instance Recovery Tuning Instance Recovery ix
Using the MTTR Advisor Media Failure Configuring for Recoverability Control Files Redo Log Files Multiplexing the Redo Log Archived Log Files Archive Log File Naming and Destinations ARCHIVELOG Mode Summary Practice 18: Backup and Recovery Concepts Database Backups Objectives 19-2 Terminology 19-3 Recovery Manager (RMAN) 19-5 Configuring Backup Settings 19-6 Scheduling Backups: Strategy 19-8 Scheduling Backups: Options 19-9 Scheduling Backups: Settings Scheduling Backups: Schedule Scheduling Backups: Review Backup Control File to Trace Manage Backups Flash Recovery Area Summary Practice 19: Database Backups Database Recovery Objectives 20-2 Opening a Database 20-3 Changing Instance Status 20-5 Keeping a Database Open 20-6 Loss of a Control File 20-7 Loss of a Redo Log File 20-8 Loss of a Data File in NOARCHIVELOG Mode 20-9 Loss of a Noncritical Data File in ARCHIVELOG Mode Loss of a System-Critical Data File in ARCHIVELOG Mode Summary Practice Overview: Database Recovery x
Appendix A: Practice Solutions Appendix B: Basic Linux and vi Commands Appendix C: SQL Statement Syntax Appendix D: Acronyms and Terms Appendix E Next Steps: Continuing Your Education Where Do You Go from Here? E-2 Continuing Education Resources E-3 Oracle University E-4 Oracle University Online Library E-5 Oracle Technology Network E-6 Oracle AppsNet E-7 Oracle MetaLink E-8 Thank You! E-9 xi