Introduction to Utilities for New DBAs Session #332 4/19/2008 Erik Hobbs Introduction to Utilities for New DBAs
Erik Hobs | Page #2 © 2008 Blackbaud Introduction to Utilities for New DBAs Server-Side utilities Alert log monitor Alert log monitor Trace file cleanup script Trace file cleanup script File system space monitor File system space monitor Other server-side utilities Other server-side utilities
Erik Hobs | Page #3 © 2008 Blackbaud Introduction to Utilities for New DBAs Monitoring the Alert Log Why monitor the alert log? Why monitor the alert log? Things to consider Things to consider
Erik Hobs | Page #4 © 2008 Blackbaud Introduction to Utilities for New DBAs Alert log monitor, things to consider: How many databases to monitor? How many databases to monitor? How often? How often? What happens when alert is detected? What happens when alert is detected? What needs to be set up? What needs to be set up?
Erik Hobs | Page #5 © 2008 Blackbaud Introduction to Utilities for New DBAs Alert Log Monitor: an example
Erik Hobs | Page #6 © 2008 Blackbaud Introduction to Utilities for New DBAs Cleaning up trace files What are trace files? What are trace files? Where are trace files? Where are trace files? Why clean up trace files? Why clean up trace files?
Erik Hobs | Page #7 © 2008 Blackbaud Introduction to Utilities for New DBAs Trace file cleanup script: an example
Erik Hobs | Page #8 © 2008 Blackbaud Introduction to Utilities for New DBAs Monitoring filesystem space Why monitor space? Why monitor space? –Detect space issues (before users!) –Identify growth trends (for planning) What impacts filesystem space? What impacts filesystem space? –Database files –Dump (trace) files –Exports –Other OS files
Erik Hobs | Page #9 © 2008 Blackbaud Introduction to Utilities for New DBAs Filesystem space monitor: an example
Erik Hobs | Page #10 © 2008 Blackbaud Introduction to Utilities for New DBAs Scheduling Server-Side Jobs Cron: the Linux/Unix job scheduler Cron: the Linux/Unix job scheduler Windows Scheduled Tasks Windows Scheduled Tasks
Erik Hobs | Page #11 © 2008 Blackbaud Introduction to Utilities for New DBAs Database-side Utilities Sql Scripts Sql Scripts Backup & Recovery Utilities Backup & Recovery Utilities Tuning & Troubleshooting Utilities Tuning & Troubleshooting Utilities Job schedulers Job schedulers
Erik Hobs | Page #12 © 2008 Blackbaud Introduction to Utilities for New DBAs SQL Scripts Writing SQL Scripts Writing SQL Scripts SQL Script Examples SQL Script Examples
Erik Hobs | Page #13 © 2008 Blackbaud Introduction to Utilities for New DBAs Writing SQL Scripts Become SQL proficient Become SQL proficient Know the Data Dictionary Know the Data Dictionary Build a Library Build a Library
Erik Hobs | Page #14 © 2008 Blackbaud Introduction to Utilities for New DBAs SQL Script Examples Monitoring Database space Monitoring Database space Monitoring Database sessions/processes Monitoring Database sessions/processes Detecting Locks Detecting Locks Checking temp space usage Checking temp space usage
Erik Hobs | Page #15 © 2008 Blackbaud Introduction to Utilities for New DBAs Backup & Recovery Utilities Recovery Manager: RMAN Recovery Manager: RMAN Flashback Technology Flashback Technology
Erik Hobs | Page #16 © 2008 Blackbaud Introduction to Utilities for New DBAs RMAN What is RMAN? What is RMAN? RMAN Hot Backups RMAN Hot Backups RMAN Recoveries RMAN Recoveries Duplicating a database with RMAN Duplicating a database with RMAN Validating RMAN backups Validating RMAN backups
Erik Hobs | Page #17 © 2008 Blackbaud Introduction to Utilities for New DBAs Flashback Technology What is Flashback? What is Flashback? Flashback Query Flashback Query Flashback Table Flashback Table Flashback Drop Flashback Drop Flashback Versions Flashback Versions
Erik Hobs | Page #18 © 2008 Blackbaud Introduction to Utilities for New DBAs Requirements for using Flashback Query Oracle 9i or higher Oracle 9i or higher undo_management=AUTO undo_management=AUTO Changes still exist in UNDO Changes still exist in UNDO Execute privilege on dbms_flashback Execute privilege on dbms_flashback
Erik Hobs | Page #19 © 2008 Blackbaud Introduction to Utilities for New DBAs Requirements for using Flashback Table Oracle 10g or higher Oracle 10g or higher Enterprise Edition only Enterprise Edition only Granted Flashback Table privilege Granted Flashback Table privilege Row movement enabled on table Row movement enabled on table
Erik Hobs | Page #20 © 2008 Blackbaud Introduction to Utilities for New DBAs Requirements for using Flashback Drop Oracle 10g or higher Oracle 10g or higher Table still exists in recyclebin Table still exists in recyclebin
Erik Hobs | Page #21 © 2008 Blackbaud Introduction to Utilities for New DBAs Requirements for using Flashback Versions Oracle 10g and higher Oracle 10g and higher Data still exists in UNDO Data still exists in UNDO
Erik Hobs | Page #22 © 2008 Blackbaud Introduction to Utilities for New DBAs Tuning & Troubleshooting Utilities SQL_TRACE and TKPROF SQL_TRACE and TKPROF Statspack Statspack
Erik Hobs | Page #23 © 2008 Blackbaud Introduction to Utilities for New DBAs SQLTRACE and TKPROF Starting a Trace Starting a Trace Stopping a Trace Stopping a Trace Locating the trace file Locating the trace file Formatting the trace file using TKPROF Formatting the trace file using TKPROF
Erik Hobs | Page #24 © 2008 Blackbaud Introduction to Utilities for New DBAs TKPROF Report Reading a TKPROF report Reading a TKPROF report Using TKPROF reports for troubleshooting Using TKPROF reports for troubleshooting Using TKPROF reports for development Using TKPROF reports for development
Erik Hobs | Page #25 © 2008 Blackbaud Introduction to Utilities for New DBAs Statspack Installing Statspack Installing Statspack Taking snapshots Taking snapshots Statspack reports Statspack reports
Erik Hobs | Page #26 © 2008 Blackbaud Introduction to Utilities for New DBAs Database Job Schedulers DBMS_JOB DBMS_JOB DBMS_SCHEDULER DBMS_SCHEDULER
Erik Hobs | Page #27 © 2008 Blackbaud Introduction to Utilities for New DBAs DBMS_JOB Requirements Requirements –CREATE JOB privilege Submitting Jobs Submitting Jobs –DBMS_JOB.SUBMIT Managing Jobs Managing Jobs –DBA_JOBS view
Erik Hobs | Page #28 © 2008 Blackbaud Introduction to Utilities for New DBAs DBMS_SCHEDULER Advantages of DBMS_SCHEDULER Advantages of DBMS_SCHEDULER Using DBMS_SCHEDULER Using DBMS_SCHEDULER
Erik Hobs | Page #29 © 2008 Blackbaud Introduction to Utilities for New DBAs Advantages of DBMS_SCHEDULER Reusable schedules and programs Reusable schedules and programs Ability to run stored procedures and server-side executables Ability to run stored procedures and server-side executables User-named schedules, programs, jobs User-named schedules, programs, jobs Job chaining Job chaining Event triggers Event triggers
Erik Hobs | Page #30 © 2008 Blackbaud Introduction to Utilities for New DBAs Using DBMS_SCHEDULER Creating schedules Creating schedules Creating programs Creating programs Creating jobs Creating jobs
Erik Hobs | Page #31 © 2008 Blackbaud Introduction to Utilities for New DBAs Where to get Utilities Write your own Write your own Professional Journals Professional Journals Technical Books Technical Books Websites Websites
Erik Hobs | Page #32 © 2008 Blackbaud Introduction to Utilities for New DBAs What was Learned? Learn server-side utilities to enhance DBA effectiveness Learn server-side utilities to enhance DBA effectiveness Learn database-side utilities to enhance DBA effectiveness Learn database-side utilities to enhance DBA effectiveness Learn how easy it is to set up and utilize many of these utilities Learn how easy it is to set up and utilize many of these utilities
Erik Hobs | Page #33 © 2008 Blackbaud Introduction to Utilities for New DBAs Questions?
Erik Hobs | Page #34 © 2008 Blackbaud Introduction to Utilities for New DBAs Thank You Please fill out an evaluation form Please fill out an evaluation form Introduction to Utilities for New DBAs Erik Hobbs Session #332