Hier kommt die Tabelle USER_TRIGGERS zum Einsatz. In der Tabelle gibt es das Feld TRIGGER_BODY. Dieses kann jedoch nicht mit einem „like“ durchsucht werden, da es sich um ein Long-Feld handelt. Um das zu realisieren, muss man einen kleinen Umweg nehmen.Zuerst erstellt man ein temporäre Tabelle mit dem Inhalt des Tabelle USER_TRIGGERS: CREATE GLOBAL TEMPORARY …
Kategorie: Oracle-Administration
RAM ist durch nichts zu ersetzen außer mit RAM
Feb. 20
Logfiles vergrößern wegen Checkpoint not complete
Für den Fall, dass man die Logfiles unter Oracle vergrößern möchte sollte man so vorgehen. In diesem Beispiel werden sechs neue Logfiles mit jeweils 800 MB größe angelegt und die alten Logfiles gelöscht. Einfaches vergrößern der Logfiles ist (soweit ich weiß) nicht möglich. Natürlich müssen die Verzeichnisse, Gruppen und Namen an die jeweilige Systemumgebung angepasst …
Mai 24
Databasefiles einer Oracle-DB prüfen
Um zu überprüfen, ob die Databasefiles korrupt sind, bietet sich eine Überprüfung mit dem rman an. Dazu geht man folgenderweise vor: rman target /rman target / Recovery Manager: Release 12.1.0.2.0 – Production on Thu May 28 19:55:24 2018 Copyright (c) 1982, 2014, Oracle and/or its affiliates. All rights reserved. connected to target database: Obelix-DB (DBID=4711) …
Juli 02
Speicherverbraucher Top10 der Oracle-Objekte
Top10 der Speicherverbraucher einer Oracle-DB ermitteln: SELECT * FROM ( SELECT * FROM dba_segments ORDER BY bytes DESC) WHERE ROWNUM <= 10SELECT * FROM ( SELECT * FROM dba_segments ORDER BY bytes DESC) WHERE ROWNUM <= 10 TOP10 der größten Lobsegmente mit zugehöriger Tabellen-/Spaltenzuordnung SELECT * FROM ( SELECT l.owner, l.table_name, l.column_name, l.segment_name, l.tablespace_name, l.index_name, …
Apr. 15
Benötigter Platz für Undo-Tablespace berechnen
Um die Größe des Undo-TS zu bestimmen/prüfen, ist folgendes SQL-Statement sehr hilfreich: SELECT d.undo_size/(1024*1024) "ACTUAL UNDO SIZE [MByte]", SUBSTR(e.value,1,25) "UNDO RETENTION [Sec]", (TO_NUMBER(e.value) * TO_NUMBER(f.value) * g.undo_block_per_sec) / (1024*1024) "NEEDED UNDO SIZE [MByte]" FROM ( SELECT SUM(a.bytes) undo_size FROM v$datafile a, v$tablespace b, dba_tablespaces c WHERE c.contents = ‚UNDO‘ AND c.status = ‚ONLINE‘ AND b.name …
Jan. 16
Oracle Tablespace bzw. Databasefiles verkleinern
Um einen Tablespace auf ein Minimum zu reduzieren, kann folgendes SQL-Kommando genutzt werden: SELECT DECODE ( end_block_1, NULL, ‚ALTER TABLESPACE ‚ || TABLESPACE_NAME || ‚ DROP DATAFILE “‘ || FILE_NAME || “‘;‘, ‚ALTER DATABASE DATAFILE “‘ || FILE_NAME || “‘ RESIZE ‚ || CEIL ( (NVL (END_BLOCK_1, 1) * 8192) / 1024 / 1024) || …
Jan. 16
Oracle-Databasefiles unter SAP verkleinern
Databasefiles werden mit Hilfe der brtools verkleinert. Um die maximal mögliche Verkleinerung zu erzielen, kann folgendes SQL-Kommando genutzt werden: SELECT DECODE ( end_block_1, NULL, ‚brspace -c force -f dfalter -a drop -f “‘ || FILE_NAME || ““, ‚brspace -c force -f dfalter -a resize -f “‘ || FILE_NAME || “‘ -s ‚ || CEIL ( …
Nov. 08
Oracle Sequences sichern/wiedereinspielen
Für einen Export (zur Datensicherung) kann es wichtig sein, dass Sequenzes gesichert und nach einem Restore wieder eingespielt werden müssen. Dazu habe ich ein kleines Shell-Script geschrieben: #!/bin/bash sqlplus -SM <<- DOK system/<passwort> set lines 1000; set pages 2000; SET ECHO OFF SET FEEDBACK OFF SET HEADING OFF SET AUTOPRINT OFF SET AUTOTRACE …
Nov. 08
Oracle Datapump
Der alte Export/Import hat ausgedient. Oracle stellt seit einiger Zeit Datapump zur Verfügung. Um Datapump nutzen zu können muss zuvor ein Verzeichnis auf OS-Ebene (sollte klar sein) und ein Oracle Directory erstellt werden (ggf. Berechtigungen dafür erteilen): — Directory erstellen CREATE OR REPLACE DIRECTORY <DumpDirectory> AS ‚<OS-Verzeichnis>‘; — Berechtigungen erteilen GRANT EXECUTE, READ, WRITE …
Okt. 27
Alte Statistiken für Oracle-Tabellen wiederherstellen
Seit Oracle 10g wird bei einer Analyse einer Tabelle die alte Statistik nicht gelöscht, sondern gesichert. Um eine alte Statistik wiederherzustellen gibt es folgendes Kommando: EXEC DBMS_STATS.RESTORE_TABLE_STATS (’SCHEMA‘, ‚TABELLE‘, systimestamp-10);exec DBMS_STATS.RESTORE_TABLE_STATS (‚SCHEMA‘, ‚TABELLE‘, systimestamp-10); bei diesem Kommando wird die Statistik von vor 10 Tagen wieder hergestellt.
- 1
- 2
Neueste Kommentare