Pular para o conteúdo

Fóruns Banco de dados Oracle table space table space

#93717
vieri
Participante

    Aumente o datafile da tablespace que estourou.E crie a tabela na tablespace que quiser se tiver estourada e o initial extent for grande irá dar erro.

    ex:
    ALTER DATABASE DATAFILE ‘+DGDATA01/deprac/datafile/gkoscf_indx.275.652272815’ RESIZE 9018928K ;

    sintaxe:
    ALTER DATABASE DATAFILE ‘file_name da dba_datafiles’ RESIZE
    ‘bytes/1024 da dba_datafiles’ ;

    de uma olhadas nas views DBA_TABLESPACE E DBA_DATAFILES.

    Essa query lhe da uma visão legal da situação.

    break on report
    compute sum of tbs_size_mb on report
    compute sum of used on report
    compute sum of avail on report

    column tsname format a20 heading ‘Tablespace Name’
    column tbs_size_mb format 999,999 heading ‘Size|(MB)’
    column used format 999,999 heading ‘Used|(MB)’
    column avail format 999,999 heading ‘Free|(MB)’
    column used_visual format a11 heading ‘Used’
    column pct_used format 999 heading ‘% Used’
    column flname format a50 heading ‘Filename’
    column siz format 999,999,990 heading ‘File Size|(MB)’
    column maxsiz format 999,999,990 heading ‘Max Size|(MB)’
    column pctmax format 990 heading ‘Pct|Max’

    set linesize 1000
    set trimspool on
    set pagesize 32000
    set verify off
    set feedback off

    PROMPT
    PROMPT *************************
    PROMPT *** TABLESPACE STATUS ***
    PROMPT *************************

    SELECT df.tablespace_name tsname
    , sum(df.bytes)/1024/1024 tbs_size_mb
    , nvl(sum(e.used_bytes)/1024/1024,0) used
    , nvl(sum(f.free_bytes)/1024/1024,0) avail
    , rpad(‘ ‘||rpad(‘X’,round(sum(e.used_bytes)
    10/sum(df.bytes),0), ‘X’),11,’-‘) used_visual
    , nvl((sum(e.used_bytes)
    100)/sum(df.bytes),0) pct_used
    FROM sys.dba_data_files df
    , (SELECT file_id
    , sum(nvl(bytes,0)) used_bytes
    FROM sys.dba_extents
    GROUP BY file_id) e
    , (SELECT max(bytes) free_bytes
    , file_id
    FROM dba_free_space
    GROUP BY file_id) f
    WHERE e.file_id(+) = df.file_id
    AND df.file_id = f.file_id(+)
    GROUP BY df.tablespace_name
    ORDER BY 6
    /