Özet: DBA’lere, veritabanlarında  geçici oluşturulan objelerin tespit edilip silinmesi üzerine bilgi vermek.

 

Veritabanında çalışmalarımız gereği bazen geçici olarak veritabanı objeleri (tablo, index, procedure, function,..vs.) oluşturuyoruz ancak silmeyi unutabiliyoruz. En azından ayda bir kez de olsa bu artık objeleri tespit edip silmeliyiz.

Aşağıdaki sorguya benzer bir sorgulama ile obje isminde geçen SİL, SIL, DENEME, TEST, GECICI, GEÇİCİ, YEDEK, BACKUP, vs. gibi ifadeleri aratarak tespit edebiliriz. Sonrasında bu objelerin gerçekten geçici objeler olduğuna kanaat getirdiğimizde, obje sahiplerine de teyit ettirdikten sonra silebiliriz;

SELECT *
 FROM (SELECT owner,
 object_name,
 object_type,
 created,
 last_ddl_time
 FROM dba_objects
 WHERE owner NOT IN ('DBSNMP',
 'SYSMAN',
 'SYS',
 'SYSTEM',
 'PUBLIC',
 'OUTLN',
 'ORACLE_OCM')
 AND object_name LIKE '%TEST%'
 OR object_name LIKE '%DENEME%'
 OR object_name LIKE '%SIL%'
 OR object_name LIKE '%GECICI%'
 OR object_name like '%BACKUP%'
 OR object_name like '%YEDEK%');

Bu objelerin boyutlarına da bakarak bunları silmemiz durumunda veritabanında toplamda ne kadar yer kazanabileceğimizi de görebiliriz;

 SELECT OWNER,
 SEGMENT_NAME,
 SEGMENT_TYPE,
 ROUND (SUM (BYTES) / 1024 / 1024) AS MB
 FROM DBA_SEGMENTS
 WHERE SEGMENT_NAME IN (
'DENEME',
'SILINECEK_01',
'SILINECEK_02',
'SILINECEK_03',
'SILS',
'MIZ_SIL',
'PKG_TEST',
'TEST',
'PKG_DENEME',
'PKG_DENEME',
'PROC_TEST',
'RAPOR_SIL',
'TEST_TRF',
'SP_TO_TEST',
'IX_BURCU_SIL2',
'SIL_LOG',
'SIL_SQLS',
'IU_TEST_DATA',
'CLOB_TEST',
'PKG_TEST',
'TEST',
'SIL',
'SIL1',
'DENEME_65',
'TESTDRC',
'SIL_TR_LOG_0712',
'ERDINCSIL4',
'IX_ULAS_SIL',
'TR_LIST_SIL',
'SIL2',
'SIL3',
'KK_SIL',
'IX_TEMP_SILL',
'BC_TEST',
'SIL',
'SIL_TRA_LOG',
'SIL_TRAN_TABLE',
'TEST1',
'TEST',
'SIL1',
'SIL_CLNT',
'DOC_QUEUE_06012015_TEST',
'DENEMEDAG',
'DENEME',
'SIL_SLP',
'SIL_WORK',
'TEST_TABLE_COUNTS',
'SIL_ACC',
'SILINECEK_01_MUSTERIOID',
'IX_SIL',
'IX1_TMP003_ACC_SILL',
'OMER_SIL55',
'SIL_TRANS',
'DENEME',
'SIL',
'ISTISNA_SIL',
'TAGS_32K_2_YEDEK',
'OLL_YEDEK',
'T_YEDEK',
'BACKUP',
'DUMMY_BACKUP',
'IMAJBACKUP'
 )
GROUP BY OWNER, SEGMENT_NAME, SEGMENT_TYPE
ORDER BY MB DESC;