Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem...

39
Housekeeping -1

Transcript of Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem...

Page 1: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -1

Page 2: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -2

Page 3: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -3

Page 4: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -4

Page 5: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -5

Page 6: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -6

Page 7: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Stichwörter: Aufräumen im Dateisystem

Housekeeping -7

Page 8: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Stichwörter: Aufräumen im Dateisystem

Housekeeping -8

Page 9: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Das ganze als Datenbank-Job:DECLARE

oracle_home VARCHAR2(256);

diag_path VARCHAR2(256);

minutes NUMBER:=0;

PROCEDURE adrci_job(

job_name IN VARCHAR2,

cmd IN VARCHAR2) IS

BEGIN

dbms_scheduler.create_job(

job_name => job_name,

job_type => 'EXECUTABLE',

job_action => oracle_home||'\adrci.exe ',

start_date => SYSTIMESTAMP,

auto_drop => TRUE,

enabled => TRUE);

COMMIT;

END;

BEGIN

dbms_system.get_env('ORACLE_HOME',oracle_home);

SELECT replace(substr(value,instr(value,'diag')+5),'\','\\') INTO diag_path

FROM v$diag_info WHERE name='ADR Home';

adrci_job('ADRCI_JOB1','exec="set homepath '||diag_path||'; purge -age

'||minutes||' -type trace"'); adrci_job('ADRCI_JOB2','exec="set homepath

'||diag_path||'; purge -age '||minutes||' -type incident"');

-- Derzeit funktioniert alle Werte >0 nicht (20.2.2010)

adrci_job('ADRCI_JOB3','exec="set homepath '||diag_path||'; purge -age

'||minutes||' -type alert"');

END; /

Stichwörter: Aufräumen im Dateisystem

Housekeeping -9

Page 10: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -10

Page 11: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Hinweis:

Ein SELECT liefert die Speicherdauer für die verschiedenen Homes:SELECT adr_home,shortp_policy,longp_policy

FROM V$DIAG_ADR_CONTROL;

Housekeeping -11

Page 12: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

'#######################################################

' ### VBA Routine zum Löschen von Trace-Dateien

' ### Geschrieben von Marco Patzwahl, MuniQSoft GmbH

' ### (c) 2005 und 2006 Version 1.0

' ### Aufrufsyntax: del_trac.vbs <pfad> <tage>

' ### Löscht alle Trace-Dateien im Ordner <pfad>

' ### die aelter als <tage> sind

' ### Beispiel: del_trace.vbs D:\oracle\admin\o10g\udump 21

Dim oFSO

Set oFSO = Createobject("Scripting.FileSystemObject")

Dim oStartFolder

Dim oFolder

Dim oFile

Dim dKillDate

Dim dKillDays

Set Args = WScript.Arguments

sStartFolder=Args(0)

dKillDays=Args(1)

'Const STARTDIR = "D:\oracle\admin\o10g\udump"

'Const KILLDATE = "21"

dKillDate = CDate(Now() - CInt(dKillDays))

Set oStartFolder = oFSO.getFolder(sStartFolder)

For Each oFile In oStartFolder.Files

If oFile.DateCreated < DKillDate and Mid(oFile.name,Len(oFile.name)-

3) = ".trc" Then

oFile.Delete True

End If

Next

Stichwörter: Aufräumen im Dateisystem

Housekeeping -12

Page 13: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Stichwörter: Aufräumen im Dateisystem

Housekeeping -13

Page 14: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

CREATE OR REPLACE TYPE ms_file_typeAS OBJECT (path VARCHAR2(512),file_name VARCHAR2(256),fsize NUMBER,ftype VARCHAR2(32));/

CREATE OR REPLACE TYPE ms_file_tab_type AS TABLE OF ms_file_type;/

CREATE OR REPLACE FUNCTION ms_file_check(f_path IN VARCHAR2)RETURN ms_file_tab_type PIPELINED ISPRAGMA AUTONOMOUS_TRANSACTION;v_file_t ms_file_tab_type:=ms_file_tab_type(ms_file_type(null,null,null,null));ns VARCHAR2(1024);v_dir VARCHAR2(1024):=f_path;v_file UTL_FILE.FILE_TYPE;v_exists BOOLEAN;v_len NUMBER:=1;v_bs NUMBER;v_os_sl CHAR(1):='/';BEGINIF instr(v_dir,v_os_sl)=0 THEN -- Betriebssystem prüfen (UNIX/Win)v_os_sl:='\'; --'Slash wechseln

END IF;DBMS_BACKUP_RESTORE.SEARCHFILES(v_dir, ns); -- Verzeichnis incl Unterordner einlesenFOR r IN ( SELECT fname_krbmsft AS name FROM x$krbmsft) LOOP

-- Temporäres Directory anlegen für utl_fileEXECUTE IMMEDIATE 'CREATE OR REPLACE DIRECTORY ORA_TMP_DIR AS '''|| substr(r.name,1,instr(r.name,v_os_sl,-1)-1)||''''; v_file := UTL_FILE.FOPEN('ORA_TMP_DIR', r.name, 'r');-- Größe der Datei einlesenUTL_FILE.FGETATTR('ORA_TMP_DIR', r.name, v_exists, v_len, v_bs);v_file_t(1).path:=substr(r.name,1,instr(r.name,v_os_sl,-1)-1);v_file_t(1).file_name:=substr(r.name,instr(r.name,v_os_sl,-1)+1);v_file_t(1).fsize:=v_len;IF instr(v_file_t(1).file_name,'.')>0 THENv_file_t(1).ftype:=substr(v_file_t(1).file_name,instr(v_file_t(1).file_name,'.')+1,32);

ELSE v_file_t(1).ftype:=null;

END IF;PIPE ROW (v_file_t(1)) ;UTL_FILE.FCLOSE(v_file);

END LOOP;EXECUTE IMMEDIATE 'DROP DIRECTORY ORA_TMP_DIR';END;/

SELECT * FROM table(ms_file_check('d:\oracle\diag\rdbms\o112\o112\trace'))order by fsize desc

SELECT * FROM table(ms_file_check('d:\oracle\diag\rdbms\o112\o112'))where ftype in ('trc','trm','log')order by fsize desc

Housekeeping -14

Page 15: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -15

Page 16: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -16

Page 17: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Stichwörter: Enterprise Manager

Housekeeping -17

Page 18: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Stichwörter: Enterprise Manager

Housekeeping -18

Page 19: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Stichwörter: Installations-Logs

Housekeeping -19

Page 20: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -20

Page 21: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -21

Page 22: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -22

Page 23: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -23

Page 24: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Stichwörter: Audits

Housekeeping -24

Page 25: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Weiteres Beispiel:

Alle 48 Stunden Purge Job Starten:

DECLARE

att NUMBER := dbms_audit_mgmt.audit_trail_all;

pje NUMBER := dbms_audit_mgmt.purge_job_enable;

BEGIN

dbms_audit_mgmt.create_purge_job(

audit_trail_type=>att,

audit_trail_purge_interval=>48,

audit_trail_purge_name=>'AUDIT_PURGE',

use_last_arch_timestamp => TRUE);

--dbms_audit_mgmt.set_purge_job_interval('AUDIT_PURGE', 7*24);

dbms_audit_mgmt.set_purge_job_status('AUDIT_PURGE', pje);

dbms_audit_mgmt.drop_purge_job('AUDIT_PURGE');

END;

/

Stichwörter: Audits

Housekeeping -25

Page 26: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -26

Page 27: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -27

Page 28: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Stichwörter: Scheduler Logs

Housekeeping -28

Page 29: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Stichwörter: Scheduler Logs

Housekeeping -29

Page 30: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Hinweis: Sie können die Speicherdauer wieder kontrollieren durch:SELECT retention

FROM dba_hist_wr_control;

Housekeeping -30

Page 31: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Hinweis:

Sie können auch die Lebensdauer des Tasks manuell einstellen (hier 3 Tage):

BEGIN

DBMS_ADVISOR.SET_TASK_PARAMETER (

task_name =>'MY_TASK',

parameter =>' DAYS_TO_EXPIRE',

value=>3);

END;

/

Housekeeping -31

Page 32: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -32

Page 33: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

REM Statspack komplett aufräumen (Löschen)

DECLARE

t_n VARCHAR2(30);

BEGIN

FOR r IN (select table_name FROM dba_tables

WHERE owner='PERFSTAT'

AND table_name NOT IN

('STATS$IDLE_EVENT','STATS$LEVEL_DESCRIPTION','STATS$STATSPACK_PARA

METER',

'STATS$DATABASE_INSTANCE','STATS$SNAPSHOT','STATS$TEMP_SQLSTATS'))

LOOP

BEGIN

t_n:=r.table_name;

EXECUTE IMMEDIATE 'TRUNCATE TABLE perfstat.'||t_n||'

DROP STORAGE';

EXECUTE IMMEDIATE 'ALTER TABLE perfstat.'||t_n||' ENABLE

ROW MOVEMENT';

EXECUTE IMMEDIATE 'ALTER TABLE perfstat.'||t_n||' SHRINK

SPACE';

EXCEPTION WHEN OTHERS THEN

dbms_output.put_line(' Fehler bei Reorg in

Tabelle:'||t_n||':'||sqlerrm);

END;

END LOOP;

DELETE FROM STATS$SNAPSHOT;

DELETE FROM STATS$DATABASE_INSTANCE;

COMMIT;

END;

Stichwörter: Statspack

Housekeeping -33

Page 34: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Hinweis:

Sie können natürlich auch Snapshots aus einem bestimmten Bereich löschen:

Snapshots manuell löschen. Hier im Beispiel von 22-32

BEGIN

DBMS_WORKLOAD_REPOSITORY.drop_snapshot_range (

low_snap_id => 22,

high_snap_id => 32);

END;

/

Stichwörter: Snapshots

Housekeeping -34

Page 35: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Beispiel-Select:SELECT distinct

ref_owner_1||'.'||ref_name_1,ref_type_1,ref_owner_2||'.'||nam

e_2||'('||type_1||')',ref_name_2,ref_type_2 FROM (

select owner owner_1,name name_1,type type_1,referenced_owner

ref_owner_1,referenced_name ref_name_1,referenced_type

ref_type_1

from dba_dependencies

where owner='SCOTT'

and referenced_type='TABLE'

and type='TRIGGER' order by 1,2) t1

FULL OUTER JOIN

(

select owner owner_2,name name_2,type type_2,referenced_owner

ref_owner_2,referenced_name ref_name_2,referenced_type

ref_type_2

from dba_dependencies

where owner='SCOTT'

and referenced_type='TABLE'

and type='TRIGGER' order by 1,2) t2

ON (owner_1=owner_2 and name_1=name_2)

where ref_owner_1||ref_name_1<>ref_owner_2||ref_name_2

order by 1,2;

Housekeeping -35

Page 36: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -36

Page 37: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -37

Page 38: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -38

Page 39: Housekeeping -1 - Muniqsoft Consulting · Housekeeping -12. Stichwörter: Aufräumen im Dateisystem Housekeeping -13. CREATE OR REPLACE TYPE ms_file_type AS OBJECT (path VARCHAR2(512),file_name

Housekeeping -39