Thursday, 8 November 2012

Oracle Installation create a reference in /etc/oraInst.loc on Linux

The following error installing Oracle 11gR2 on Linux -
You do not have sufficient permissions to access the inventory '/u01/app/oraInventory'

is caused by an old install of 11gR2 pointing to a directory that no longer exists.

The inventory location is kept in /etc/oraInst.loc
altering oraInst.loc or deleting it fixes the problem

Thursday, 1 November 2012

Oracle Find all External Table Paths


Use this query to find out the location on disk of all external tables in Oracle:

select a.owner||’.'||a.table_name||’ stored in directory ‘||b.directory_path “EXTERNAL_TABLES”
from dba_external_locations a, dba_directories b
where a.directory_owner=b.owner
and a.directory_name=b.directory_name;

Oracle 11gR2 Links

Oracle Documents permanently on my Kindle -

Oracle 11gR2 home
http://www.oracle.com/pls/db112/homepage

Oracle 11gR2 Admin Guide
PDF - http://www.oracle.com/pls/db112/to_pdf?pathname=server.112/e25494.pdf


Oracle Database Administrator's Reference 11g Release 2 (11.2) for Linux and UNIX-Based Operating Systems
HTML - http://docs.oracle.com/cd/E11882_01/server.112/e10839/toc.htm
PDF - http://docs.oracle.com/cd/E18283_01/server.112/e10839.pdf

Oracle Database Utilities
PDfF - http://docs.oracle.com/cd/E11882_01/server.112/e22490.pdf

Oracle pl/sql Packages and Types Reference
PDF - http://docs.oracle.com/cd/E11882_01/appdev.112/e25788.pdf

Oracle Security Guide
PDF - http://docs.oracle.com/cd/E11882_01/network.112/e16543.pdf

Oracle SQL Language Reference
PDF - http://docs.oracle.com/cd/E11882_01/server.112/e26088.pdf

Oracle VLDB and Partitioining (Very Large Database Guide)
PDF - http://docs.oracle.com/cd/E11882_01/server.112/e25523.pdf

Oracle Recovery and Backup User's Guide
PDF - http://docs.oracle.com/cd/E11882_01/backup.112/e10642.pdf

Oracle Recovery and Backup Reference Guide
PDF - http://docs.oracle.com/cd/E11882_01/backup.112/e10643.pdf

Oracle Tuning Guide on Red Hat Enterprise Linux (RHEL 5 and Oracle 10)
https://access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/5/pdf/Tuning_and_Optimizing_Red_Hat_Enterprise_Linux_for_Oracle_9i_and_10g_Databases/Red_Hat_Enterprise_Linux-5-Tuning_and_Optimizing_Red_Hat_Enterprise_Linux_for_Oracle_9i_and_10g_Databases-en-US.pdf

Oracle Gather Table Stats


After a large load, update or delete of data in an Oracle database schema the query optimizer statistics can lead to sub-optimal performance. To gather statistics and improve performance run the following command:


begin
dbms_stats.gather_schema_stats(
     ownname          => 'SCHEMA',
     estimate_percent => dbms_stats.auto_sample_size,
     method_opt       => 'for all columns size repeat',
     degree           => 8
   );
  end;


How many times have I seen this make a huge performance difference after a massive data load!
Make sure this is set as a regular job to keep the statistics up to date

Oracle Set Session Date

To alter the date format of the current connection's session information on an Oracle database run the following command:

alter session set nls_date_format = 'MM/DD/YYYY HH24:MI:SS';