Mladen Gogala

Me


Introduction

This is my first ever home page so please, don't judge it too harshly. This page will, of course, be permanently under construction. I decided to create a home page on the advice of my publisher, Mr. Don Burleson of Rampant Books. I wrote a book about Oracle and PHP and it was published on Friday, August the 4th, 2006. More information about the book is available at Rampant Press website: Easy Oracle PHP. Examples from the book can be downloaded here: Examples, zipped.
I sincerely hope that you will enjoy the book and find it useful, should you decide to read it. In addition to being a frequent quest on the Oracle's OTN forum, I also published the following article about using PHP and Oracle on OTN: Symfony Article. Application generators are becoming smarter by the day and well worth looking into.

Who am I?

I am a long time Oracle DBA who started to work with Oracle RDBMS in 1989. At that time, I was introduced to Oracle version 4, on PC/XT. It is very hard to believe that Oracle instance used to fit in only 512 KB of memory. I worked with every major version of oracle RDBMS since then. During my lengthy career I performed all kinds of jobs, from COBOL programmer, VAX/VMS administrator and trainer to Unix system administrator. As a DBA, I have an ample opportunity to use various scripting languages like shell, Perl, PHP and awk.

What can you find on this page?

On this page, I made available DBA_Helper, a small collection of PHP5 scripts organized in a convenient DBA tool for performing routine DBA functions. Initially, it was modeled after Andy Duncan's Orac_DBA tool written in Perl, but I decided not to create a single, monolithic script for ease of maintenance. Each line item in the tool is a separate script. That makes it easy to debug and extend the script as needed. DBA_Helper is released under GPL and you are welcome to extend it or modify in any way you find useful. If you have any modifications that you find useful and would like sharing them with others, please don't hesitate to send them to me and I'll publish them on this site. This site also contains two articles that I wrote for NYOUG and some "general purpose" articles written in response to the questions on the Oracle-L mailing list.


Latest Updates

    02-Apr-2008
    - Perl script which generates "schema.yml" file from Oracle tables was
      added. The script is almost trivial, it's used like this:
      ./symfony_yaml -u scott/tiger@dv -t "emp,dept" -f schema.yml
      The script uses DBI to connect to Oracle and describe the desired
      tables to the output. 
    07-Apr-2008
    - Contact information is changed from Yahoo.com to Gmail. Gmail allows
      IMAP access and has much, much better spam filters.
    25-Apr-2008 
    - New version of DBA tool is out. The most significant change is the
      abitility to generate the AWR reports.
    30-Jun-2008 
    - New version of DBA tool is out. The most significant change is the
      abitility to describe dictionary tables, views and the normal tables
      instead of just generating the DDL.
    15-Aug-2008
    - Version 1.0.24 of the DBA tool brings the ability to re-create users and
      generate scripts. Also, execution plans for SQL statements are no longer
      retrieved by a proprietary query, DBMS_XPLAN.DISPLAY_CURSOR is used 
      instead
    - dump2csv script is nodified to write out the column names as the 
      column title. There is also a new command line option, -head_off, 
      which supresses such behavior. This script is not versioned, no
      version history here.
     01-OCT-2008
     - The article about gathering stats was removed because of incompleteness
       and inaccuracies with the version 11.
     - DBA_Helper can now draw ER diagrams. Unfortunately, to make this
       happen, I had to make it dependent upon two new entities: AT&T's
       GraphViz package and the accompanying PHP API: PEAR Image_GraphViz
       package.
     - Tables being accessed can now be searched by SID in addition to
       the owner and type
     - Recyclebin objects are now sorted by space consumption.
     - Memory statistics now includes a version os "show SGA" command at the
       very beginning.
     11-DEC-2008
     - Role management added to the security section of the tool.
     23-JAN-2009
     - Ton of small changes and fixes added. 
     - Adding data files is now possible for the "normal" tablespaces.
     - Searching archived logs by thread and sequence is now possible.
     - The "time model" is replaced with the "session metric". Basic
       performance indicators are shown for the session.
     - Log files are now shown from V$LOG instead of GV$LOG
     - Additional searching criteria enabled for both DBA jobs and
       scheduler jobs.
     - Fixed bug with the title of "Re-Create User" page.
     - Select * from V$DATABASE added into the instance_info.php
     - Invalid objects can now be searched by type, on only by the
       owner.
     - Version change to 1.0.26
     16-MAY-2009
     - Several major features added.
     - Oracle TRCANLZR package can now be used to analyze the trace files.
       It's a web version of TKPROF.
     - Menu to manage groups has been added.
     - Added the OS CPU load monitoring to the instance menu. It's querying
       the GV$OSSTAT table. CPU load per instance is calculated as BUSY_TIME/
       IDLE_TIME and displayed below the stats listing.`
     - Added monitoring deltas from V$SESSMETRIC.  V$SESSMETRIC table contains
       the session indicators for a period of 1500 milliseconds. This is 
       extremely useful for monitoring sessions that is being the most active
       right now.
     - The items that were rarely used were removed from the Session Info mask.
     - Session info mask now shows the session ID on top of the page to avoid
       confusion when looking at 2 or more sessions.
     - ER diagram is now shown and saved as a PNG image, not SVG. That should
       make the output easier to handle, save and display.
     - Added a rudimentary "Latches" screen to the lock menu. I used it to 
       to find out the latch referenced in V$SESSION_WAIT (by address).
     - Version change to 1.0.27
     25-JUN-2009
     - Perl script that draws ER diagram for the given schema is added to
       the website. It also uses GraphViz module and is convenient when
       there is no need for the full blown GUI interface. This is, 
       essentially, a perl version of the PHP script which exists in the
       DBA_Helper for some time now.
     07-NOV-2009
     - This is the first update since june. I returned back to the US on 
       30-Sep-2009 and was busy.
     - LOB segment details are now shown in the "Segments" mask under the 
       "Free Space" report
     - Scheduler jobs can now be enabled or disabled
     - A nasty bug in "Grant Role" form was fixed. When no roles were present,
       the "Revoke" screen was falling apart.
     - Version change to 1.0.28

The Tool

The tool is a web based tool utilizing Apache web server and PHP5 to perform DBA functions on Oracle databases. PHP4 can not be used because the tool uses exceptions to handle errors and PHP4 does not support exceptions. The tool supports database version 9 and newer. It was tested with Oracle v9.2 and 10g. Prerequisites and screenshots are below.

Prerequisites

Screenshots

Downloads - DBA helper tool updated to 1.0.28 on 07-Nov-2009 (Rightclick and select "save target as").

Contact Info

Email: gogala.mladen@gmail.com