Oracle Database ist das kommerzielle RDBMS von Oracle (ursprünglich 1979 als „Oracle V2“ von Larry Ellison, Bob Miner und Ed Oates; seit 2013 zusätzlich die Cloud-Variante Oracle Autonomous Database). Die Administration läuft über mehrere Kommandozeilen-Tools: SQL*Plus für SQL und Skripte, SQLcl als moderner Java-Nachfolger, RMAN (Recovery Manager) für Backup/Recovery und Data Pump (expdp/impdp) für den logischen Export/Import.

SQL*Plus und SQLcl

sqlplus system/geheim@ORCL
sqlplus -S system/geheim@ORCL @skript.sql   # -S = silent
sql /nolog                                # SQLcl, erst CONNECT
  • CONNECT benutzer/passwort@dienst — Verbindung (SQLcl: sql /nolog, dann CONNECT)
  • DESCRIBE tabelle bzw. DESC — Spaltenstruktur anzeigen
  • SHOW USER, SHOW PARAMETER, SHOW SGA — Konfiguration/Instance anzeigen
  • SET LINESIZE 200, SET PAGESIZE 100, SET SERVEROUTPUT ON — Ausgabeformat (vgl. SQL*Plus-Befehle)
  • SPOOL datei.log / SPOOL OFF — Ausgabe in Datei umleiten
  • PL/SQL-Blöcke mit / abschließen
  • @datei.sql — Skript ausführen, @@ relativ zum aktuellen Skript
  • SQLcl zusätzlich: script, history, info, tnsnames — moderne Ergänzungen

RMAN (Recovery Manager)

rman target /
RMAN> BACKUP DATABASE PLUS ARCHIVELOG;
RMAN> RESTORE DATABASE;
RMAN> RECOVER DATABASE;
RMAN> BACKUP INCREMENTAL LEVEL 1 DATABASE;
RMAN> LIST BACKUP;
  • Physische Backups auf Block-Ebene (Datafiles, Controlfiles, Archived Logs, SPFILE)
  • Inkrementelle Level-0/1-Backups, VALIDATE für Prüfungen, REPORT SCHEMA für die Datenbankstruktur
  • Flashback Recovery Area (db_recovery_file_dest) als Standard-Ziel

Data Pump (expdp/impdp)

expdp system/geheim@ORCL DIRECTORY=DUMP_DIR DUMPFILE=export.dmp FULL=Y
impdp system/geheim@ORCL DIRECTORY=DUMP_DIR DUMPFILE=export.dmp SCHEMAS=hr
expdp system/geheim@ORCL TABLES=hr.employees PARALLEL=4
  • Logischer Export/Import seit Oracle 10g (Nachfolger von exp/imp)
  • Parallele Operationen (PARALLEL), Filter (SCHEMAS, TABLES, INCLUDE/EXCLUDE), CONTENT=METADATA_ONLY
  • Weitere Tools: tnsping (Netz-Test), lsnrctl (Listener), sqlldr (SQL*Loader), adrci (Diagnose), srvctl/crsctl (Grid Infrastructure/Cluster)

Verwandte Befehls-Referenzen: Db2-Befehle, Sybase-Befehle, SQL-Befehle, SQL*Plus-Befehle, PL/SQL-Befehle, T-SQL-Befehle.