Oracle DBA study plan
Oracle DBA · Give each week a clear focus.
8 weeks · About 7 hours per week
Oracle Database Architecture
Diagram the SGA, PGA, and background processes from memory, then label each component's role in a SQL statement's lifecycle
Trace a single SELECT from parse through fetch and write down which structure (buffer cache, shared pool, redo log buffer, DBWn, LGWR, CKPT) is touched at each step
Query V$SGA, V$PGASTAT, V$PROCESS, and V$BGPROCESS to confirm your diagram against a live instance
Map the logical hierarchy (database, tablespace, segment, extent, block) to physical files (datafiles, redo logs, control files, temp files)
Explain checkpoint, SCN, and instance recovery behavior well enough to describe what happens when the instance crashes mid-transaction
Your checkpoint
A one-page annotated architecture diagram plus a 25-question self-quiz scored at 85% or higher, with a written correction note for every missed item
Create an Oracle Database Instance & Oracle Database Architecture
Create a database from scratch with the CREATE DATABASE statement, then repeat the exercise using DBCA in silent mode
Configure initialization parameters through an SPFILE and demonstrate which changes take effect immediately versus after restart
Start and stop the instance in NOMOUNT, MOUNT, and OPEN modes and state which files each stage opens
Query V$INSTANCE, V$DATABASE, V$PARAMETER, and V$SPFILE to verify instance and database state after each operation
Diagnose a deliberately broken parameter or missing file using the alert log and ORA- error text
Your checkpoint
A lab log recording every startup and shutdown performed, the parameter changes made, and the alert-log excerpts that prove each transition
Create and Manage Database Storage Structures
Create dictionary-managed and locally managed tablespaces with automatic and uniform extent allocation and compare the resulting behavior
Add a datafile with AUTOEXTEND, cap its maximum size, and demonstrate what happens when the limit is reached
Place a segment in a specific tablespace, then relocate it and verify the move with DBA_SEGMENTS and DBA_DATA_FILES
Reclaim space by shrinking a datafile or dropping an unused tablespace, and confirm the result in DBA_FREE_SPACE
Generate a space-usage report joining DBA_TABLESPACE_USAGE_METRICS with DBA_DATA_FILES and interpret which tablespace is the growth risk
Your checkpoint
A tablespace build sheet (creation DDL for five tablespaces with differing extent and segment management) plus a space report flagging the tablespace most likely to hit its limit first
Configuring the Oracle Network Environment
Write listener.ora and tnsnames.ora by hand to expose one database under two service aliases
Start, stop, reload, and check status of the listener with lsnrctl, and confirm registration with the dynamic service views
Connect through the aliases using Easy Connect, local naming, and a directory naming approach, and record the differences
Reproduce and then fix ORA-12541 and ORA-12514 by inspecting listener status, service registration, and the connect descriptor
Restart the listener after a database bounce and verify services re-register without manual intervention
Your checkpoint
A working listener with two verified aliases plus a troubleshooting log that documents the cause and fix for each reproduced connection error
Administering User Security
Create users with default and temporary tablespaces and enforce quota limits that produce a controlled ORA-01536
Build a profile that limits sessions per user, idle time, and failed logins, then prove each limit fires
Grant privileges through roles rather than direct object grants and rewrite an over-privileged account into a least-privilege design
Audit existing privileges with DBA_SYS_PRIVS, DBA_TAB_PRIVS, and DBA_ROLE_PRIVS to find accounts holding unsafe grants
Configure password verification and demonstrate account lockout followed by an administrative unlock
Your checkpoint
A provisioning script that creates three users with distinct privilege profiles, plus a privilege audit query and its output showing no account holds unnecessary direct grants
Managing Data Concurrency & Implementing Oracle Database Auditing
Reproduce a row-level lock conflict across two sessions, then resolve it both by commit and by kill session
Force a deadlock, locate the ORA-00060 trace in the alert log, and interpret the deadlock graph to identify the victim
Explain and demonstrate the difference between READ COMMITTED and SERIALIZABLE within your own sessions using V$TRANSACTION
Enable a unified auditing policy on a specific table or privilege and query the resulting audit trail
Compare unified audit records against the older audit trail views and clean up audit data with the appropriate DBMS package
Your checkpoint
A concurrency lab report containing the deadlock reproduction, the trace interpretation, and before/after audit queries proving the policy captured exactly the actions intended
Backup and Recovery Concepts & Managing Undo Data
Enable ARCHIVELOG mode and verify that redo archiving succeeds after a log switch
Take a full RMAN backup, then restore and recover after deliberately deleting a datafile, and record recovery time
Perform point-in-time recovery to a timestamp before an accidental DELETE and confirm the lost rows return
Configure undo retention and size an undo tablespace so a long-running query does not raise ORA-01555 under a simulated load
Inspect undo usage with V$UNDOSTAT and V$TRANSACTION to distinguish active, unexpired, and expired extents during a running transaction
Your checkpoint
A restore-and-recovery drill report with measured recovery times and a sizing calculation that justifies your undo tablespace size
Moving Data & Managing Undo Data & Managing Data Concurrency
Move a schema with Data Pump export and import, using both a directory object and a network link, and compare the resulting row counts
Load a flat file with SQL*Loader and query it through an external table, then note where each approach is the better choice
Re-run the week 7 undo sizing calculation against your final database and adjust retention or tablespace size
Retake the two weakest domain quizzes from weeks 1 through 7 and close every gap you can name
Sit a full-length timed practice exam and categorize each miss by domain
Your checkpoint
A cross-domain migration lab (Data Pump plus external table) and a full-length practice exam scored at 80% or higher, with a domain-by-domain remediation list for any score below target
Milestones
Week 2: Without notes, start an instance through NOMOUNT, MOUNT, and OPEN in sequence and state which files and views are valid at each stage, scoring yourself against V$ views on a live instance
Week 4: Connect to a database through two hand-written aliases and resolve one injected ORA-12514 within 10 minutes using only listener status, service registration, and the connect descriptor
Week 6: Cause and diagnose a deadlock in under 15 minutes and produce the matching unified audit records for a named policy you configured yourself
Week 8: Complete a datafile restore and point-in-time recovery without notes, then score 80% or higher on a full-length timed practice exam