My Experiments With Oracle


Archive for the ‘Uncategorized’ Category

Oracle Internals – Memory structures (arrays) – Part 1

Posted by sriram on January 19, 2018


Dynamic Performance Views

Oracle contains a set of underlying views that are maintained by the database server and accessible to the database administrator user SYS. These views are called dynamic performance views because they are continuously updated while a database is open and in use, and their contents relate primarily to performance.

Although these views appear to be regular database tables, they are not. These views provide data on internal disk structures and memory structures. You can select from these views, but you can never update or alter them.

Screen Shot 2018-01-19 at 10.50.09 AM

There are two types of views,  

  • V$ Views
  • GV$ Views

Almost For Every V$ View there is a GV$View which will hold the instance specific Information in a Multi Instance Environment like RAC.

Screen Shot 2018-01-19 at 10.33.49 AM

These Dynamic Views are owned by Sys User and These views are constructed based on the Oracle Internal Memory Structures (X$ Tables/Views). We cannot alter or Update on these views. These X$ structure Get Created when the Instance started and Will get destroyed when you shutdown the DB.  


V$FIXED_TABLE displays all dynamic performance tables, views, and derived tables in the database.


This  View contains the definitions of all the fixed views (views beginning with V$). Use this table with caution. Oracle tries to keep the behavior of fixed views the same from release to release, but the definitions of the fixed views can change without notice.

As described in the Above Example, Dynamic Performance views are based on Internal Memory Structures X$.

The X$ tables/views  are platform-specific & the No of tables are keep on increasing By Oracle Version.The Oracle kernel consists of layers. The X$ table names contain an abbreviation for the particular kernel layer.

The No#  Of Views are dependent on Oracle version and the OS Specific.

Screen Shot 2018-01-19 at 11.18.14 AM

Screen Shot 2018-01-19 at 10.24.17 AM

These Views Get populated only when the Instance Started. These Views Contains information about all the parameters,performance etc info. As We all know Oracle has documented some of Dynamic Views (V$_ objects) which are in handy to get the info from your instance these Dynamic Views are Based on GV$_ VIEWS which includes the data for Multiple Instances.  GV$ are Designed from these Fixed Views. View Columns might be similar from version to version where as Underlying Fixed X$ objects might different.

Screen Shot 2018-01-19 at 10.56.14 AM

Why do we call them “Fixed”?

As mentioned, All these Objects are owned by SYS and DDL or DML Operations are not permitted/supported on these. Even if we try to perform, Operation will end up with error ORA-02030: can only select from fixed tables/views.

Screen Shot 2018-01-19 at 10.50.09 AM

These objects contain information about the current configuration of the instance, information about the sessions connected to the instance, and a goldmine of performance information.  

Using Views like (g) v$fixed_view_definition  one can get the Actual Creation script of these Fixed views which are harmful in case of replacing the Existing or Create New views, which will end up with Errors or incorrect data as These Views are for Oracle not for Others. DBA/Developers should not create Objects using actual “V$_ “, they need to use v$ Objects instead of v$_ or X$, as The Definition of the base view may change in OS/DB software versions.   

The X$ views are completely undocumented, and Oracle does not provide any assistance for deriving the meaning of the contents of the X$ structures. since V$ views are dynamic and consistency is not guaranteed, Oracle does not support joins or sorts of dynamic views.  

The X$ views are an Oracle internal interface not exposed for customer use; customers should not be using it unless directed to do so by the support.Customer use without support guidance is unsupported.


Posted in Uncategorized | Leave a Comment »

Learning is not a spectator sport

Connor McDonald's Oracle blog


Oracle DBA's Daily Work

Welcome everyone!! The idea of this blog is to help the DBA in their daily tasks. Enjoy.

Anand's Blog

My experiences and views on Oracle Database

Tanel Poder's blog: Core IT for geeks and pros

Oracle Performance Tuning, Troubleshooting, Internals

Yet Another OCM

Journey as an Oracle Certified Master

Sharing Knowledge is ultimate key to Gaining knowledge...

Neil Chandler's DB Blog

A resource for Database Professionals

DBA Kevlar

Tips, tricks, (and maybe a few rants) so more DBAs become bulletproof!

OraExpert Academy

Consulting and Training


The Ramblings and Ravings Of Author Jason A. Rust

So Many Oracle Manuals, So Little Time

“Books to the ceiling, Books to the sky, My pile of books is a mile high. How I love them! How I need them! I'll have a long beard by the time I read them”—Lobel, Arnold. Whiskers and Rhymes. William Morrow & Co, 1988.


Oracle databases, storage and the high-performance world of flash memory


The thoughts of Jason Arneil

Frits Hoogland Weblog

IT Technology; Oracle, linux, TCP/IP and other stuff I find interesting


Dominic Brooks on Oracle Performance, Tuning, Data Quality & Sensible Design ... (Now with added Sets Appeal)

Martins Blog

Trying to explain complex things in simple terms

Carlos Sierra's Tools and Tips

Tools and Tips for Oracle Performance and SQL Tuning

Talip Hakan Ozturk's ORACLE BLOG

The secret of success is at your fingertips!...

Martin Widlake's Yet Another Oracle Blog

Oracle performance, Oracle statistics and VLDBs

Richard Foote's Oracle Blog

Focusing Specifically On Oracle Indexes, Database Administration and Some Great Music

Oracle Scratchpad

Just another Oracle weblog

Oracle DBA Blog

Procedures, learnings and fixes encountered by a Junior DBA

Oracle ACE Director Kai Yu's Oracle Blog

Share Oracle Tips and Tricks and Related News



Online Identity & Access Management

One Stop Shop for Identity & Access Management

Babu B


Uwe Hesse

about Database Technology

Oracle database internals by Riyaj

Discussions about Oracle performance tuning, RAC, Oracle internal & E-business suite. is the best place for your personal blog or business site.

Kamran Agayev's Oracle Blog

Oracle Certified Master

%d bloggers like this: