My Performance & Troubleshooting scripts (TPT) for Oracle are now in GitHub and open sourced

Tanel Poder

2018-05-18

I have uploaded my TPT-oracle scripts to GitHub and have formally open sourced them under Apache 2.0 license as well. This allows companies to embed this software in their toolsets and processes & distribute them without a worry from legal departments.

The repository is here:

Now you can “git clone” this repository once and just “git pull” every now and then to see what updates & fixes I have made.

Also if you like my scripts, make sure you “Star” this repository in Github too – the more stars it gets, the more updates I will commit! ;-)

While “git clone” is a recommended method for getting your own workstation copy of the repository now, your servers might not have git installed (and no direct internet access), so you can still download a zipfile of everything in this repo too:

You can still directly access individual scripts too using links like the ones below. For example, if you want to run fish.sql to display an awesome SQL fish in sqlplus, you can download this:

Or if you want to run something from a subdirectory, like ash/dashtop.sql for showing ASH top from the historical ASH data in DBA_HIST views, you can download this script from the ASH subdirectory:

Example output below:

SQL> @ash/dashtop sql_opname,event2 username='SYS' DATE'2018-04-19' DATE'2018-04-20'

    Total
  Seconds     AAS %This   SQL_OPNAME           EVENT2                                     FIRST_SEEN          LAST_SEEN
--------- ------- ------- -------------------- ------------------------------------------ ------------------- -------------------
     4930      .1   83%                        ON CPU                                     2018-04-19 18:00:04 2018-04-19 23:48:08
      430      .0    7%   SELECT               ON CPU                                     2018-04-19 18:01:04 2018-04-19 23:49:48
      290      .0    5%   SELECT               acknowledge over PGA limit                 2018-04-19 18:00:34 2018-04-19 23:23:50
       60      .0    1%   UPSERT               ON CPU                                     2018-04-19 18:00:04 2018-04-19 22:00:15
       50      .0    1%   UPSERT               acknowledge over PGA limit                 2018-04-19 18:00:04 2018-04-19 23:13:47
       30      .0    1%   CALL METHOD          ON CPU                                     2018-04-19 18:00:24 2018-04-19 21:03:19
       30      .0    1%                        control file sequential read               2018-04-19 18:56:42 2018-04-19 21:47:21
       30      .0    1%                        log file parallel write                    2018-04-19 21:03:19 2018-04-19 22:13:39
       20      .0    0%   CALL METHOD          acknowledge over PGA limit                 2018-04-19 18:00:24 2018-04-19 22:01:55
       20      .0    0%   DELETE               db file sequential read                    2018-04-19 20:46:54 2018-04-19 22:00:35
       20      .0    0%   SELECT               db file sequential read                    2018-04-19 22:01:05 2018-04-19 22:01:35
       10      .0    0%   INSERT               ON CPU                                     2018-04-19 19:50:28 2018-04-19 19:50:28
       10      .0    0%   INSERT               acknowledge over PGA limit                 2018-04-19 20:43:12 2018-04-19 20:43:12
       10      .0    0%   SELECT               db file scattered read                     2018-04-19 23:03:55 2018-04-19 23:03:55
       10      .0    0%                        LGWR any worker group                      2018-04-19 21:03:19 2018-04-19 21:03:19
       10      .0    0%                        control file parallel write                2018-04-19 21:05:59 2018-04-19 21:05:59

16 rows selected.

Now that I have this stuff in Github, I plan to update my scripts a bit more regularly – and you can follow the repository to get real time updates whenever I push something new.

As a next step I’ll convert my blog from WordPress to static hosting (Hugo) hopefully over this weekend, so you might see a few blog template/webserver glitches in the next few days.


  1. Updated video course material to be announced soon:
    Advanced Oracle SQL Tuning training. Advanced Oracle Troubleshooting training, Linux Performance & Troubleshooting training.
    Check the current versions out here!
  2. Get randomly timed updates by email or follow Social/RSS