Database Reference
In-Depth Information
Leveraging Events at the Instance-Level
Several scenarios mandate setting events at the instance level. These are:
￿
Enabling or disabling bug fixes
￿
Enabling or disabling features, such as cost-based optimizer access paths
￿
Tracing certain code paths or features in all processes of an instance
￿
Enabling or disabling certain checks
￿
Writing a diagnostic dump whenever an ORACLE error (ORA- nnnnn ) is raised in any
database session
Consider the parameter EVENT whenever events must be set right when a process starts
or for all processes of an instance. While it is absolutely feasible to obtain SQL trace files for
multiple processes, such as those originating from a connection pool by setting event 10046
with parameter EVENT , I am a strong opponent of such a procedure because more sophisticated
approaches, such as using a logon trigger or DBMS_MONITOR exist. Setting event 10046 at level 8
or 12 with the parameter EVENT is better than setting SQL_TRACE=TRUE at the instance level, since
wait events and binds may be included; however, both incur the unnecessary overhead of
tracing each and every process of the instance. I certainly wouldn't be willing to sift through
dozens or even hundreds of trace files to find a few relevant ones when other features allow
tracing just the processes of interest.
Case Study
Recovery Manager (RMAN) supports writing backups to file systems and to third party media
managers. Writing backups to a file system works out of the box and does not incur additional
expenses. Since writing to a local file system does not protect against the failure of the database
server hardware as a whole, writing to remote file systems or network-attached storage (NAS)
arrays via NFS is supported too. RMAN has several undocumented requirements concerning
NFS mount options. If the mount options hard,rsize=32768,wsize=32768 are not used, RMAN
will refuse to write to an NFS file system. However, certain releases of RMAN still throw an error
when these requirements are met. Under these circumstances, Oracle Support has suggested
setting event 10298 at level 32 as a temporary workaround until the underlying issue is resolved.
This is a case for setting an event at the instance level with parameter EVENT . With other
methods for setting events, such as ORADEBUG or DBMS_SYSTEM , it is impossible to set the event in
time for the multiple processes that RMAN spawns. Furthermore it would be too cumbersome
to set the event after each instance startup with ALTER SYSTEM SET EVENTS .
OS_AUTHENT_PREFIX
The initialization parameter OS_AUTHENT_PREFIX is documented in the Oracle Database Reference
manual. It is undocumented that a database user name that is prefixed by the string OPS$
allows for local authentication through the operating system and password authentication
when connecting over a network.
Since REMOTE_OS_AUTHENT=FALSE should be set for security reasons, it's impossible to use
externally-identified users to connect to an instance over a network, e.g., using Oracle Net and
 
Search WWH ::




Custom Search