Oracle Scripts de Almacenamiento, verificación de modo de almacenamiento, Tipo, configuracion, espacio en base, tablespace, objetos, indice de crecimiento, fragmentación, archivos, directorios, y más
Cuando tenemos que saber cuanto espacio reservar para una tabla de la cual tenemos la ddl o la tabla creada.
select
(sum(data_lenght)*&cantidad de registros* 1.2*1.05)/1024/1024 "Espacio a reservar en Mb"
from dba_tab_columns
where owner = &owner
and table_name = &table_name;
Muestra espacio usado y libre en tablespaces de toda la base.
Los ordena por espacio usado.
Lleva como parametro el nombre de tablespace y acepta %
set pages 999
col tablespace_name format a40
col "size MB" format 99999999
col "free MB" format 99999999
col "% Used" format 99
select tbs_used.tablespace_name, ceil(tbs_used.used_mb) "size MB"
Este script ".sql" permite ver que objetos no podrán extenderse en su tablespace (considera tanto los tablespaces dictionary como local managed).
set lines 500
set pages 1000
set trimout on
set trimspool on
select x.tablespace_name, x.owner, x.segment_type, x.segment_name, (x.next_extent-x.maximo_libre)/&M deficit
from (
Este script ".sql" permite ver es espacio libre, el ocupado por TBL, el espacio p/filesystem y, además, calcula cuánto espacio es necesario agregar para bajar al umbral especificado. Solicita 2 datos: tablespace_name (tbl) y umbral de ocupación (pct).
set cmdsep on
set cmdsep !
set concat on
set escape off
set feedback on
set feedback 1
set linesize 500
set long 32000
set longc 32000
set pagesize 1000
set recsep off
set serveroutput on size 1000000
set show off
set tab off
Para saber cuanto espacio ocupa cada tabla de la base de datos en disco
col owner format a30
col tabla format a30
col mb format 999999.99
col tablespace format a30
set linesize 200
select owner, segment_name tabla, sum(bytes)/1024/1024 mb, tablespace_name tablespace
from dba_segments
Muestra espacio usado y libre en tablespaces de toda la base.
Los ordena por espacio usado.
Lleva como parametro el nombre de tablespace y acepta %
set pages 999
col tablespace_name format a40
col "size MB" format 99999999
col "free MB" format 99999999
col "% Used" format 99
select tbs_used.tablespace_name, ceil(tbs_used.used_mb) "size MB"
Busca datafiles pertenecientes a un tablespaces indicado
prompt
prompt Igresar el tablespace...
prompt
set linesize 130
col tablespace format a30
col file_name format a70
select tablespace_name tablespace, file_name, bytes/1024/1024 Mb
from dba_data_files