Re: Using x$ tables in production

From: Stefan Koehler <contact_at_soocs.de>
Date: Tue, 25 Aug 2015 20:37:25 +0200 (CEST)
Message-ID: <576630484.160858.1440527845955.JavaMail.open-xchange_at_app02.ox.hosteurope.de>



Hi Matt,

> Are they OK to use (I know they can change from release to release), or is using one like logging on as SYS (i.e., just don’t do it)?

As always with Oracle: It depends. Why? Because you need to know what is (possibly) happening in the background when using X$ tables.

Just for example: It might be safe to use X$ tables like x$ksuse, x$bh or x$ktifp but you may screw up your database / application performance by using X$ table x$ksmsp due to heavy shared pool latch contention.

Personally i regularly use X$ tables (or the equivalent oradebug dumps) for troubleshooting or education purpose (the latter in playground envs of course), but i doubt the daily scope of using X$ in apps for example.  

Best Regards
Stefan Koehler

Freelance Oracle performance consultant and researcher Homepage: http://www.soocs.de
Twitter: _at_OracleSK

> "McPeak, Matt" <vxsmimmcp_at_subaru.com> hat am 25. August 2015 um 19:03 geschrieben:
>
> So, as a DBA and/or experienced developer of production-quality systems, would you ever:
>
> · Make a view on (or otherwise expose select access to) an SYS.X$* table to a non SYS user?
> · Use that view (or direct access) in an production system to drive a process.
>
> My question is about using X$ tables in general. Are they OK to use (I know they can change from release to release), or is using one like logging
> on as SYS (i.e., just don’t do it)?
>
> Thoughts (with supporting evidence, if possible)?
>
> Thanks!
>
> Matt

--
http://www.freelists.org/webpage/oracle-l
Received on Tue Aug 25 2015 - 20:37:25 CEST

Original text of this message