Oracle: Unterschied zwischen den Versionen
| Zeile 9: | Zeile 9: | ||
sqlplus / as sysdba | sqlplus / as sysdba | ||
<syntaxhighlight lang="sql" line="1"> | <syntaxhighlight lang="sql" line="1"> | ||
DELETE FROM SAPSR3.USR02 | DELETE FROM SAPSR3.USR02 WHERE MANDT = '000' AND BNAME = 'SAP*'; | ||
WHERE MANDT = ' | |||
AND BNAME = 'SAP*'; | |||
COMMIT; | COMMIT; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==== Tablespaces und Files anzeigen lassen ==== | ==== Tablespaces und Files anzeigen lassen ==== | ||
<syntaxhighlight lang="sql" line="1"> | <syntaxhighlight lang="sql" line="1"> | ||
Aktuelle Version vom 1. November 2025, 20:09 Uhr
Beschreibung
Download
Installation
Konfiguration
SAP* löschen
sqlplus / as sysdba
DELETE FROM SAPSR3.USR02 WHERE MANDT = '000' AND BNAME = 'SAP*';
COMMIT;Tablespaces und Files anzeigen lassen
SELECT file_name, bytes/1024/1024 AS size_mb FROM dba_data_files WHERE tablespace_name = 'PSAPSR3' ORDER BY file_name;Tablespace anlegen
CREATE TABLESPACE PSAPSR3740X DATAFILE '/oracle/PZ0/sapdata1/sr3740x_1' SIZE 10M;
Erweiterung ohne ASM
Tablespace-Belegung ermitteln
Belegung aller Tablespaces in Prozent ermitteln:
with MBYTES as(
select tablespace_name,
SUM(bytes)/1024/1024 as Akt,
SUM(decode(maxbytes,0,bytes,maxbytes))/1024/1024 as ZMax
from dba_data_files
group by tablespace_name
),
MFREE as(
select tablespace_name,
SUM(bytes)/1024/1024 as Free
from dba_free_space
group by tablespace_name
)
select MBYTES.tablespace_name,
ROUND((AKT-FREE)/ZMAX*100,2) as BelegtProz
from MBYTES, MFREE
where MFREE.tablespace_name = MBYTES.tablespace_name
order by ROUND((AKT-FREE)/ZMAX*100,2) desc;Beispiel-Ergebnis:
TABLESPACE_NAME BELEGTPROZ ------------------------------ ---------- PSAPSR3 89.43 PSAPSR3702 33.32 PSAPSR3USR 20.26 PSAPUNDO 6.55 SYSTEM 5.05 SYSAUX 4.05
Verfügbaren Speicherplatz ermitteln
Im Betriebssystem ermitteln, in welchem data-Laufwerk am meisten Platz für die Erweiterung vorhanden ist:
df -h | grep oracleBeispiel-Ausgabe:
p11data01/data01 98G 68G 30G 70% /oracle/P11/data01 p11data02/data02 215G 172G 43G 81% /oracle/P11/data02 p11data03/data03 98G 51G 47G 52% /oracle/P11/data03
An der Datenbank anmelden
sqlplus / as sysdbaAusgabe formatieren
Für eine übersichtlichere Darstellung:
set pages 9999
set lin 180
col file_name for a60Datafiles anzeigen
Datafiles zum Tablespace anzeigen:
select file_name, bytes/1024/1024
from dba_data_files
where tablespace_name = '<TABLESPACE>';Beispiel-Ausgabe:
FILE_NAME BYTES/1024/1024 ------------------------------------------------------------ --------------- /oracle/P11/data01/beispiel_data_01.dbf 20480 /oracle/P11/data02/beispiel_data_02.dbf 20480 /oracle/P11/data03/beispiel_data_03.dbf 30720 /oracle/P11/data02/beispiel_data_04.dbf 20480
Datafile erweitern
Existierendes Datafile vergrößern
Wenn ein Datafile erweitert werden kann:
alter database datafile '/oracle/P11/data02/beispiel_04.dbf' resize 30G;Überwachung auf OS-Ebene:
du -h <FILENAME>Kontrolle:
select file_name, bytes/1024/1024
from dba_data_files
where tablespace_name = '<TABLESPACE>';Beispiel nach Erweiterung:
FILE_NAME BYTES/1024/1024 ------------------------------------------------------------ --------------- /oracle/P11/data01/beispiel_data_01.dbf 20480 /oracle/P11/data02/beispiel_data_02.dbf 20480 /oracle/P11/data03/beispiel_data_03.dbf 30720 /oracle/P11/data02/beispiel_data_04.dbf 30720
Neues Datafile anlegen
Falls kein existierendes Datafile erweitert werden kann:
alter tablespace BEISPIEL add datafile '/oracle/P11/data03/beispiel.dbf' size 100M;Überwachung auf OS-Ebene:
du -h <FILENAME>Kontrolle:
select file_name, bytes/1024/1024
from dba_data_files
where tablespace_name = '<TABLESPACE>';Beispiel nach Anlegen:
FILE_NAME BYTES/1024/1024 ------------------------------------------------------------ --------------- /oracle/P11/data01/beispiel_data_01.dbf 20480 /oracle/P11/data02/beispiel_data_02.dbf 20480 /oracle/P11/data03/beispiel_data_03.dbf 30720 /oracle/P11/data02/beispiel_data_04.dbf 20480 /oracle/P11/data03/beispiel_data_05.dbf 100
Tempfile erweitern
Tempfiles anzeigen:
select file_name, bytes/1024/1024
from dba_temp_files;Tempfile hinzufügen:
alter tablespace <TABLESPACE> add tempfile '+DATA' size 25G;Tablespace mit neuer Datei erweitern
alter tablespace PSAPSR3740X add datafile '/oracle/PZ0/sapdata1/sr3740x_2' size 30G;
Backupmodus einstellen
Wird benötigt um ggf. die sapdata online kopieren zu können
SQL> ALTER DATABASE BEGIN BACKUP;
To find if database or any tablespace is in backup mode, the status in V$BACKUP is ACTIVE
SQL> select * from v$backup;
SQL> ALTER DATABASE END BACKUP;SYSTEM Passwort ändern
sqlplus / as sysdba ALTER USER system IDENTIFIED BY "<PASSWORT>";
PSAPUNDO - Undo Tablespace
SELECT file_name,
tablespace_name,
autoextensible,
bytes/1024/1024 AS size_mb,
maxbytes/1024/1024 AS max_size_mb
FROM dba_data_files
WHERE tablespace_name = 'PSAPUNDO';
ALTER DATABASE DATAFILE '/oracle/R08/sapdata1/undo_1/undo.data1' AUTOEXTEND ON NEXT 100M MAXSIZE 20G;Update
Test
Freien Speicherplatz anzeigen
select a.tablespace_name, a.free_bytes*100/b.total_bytes as "Free(%)"
from
(select tablespace_name, sum(bytes) free_bytes
from dba_free_space
group by tablespace_name) a,
(select tablespace_name, sum(bytes) total_bytes
from dba_data_files
group by tablespace_name) b
where a.tablespace_name=b.tablespace_name;