DBCollect/Considerations

From Dirty Cache Wiki
Jump to navigation Jump to search


Things to consider

Running time

  • Anywhere from few minutes (small system) to many hours (system with lots of databases)
  • Overhead: by default, restricted to 8 parallel tasks (CPUs) – can be increased or lowered (--tasks option)
  • Oracle RAC is known to sometimes run very long to generate AWRs
  • dbcollect retrieves historical performance data already available on the system (AWR/Statspack, SYSSTAT)
It does not collect performance data real-time

If the runtime is too long for a CLI session, check Usage for details on how to run unattended.

File size

  • The generated ZIP file can be several 100 MB up to several GB if there are lots of databases
  • Make sure there is enough space in /tmp or change tmpdir with --tempdir

Safety and security

  • 100% open source (Python distribution package can be inspected)
  • Does NOT run as root (even if it is executed as root)
  • Does NOT make network connections (exception is ‘--update’)
  • Runs as the Oracle user (usually ‘oracle’) or ‘nobody’
  • Does not modify any database or OS data
  • Only performs SELECT statements
  • Only picks up DB and system metadata (no application data, passwords, etc)
  • Data can be inspected with regular UNZIP

Oracle License

Generating Oracle AWR requires Diagnostics Pack license (only available on Enterprise Edition)

  • DBCollect cannot know about contracts but checks DBA_FEATURE_USAGE_STATISTICS to see if AWR has been used before
  • If detected → proceed, if not → Try Statspack, if that does not work → give up with error
  • Can be forced with ‘—force-awr’ option (only use if you are sure you are licensed)