For tablespaces that have local extent management, you can use either manual or automatic segmentspace management. Manual segment space management exists for backward compatibilityand uses free block lists to identify the data blocks available for inserts together with theparameters PCT_FREE and PCT_USED, which control when a block is made available for inserts.
After each INSERT or UPDATE, the database compares the remaining free space in that datablock with the segment's PCT_FREE setting. If the data block has less than PCT_FREE free space(meaning that it is almost full), it is taken off the free block list and is no longer available forinserts. The remaining free space is reserved for update operations that may increase the size ofrows in that data block. After each UPDATE or DELETE, the database compares the used space inthat data block with that segment's PCT_USED setting. If the data block has less than PCT_USED used space, the data block is deemed empty enough for inserts and is placed on the free block list.
To specify manual segment space management, use the SEGMENT SPACE MANAGEMENTMANUAL clause of the CREATE TABLESPACE statement, or simply omit the SEGMENT SPACEMANAGEMENT clause. Although Oracle strongly recommends AUTOMATIC segment space managementfor permanent, locally managed tablespaces, the default behavior of Oracle 10g is MANUAL.Here is a statement that creates a tablespace with manual segment space management:
CREATE TABLESPACE hist2004apr DATAFILE '/ORADATA/PROD/HIST2004APR.DBF' SIZE 25GEXTENT MANAGEMENT LOCAL AUTOALLOCATESEGMENT SPACE MANAGEMENT MANUAL;
-----OCA.Oracle.10g.Administration.I.Study.Guide
Tuesday, April 3, 2007
Subscribe to:
Posts (Atom)