Oracle

Aus Alexander's Wiki

Neue Version

Export

Tbd

Import

  export ORACLE_SID=<DB_Instance>
  imp system/<password> parfile=<paramter_file>

Dabei könnte die Parameterdatei folgendermaßen aussehen:

  FILE=<dumpfile>.dmp
  FROMUSER=<User1>,<User2>
  TOUSER=<User1_neu>,<User2_neu>
  LOG=<logfile>.log

Alte Version

Export

Per Kommandozeile

  export ORACLE_SID=<DB_Instance>
  expdp system/<password> parfile=<paramter_file>

Dabei könnte die Parameterdatei folgendermaßen aussehen:

  DUMPFILE=<dumpfile>.dmp
  DIRECTORY=dump_dir_ref     # siehe CREATE or REPLACE
  LOGFILE=<logfile>.log
  JOB_NAME=<Jobname_beliebig>
  SCHEMAS=<existierendes Schema in der Datenbank>

Das dump_directory wurde vorher in der Datenbank beschrieben durch:

  CREATE or REPLACE directory dump_dir_ref as '/home/oracle/dumps';

Import

Per Kommandozeile

  create or replace directory dump_dir_ref as '/home/oracle/dumps';
  create user <user> identified by <password>;
  grant all privileges to <user>;


  export ORACLE_SID=<DB_Instance>
  impdp system/<password> parfile=<paramter_file>

Dabei könnte die Parameterdatei folgendermaßen aussehen:

  DUMPFILE=<dumpfile>.dmp
  DIRECTORY=dump_dir_ ref    # siehe CREATE or REPLACE
  LOGFILE=<logfile>.log
  JOB_NAME=<Jobname_beliebig>
  REMAP_TABLESPACE=<alter_Space>:<neuer_Space>
  REMAP_SCHEMA=<altes_Schema>:<neues_Schema>

Drop Tempfile

Platz, den das Tempfile belegt:

SELECT tablespace_name, file_name, bytes FROM dba_temp_files WHERE tablespace_name = 'TEMP';


TABLESPACE_NAME   FILE_NAME                                 BYTES
----------------- -------------------------------- --------------
TEMP              /TESTDB/temp01.dbf               13,107,200,000


ALTER DATABASE TEMPFILE '/TESTDB/temp01.dbf' DROP INCLUDING DATAFILES;
ALTER TABLESPACE temp ADD TEMPFILE '/TESTDB/temp01.dbf' SIZE 512m AUTOEXTEND ON NEXT 250m MAXSIZE UNLIMITED;

ggf. muss man das Temp-File noch per Hand im Dateisystem löschen

Einfach mal merken:

delete from e_tci where rowid in (
WITH nummern AS
  (Select Row_Number() Over (Partition By E.System_Id Order By Hw_Part_No ) N,
    e.rowid as rid
  FROM E_Tci E
  ),
  Zuloeschen AS
  ( SELECT * FROM Nummern WHERE N > 7
  )
  Select Rid From Zuloeschen);
  ALTER USER benutzer ACCOUNT UNLOCK;
  ALTER USER user_name IDENTIFIED BY new_password;