Apress

Expert Oracle Practices Cover Image

This book is an anthology of effective database management techniques representing the collective wisdom of the OakTable Network. With an emphasis upon performance, but also branching into security, national language, and other issues, the book helps you deliver the most value for your company's investment in Oracle Database technologies.

Full Description

  • ISBN13: 978-1-4302-2668-0
  • User Level: Intermediate to Advanced
  • Publication Date: January 19, 2010
  • Available eBook Formats: EPUB, MOBI, PDF
  • Print Book Price: $54.99
  • eBook Price: $38.99
Buy eBook Buy Print Book Add to Wishlist

Related Titles

Full Description

This book is an anthology of effective database management techniques representing the collective wisdom of the OakTable Network. With an emphasis upon performance—but also branching into security, national language, and other issues—the book helps you deliver the most value for your company’s investment in Oracle Database technologies. You’ll learn to effectively plan for and monitor performance, to troubleshoot systematically when things go wrong, and to manage your database rather than letting it manage you.

What you’ll learn

  • Adopt a rational approach to database management; eliminate guesswork
  • Add value to your organization as a database professional
  • Manage and optimize performance
  • Exploit different platform technologies
  • Secure your organization's data
  • Gain deep understanding of database internals and structures

Who this book is for

This book is aimed at Oracle database administrators who want to further their careers by implementing sound and proven database administration practices—and especially repeatable and predictable practices—in their daily work.

Table of Contents

Table of Contents

  1. Battle Against Any Guess
  2. A Partly Cloudy Future
  3. Developing a Performance Methodology
  4. The DBA as Designer
  5. Running Oracle on Windows
  6. Managing SQL Performance
  7. PL/SQL and the CBO
  8. Understanding Performance Optimization Methods
  9. Choosing a Performance Optimization Method
  10. Managing the Very Large Database
  11. Statistics
  12. Troubleshooting Latch Contention
  13. Measuring for Robust Performance
  14. User Security
  15. Securing Data
Source Code/Downloads

Downloads are available to accompany this book.

Your operating system can likely extract zipped downloads automatically, but you may require software such as WinZip for PC, or StuffIt on a Mac.

Errata

If you think that you've found an error in this book, please let us know about it. You will find any confirmed erratum below, so you can check if your concern has already been addressed.

* Required Fields

On page 62:

The table at the bottom of page 62 has an issue with column alignment.
The figures for the row "DB CPU" are shown under the wrong column headings.

The figure 9,739 belongs under the column heading "Time(s)". The figure 22.43 belongs under the column heading "% DB Time".

All the tables in this chapter (and maybe others) are lacking a caption.

Example:
Top 5 Timed Foreground Events
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Avg
wait % DB
Event Waits Time(s) (ms) time Wait Class
------------------------------ ------------ ----------- ------ ------ ----------
DB CPU 47 43.7
db file sequential read 27,633 21 1 20.2 User I/O
db file scattered read 2,205 4 2 3.8 User I/O
control file sequential read 1,233 2 1 1.6 System I/O
write complete waits 1 1 999 .9 Configurat

On page 68:

page 68: quote "DB time analysis can also be performed over many dimensions: SQL ID, ...

I disagree. The metric "DB time" is not available per SQL ID. The author does not offer any information on where he thinks "DB time" per SQL ID can be retrieved. For example V$SQL does not have information on "DB time" as such. As you can see here, these are the columns of V$SQL that contain the word "time":
SQL> $grep -i time t.log
RUNTIME_MEM NUMBER
FIRST_LOAD_TIME VARCHAR2(76)
APPLICATION_WAIT_TIME NUMBER
CONCURRENCY_WAIT_TIME NUMBER
CLUSTER_WAIT_TIME NUMBER
USER_IO_WAIT_TIME NUMBER
PLSQL_EXEC_TIME NUMBER
JAVA_EXEC_TIME NUMBER
CPU_TIME NUMBER
ELAPSED_TIME NUMBER
LAST_LOAD_TIME VARCHAR2(76)
LAST_ACTIVE_TIME DATE

According to page 9-8 in Oracle Database Reference Release 11.2 DB time contains "connection management call elapsed time". Since V$SQL does not have information on "connection management call elapsed time" it is impossible to derive DB time from the data in V$SQL.

On page 68:

page 68

The information that "DB time" and "DB CPU" for service_name, module, and action are available in v$serv_mod_act_stats is missing. It should be noted that v$serv_mod_act_stats is populated only after using DBMS_MONITOR.SERV_MOD_ACT_STAT_ENABLE has been used. Using google books I get "No results found for this book for v$serv_mod_act_stats".