Ajustar Table Spaces Oracle
Tutorial: Gerenciamento de Tablespaces no Oracle Database O que é um Tablespace? Um tablespace é a unidade lógica de armazenamento no Oracle Database. Ele agrupa logicamente segmentos de dados (tabelas, índices, etc.) e é composto fisicamente por um ou mais datafiles no sistema operacional. Todo banco Oracle possui ao menos os seguintes tablespaces padrão: Tablespace Descrição SYSTEM Dicionário de dados e objetos internos do Oracle SYSAUX Componentes auxiliares (AWR, statspack, etc.) TEMP Operações temporárias (sorts, joins, group by) UNDOTBS1 Armazenamento de dados de undo (rollback) USERS Tablespace padrão para objetos de usuários Listando Tablespaces Listar todos os tablespaces do banco SELECT tablespace_name, status, contents, logging, extent_management, segment_space_management FROM dba_tablespaces ORDER BY tablespace_name; Listar os datafiles associados a cada tablespace SELECT tablespace_name, file_name, bytes / 1024 / 1024 AS tamanho_mb, autoextensible, maxbytes / 1024 / 1024 AS tamanho_max_mb FROM dba_data_files ORDER BY tablespace_name, file_name; Listar tempfiles (tablespaces temporários) SELECT tablespace_name, file_name, bytes / 1024 / 1024 AS tamanho_mb, autoextensible FROM dba_temp_files ORDER BY tablespace_name; Verificando Uso e Espaço Livre Ver espaço livre por tablespace SELECT df.tablespace_name AS tablespace, ROUND(df.total_mb, 2) AS total_mb, ROUND(fs.free_mb, 2) AS livre_mb, ROUND(df.total_mb - fs.free_mb, 2) AS usado_mb, ROUND((df.total_mb - fs.free_mb) / df.total_mb * 100, 2) AS pct_usado FROM (SELECT tablespace_name, SUM(bytes) / 1024 / 1024 AS total_mb FROM dba_data_files GROUP BY tablespace_name) df JOIN (SELECT tablespace_name, SUM(bytes) / 1024 / 1024 AS free_mb FROM dba_free_space GROUP BY tablespace_name) fs ON df.tablespace_name = fs.tablespace_name ORDER BY pct_usado DESC; Atenção: Tablespaces com mais de 85% de uso merecem atenção imediata para evitar erros como ORA-01653: unable to extend table. ...