Cover image for Perl for Oracle DBAs
Perl for Oracle DBAs
Duncan, Andy.
Personal Author:
Publication Information:
Sebastopol, CA : O'Reilly, [2002]

Physical Description:
xvi, 602 pages : illustrations ; 24 cm
General Note:
Includes index.
Title Subject:
Added Author:
Format :


Call Number
Material Type
Home Location
Item Holds
QA76.73.P22 D86 2002 Adult Non-Fiction Central Closed Stacks

On Order



Perl is a very powerful tool for Oracle database administrators, but too few DBAs realize how helpful Perl can be in managing, monitoring, and tuning Oracle databases. Whether you're responsible for Oracle9i, Oracle8i, or earlier databases, you'll find Perl an invaluable addition to your database administration arsenal.You don't need to be a Perl expert to use the excellent applications and scripts described in Perl for Oracle DBAs. The book explains what you need to know about Perl, provides a wealth of ready-to-use scripts developed especially for Oracle DBAs, and suggests many resources for further exploration. The book covers:

The Perl language -- an introduction to Perl, its rich history and culture, and its extensive text processing and data transformation capabilities. The Perl/Oracle architecture -- Detailed information about Perl DBI, DBD::Oracle, the Oracle Call Interface (OCI), Oracle::OCI, extproc_perl, and mod_perl, the modules that allow Perl programs to communicate with Oracle databases. Perl applications for Oracle DBAs -- Profiles of the best Perl open source applications available for use and customization by Oracle DBAs: Perl/Tk, OraExplain, StatsView, Orac, DDL::Oracle, SchemaDiff, Senora, DBD::Chart, SchemaView-Plus, Oracletool, Karma, Embperl, and Mason. The Perl Database Administration (PDBA) Toolkit -- a comprehensive suite of specialized, ready-to-use scripts designed to help Oracle DBAs perform both routine and special-purpose administrative tasks: monitoring the Oracle alert log and databases, creating and managing Oracle user accounts, maintaining indexes and extents, extracting DDL and data, troubleshooting and tuning database problems, and much more. The book also explains how Oracle DBAs and developers can extend the toolkit and solve their own database administration problems using Perl.

Author Notes

Andy Duncan is the coauthor of Oracle & Open Source (O'Reilly, 2001), as well as Perl for Oracle DBAs (O'Reilly, 2002). The first book arose after Andy's creation, in 1998, of the Orac Perl/Tk tool for Oracle DBAs. Since then, he has worked mainly as an independent development and DBA consultant, and has counted both Oracle Corporation and Sun Microsystems among his long-term clients. In addition to performing Oracle, Perl, and Java consultancy work, Andy teaches as a senior instructor for Learning Tree International, covering both introductory and advanced Perl courses. He lives in Oxfordshire, England.

Jared Still has been an Oracle DBA in health insurance and manufacturing environments since 1994 (and version 7.0.13 of Oracle). He first began dabbling with Perl in 1993 and it was love at first sight. Perl became an integral part of his Oracle toolkit when it was used to rapidly prototype and implement complex reporting based on data in Oracle databases. Jared has been working with databases of various ilks since 1988, and along the way has also worked as a Unix system administrator. When not riding herd on the databases at the OK Corral, he likes to spend time tinkering on his car, fly fishing, or sitting on the deck in the backyard at his home doing absolutely nothing. He can be reached at

Table of Contents

Prefacep. ix
Part I. Introducing Perl for Oracle
1. Perl Meets Oraclep. 3
What is Perl?p. 4
The Perl/Oracle Architecturep. 10
Perl for Oracle DBAsp. 15
For Further Informationp. 24
2. Installing Perlp. 28
Installing Perlp. 28
Installing Perl DBIp. 38
Running Perl DBIp. 48
Installing Cygwinp. 51
Part II. Extending Perl
3. Perl GUI Extensionsp. 65
Perl/Tkp. 66
OraExplainp. 72
StatsViewp. 74
Oracp. 82
DDL::Oraclep. 84
SchemaDiffp. 90
Senorap. 92
DBD::Chartp. 95
SchemaView-Plusp. 104
Open Source Perl IDEsp. 107
Open Source Perl GUI Debuggersp. 108
4. Perl Web Extensionsp. 110
Apachep. 111
Oracletoolp. 118
Karmap. 127
5. Embedding Perl into Apache with mod_perlp. 136
mod_perlp. 137
Apache::OWAp. 155
6. Embedded Perl Web Scriptingp. 161
Embperlp. 162
Masonp. 169
7. Invoking the Oracle Call Interface with Oracle::OCIp. 178
What is Oracle::OCI?p. 179
What Is OCI?p. 180
Installing Oracle::OCIp. 185
Coding with Oracle::OCIp. 190
The Future of Oracle::OCIp. 198
8. Embedding Perl into PL/SQLp. 201
Communication Between Perl and PL/SQLp. 202
Embedding Perl Within Oraclep. 204
Part III. The Perl DBA Toolkit
9. Installing the PDBA Toolkitp. 227
Introducing the PDBA Toolkitp. 228
Toolkit Modulesp. 232
Installing the PDBA Toolkit for Unixp. 257
Installing the PDBA Toolkit for Win32p. 261
Configuring the PDBA Toolkitp. 265
10. Performing Routine DBA Tasks with the PDBA Toolkitp. 279
Managing User Accountsp. 280
Maintaining Indexesp. 297
Killing Sniped Sessionsp. 305
Managing Extent Usagep. 312
Extracting DDL and Datap. 315
11. Monitoring the Database with the PDBA Toolkitp. 328
Monitoring the Alert Logp. 328
Monitoring the Databasesp. 342
12. Building a Database Repository with the PDBA Toolkitp. 366
Repository Table Structurep. 367
Installing the Repositoryp. 369
Loading the Repository with Datap. 374
Reporting on Database Changesp. 377
Reporting on SQL Execution Plansp. 392
13. Extending the PDBA Toolkitp. 403
Modifying a Script in the Toolkitp. 404
Modifying a Module in the Toolkitp. 421
Part IV. Appendixes
A. The Essential Guide to Perlp. 439
B. The Essential Guide to Perl DBIp. 459
C. The Essential Guide to Regular Expressionsp. 482
D. The Essential Guide to Perl Data Mungingp. 521
Indexp. 575