Skip to content
pvmehta.com

pvmehta.com

  • Home
  • About Me
  • Toggle search form
  • purge_trc.sh Linux/Unix
  • Wait time tuning research Oracle
  • 10g RAC: Troubleshooting CRS Root.sh Problems Oracle
  • How to collect CPU usage on Linux using Shell script Linux/Unix
  • cache buffer chain latch Oracle
  • _B_TREE_BITMAP_PLANS issue during 8.1.7 to 9.2.0.8 upgrade Oracle
  • online_ts_bkup.sql Oracle
  • Consolidated Reference List Of Notes For Migration / Upgrade Service Requests -ID 762540.1 Oracle
  • Generating XML from SQLPLUS Oracle
  • FGA Part-I Oracle
  • GSQ.sql Oracle
  • How to specify 2 arch location to avoid any kind of DB hanging. Oracle
  • Database logon trigger issue Oracle
  • JSON/XML Types in Oracle Oracle
  • Find all users who have DML privileges Oracle

Locally Managed Tablespace and Dictionary managed tablespace (LMT-DMT)

Posted on 19-Aug-2005 By Admin No Comments on Locally Managed Tablespace and Dictionary managed tablespace (LMT-DMT)

BENEFITS of Locally Managed Tablespaces

—————————————

Locally managed tablespaces track all extent information in the tablespace

itself, using bitmaps, resulting in the following benefits:

* Improved concurrency and speed of space operations, because space allocations

and deallocations predominantly modify locally managed resources (bitmaps

stored in header files) rather than requiring centrally managed resources

such as enqueues

* Improved performance, because recursive operations that are sometimes

required during dictionary-managed space allocation are eliminated

* Readable standby databases are allowed, because locally managed temporary

tablespaces (used, for example, for sorts) are locally managed and thus do

not generate any undo or redo.

* Simplified space allocation when the AUTOALLOCATE clause is specified,

appropriate extent size is automatically selected

* Reduced user reliance on the data dictionary because necessary information

is stored in file headers and bitmap blocks

RESTRICTIONS of Having a Locally Managed SYSTEM Tablespace

———————————————————-

After the SYSTEM tablespace is created/migrated to locally managed:

1/ ANY dictionary-managed tablespaces in the database CANNOT be made READ WRITE.

If you want to be able to use the dictionary-managed tablespaces in

READ-WRITE mode, Oracle recommends that you first migrate these tablespaces

to locally managed before migrating the SYSTEM tablespace.

Example of an inescapable situation :

SQL> select t.tablespace_name, EXTENT_MANAGEMENT, ENABLED

2 from dba_tablespaces t, v$datafile d, dba_data_files f

3 where t.tablespace_name = f.tablespace_name

4 and f.file_id = d.file#;

TABLESPACE_NAME EXTENT_MAN ENABLED

—————————— ———- ———-

SYSTEM LOCAL READ WRITE

UNDOTBS1 LOCAL READ WRITE

USERS DICTIONARY READ ONLY

SQL> alter tablespace users read write;

alter tablespace users read write

*

ERROR at line 1:

ORA-12915: Cannot alter dictionary managed tablespace to read write

Now if you want to migrate the USERS tablespace to local management to

switch it to READ WRITE afterwards, it becomes impossible:

SQL> execute sys.DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_TO_LOCAL(‘USERS’);

BEGIN sys.DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_TO_LOCAL(‘USERS’); END;

*

ERROR at line 1:

ORA-03245: Tablespace has to be dictionary managed, online and permanent

to be able to migrate

ORA-06512: at “SYS.DBMS_SPACE_ADMIN”, line 0

ORA-06512: at line 1

SQL> select tablespace_name, extent_management, allocation_type

2 from dba_tablespaces;

TABLESPACE_NAME EXTENT_MAN ALLOCATIO

—————————— ———- ———

SYSTEM LOCAL USER

UNDOTBS1 LOCAL SYSTEM

TEMP LOCAL UNIFORM

USERS DICTIONARY USER

We should have migrated the USERS tablespace to LOCAL before the SYSTEM

tablespace.

2/ You cannot create new DICTIONARY managed tablespaces :

SQL> create tablespace USERS

2 datafile ‘/filer/9.0.2/djeunot/DB1/users01.dbf’ size 2M

3 extent management dictionary;

create tablespace USERS

*

ERROR at line 1:

ORA-12913: Cannot create dictionary managed tablespace

3/ You cannot migrate a LOCALLY managed SYSTEM tablespace back to DICTIONARY:

SQL> execute sys.DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_FROM_LOCAL(‘SYSTEM’);

BEGIN sys.DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_FROM_LOCAL(‘SYSTEM’); END;

*

ERROR at line 1:

ORA-03251: Cannot issue this command on SYSTEM tablespace

ORA-06512: at “SYS.DBMS_SPACE_ADMIN”, line 0

ORA-06512: at line 1

Oracle, SQL scripts

Post navigation

Previous Post: True Session Wait Activity in Oracle 10g Verygood
Next Post: Good Link from metalink 1

Related Posts

  • Jai Shree Ram Oracle
  • Database link password in user_db_links Oracle
  • All Hints for Oracle Databases Oracle
  • Changing Instance Name ( No DB_NAME) Oracle
  • Query to Generate aggregate on every 30 mins. Oracle
  • Sending SQLPLUS output in HTML format Oracle

Leave a Reply Cancel reply

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

Categories

  • Ansible (0)
  • AWS (2)
  • Azure (1)
  • Django (0)
  • GIT (1)
  • Linux/Unix (149)
  • MYSQL (5)
  • Oracle (402)
  • PHP/MYSQL/Wordpress (10)
  • POSTGRESQL (1)
  • Power-BI (0)
  • Python/PySpark (7)
  • RAC (18)
  • rman-dataguard (26)
  • shell (150)
  • SQL scripts (350)
  • SQL Server (6)
  • Uncategorized (5)
  • Videos (0)

Recent Posts

  • SAT Mathematics 10 questions and answer at the end.30-Apr-2026
  • top 10 AI news today30-Apr-2026
  • runon_allpdbs_show_conname.sh23-Apr-2026
  • runon_allcdbs_find_pdbs.sql23-Apr-2026
  • Running PDB on single node in RAC09-Apr-2026
  • find_arc.sql09-Apr-2026
  • pvm_pre_change.sql08-Apr-2026
  • find_encr_wallet.sql08-Apr-2026
  • find_pdbs.sql08-Apr-2026
  • Creating a Container Database using dbaascli08-Apr-2026

Archives

  • 2026
  • 2025
  • 2024
  • 2023
  • 2010
  • 2009
  • 2008
  • 2007
  • 2006
  • 2005
  • purge_trc.sh Linux/Unix
  • True Session Wait Activity in Oracle 10g Verygood Oracle
  • Processes Parameter decision Oracle
  • Find_stale_dr.sql finding stale physical DR.. Oracle
  • Backup and Recovery Scenarios Oracle
  • how to find OS block size Oracle
  • TNSNAMES entries details Oracle
  • kill all processes from specific user in solaris. Linux/Unix

Copyright © 2026 pvmehta.com.

Powered by PressBook News WordPress theme