Understanding Oracle System Tablespace

From Oracle 10g, the smallest Oracle database is two tablespaces. This applies to Oracle 11g.

  • SYSTEM – stores the data dictionary.
  • SYSAUX – stores data for auxiliary applications (sysaux page link).

In reality, a typical production database has numerous tablespaces. These include SYSTEM and NON-SYSTEM tablespaces.

SYSTEM – a tablespace that is always used to store SYSTEM data that includes data about tables, indexes, sequences, and other objects – this metadata comprises the data dictionary.

  • Every Oracle database has to have a SYSTEM tablespace—it is the first tablespace created when a database is created.
  • Accessing it requires a higher level of privilege.
  • You cannot rename or drop a SYSTEM.
  • You cannot take a SYSTEM tablespace offline.
  • The SYSTEM tablespace could store user data, but this is not normally done—a good rule to follow is to never allow allow the storage of user segments in the SYSTEM
  • This tablespace always has a SYSTEM Undo segment.

It Contains,

  • Data Dictionary Information
  • system rollback segment
  • sys,system objects
  • should not contain user data

When creating a table it is customary to specify a “tablespace <tablespace name>” clause. If you didn’t mention the “tablespace” , Oracle will create the table in the user’s default tablespace. To change the default tablespace for a user you can issue this command:

alter user <username> default tablespace users;

This will keep new tables from getting into the system tablespace. To move a table from the system tablespace, you can use the alter table move tablespace <tablespace name> command.

You can also use the CTAS and rename commands but you must re-add the table constraints.


When you lose the SYSTEM tablespace the instance could crash or hang: anyway the instance will alert you as soon as possible.

It’s not rare the case when you cannot even shutdown the instance and proceed with a kill or a shutdown abort command.

If you have a good backup you can  restore it, but the database could not be open until the recovery process finishes.No problem for your committed transactions if your database is running in ARCHIVE LOG mode and they will be available as soon as the database open.


Catch Me On:- Hariprasath Rajaram 

Telegram:https://t.me/joinchat/I_f4DkeGfZuxgMIoJSpQZg LinkedIn:https://www.linkedin.com/in/hariprasathdba Facebook:https://www.facebook.com/HariPrasathdba 
FB Group:https://www.facebook.com/groups/894402327369506/ 
FB Page: https://www.facebook.com/dbahariprasath/? 
Twitter: https://twitter.com/hariprasathdba

Leave a Reply

Your email address will not be published. Required fields are marked *