Oracle: Unterschied zwischen den Versionen
Aus MeinWiki
								
												
				|  (→Oracle Dump Export/ Import) | |||
| Zeile 51: | Zeile 51: | ||
| == Oracle Dump Export/ Import == | == Oracle Dump Export/ Import == | ||
| + | === Export / Import old === | ||
| + | *Export mit Parameterfile | ||
| + | Parameterfile: | ||
| + |  FILE='/path/dump.dmp' | ||
| + |  LOG='/path/log.log'  | ||
| + |  STATISTICS=none  | ||
| + |  OWNER=(DBUSER1,DBUSER2) | ||
| + | Befehl: | ||
| + |  exp \'/ as sysdba\' PARFILE=/path/parameterfile.dat | ||
| + | === Oracledump === | ||
| *Dump Directory für Import oder Export erstellen | *Dump Directory für Import oder Export erstellen | ||
|      CREATE DIRECTORY dmpdir-name AS 'Verzeichnis'; |      CREATE DIRECTORY dmpdir-name AS 'Verzeichnis'; | ||
| Zeile 57: | Zeile 67: | ||
| *Import-Dump. | *Import-Dump. | ||
|      impdp \'/ as sysdba\' dumpfile=file.dmp logfile=file.log schemas=SCHEMA-NAME directory=dmpdir-name |      impdp \'/ as sysdba\' dumpfile=file.dmp logfile=file.log schemas=SCHEMA-NAME directory=dmpdir-name | ||
| + | |||
| == Archivelog Änderungen anzeigen. == | == Archivelog Änderungen anzeigen. == | ||
|     select t.sid, s.name, t.value, r.username, r.program, r.type, r.module |     select t.sid, s.name, t.value, r.username, r.program, r.type, r.module | ||
Version vom 22. Oktober 2015, 09:24 Uhr
Inhaltsverzeichnis
Berechtigung verwalten
- User Berechtigung auf ein Objekt erteilen. (All, Select, Insert, Update, Delete, Alter, Referenz, Index)
grant "Privileges" on "object" to "user"; grant "Privileges", "Privileges", on "object" to "user";
- User Berechtigung von ein Objekt entfernen. (All, Select, Insert, Update, Delete, Alter, Referenz, Index)
revoke "Privileges" on "object" from "user";
- User zu Gruppe hinzufügen
grant "Role" to "user"; grant "Role", "Role" to "user";
- User von einer Gruppe entfernen
revoke "Role" from "user";
- User Berechtigung zum Ausführen von Funktionen/Prozeduren erteilen
grant execute on "object" to "user";
- User Berechtigung zum Ausführen von Funktionen/Prozeduren erteilen
revoke execute on "object" from "user";
- Passwortablauf der Benutzer über Profile deaktiveren. Wenn nötig das "DEFAULT"-Profile clonen.
alter profile "DEFAULT" limit PASSWORD_REUSE_TIME UNLIMITED; alter profile "DEFAULT" limit PASSWORD_LIFE_TIME UNLIMITED; -- Abfragen -- select username, account_status, expiry_date from dba_user; select * drom dba_profiles order by profile, resource_name;
Tablespace erweitern
- um ein File.
ALTER TABLESPACE "Tablespace" ADD DATAFILE '/opt/oracle/oradata/"SID"/"Tablespace".dbf' SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE 2048M;
- um mehrere Files.
ALTER TABLESPACE "Tablespace" ADD DATAFILE '/opt/oracle/oradata/"SID"/"Tablespace".dbf' SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE 2048M, '/opt/oracle/oradata/"SID"/"Tablespace"..dbf' SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE 2048M, '/opt/oracle/oradata/"SID"/"Tablespace"..dbf' SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE 2048M;
- Autoextend erweitern.
ALTER DATABASE DATAFILE '/opt/oracle/oradata/"SID"/"Tablespace".dbf' AUTOEXTEND ON MAXSIZE 768M
Hilfreiche Befehle
Feldlänge
- Feldlänge die größer ist als abfragen.
   select substr("Column",0,255)  from "Table" where length(Column)> 255;
- Feldlänge ändern, die größer ist als sind. Daten werden abgeschnitten.
   update "Table" set "Column" = substr("Column",0,255) where length("Column")> 255;
Oracle Dump Export/ Import
Export / Import old
- Export mit Parameterfile
Parameterfile:
FILE='/path/dump.dmp' LOG='/path/log.log' STATISTICS=none OWNER=(DBUSER1,DBUSER2)
Befehl:
exp \'/ as sysdba\' PARFILE=/path/parameterfile.dat
Oracledump
- Dump Directory für Import oder Export erstellen
CREATE DIRECTORY dmpdir-name AS 'Verzeichnis';
- Export-Dump.
expdp \'/ as sysdba\' dumpfile=file.dmp logfile=file.log schemas=SCHEMA-NAME directory=dmpdir-name version=10.2.0
- Import-Dump.
impdp \'/ as sysdba\' dumpfile=file.dmp logfile=file.log schemas=SCHEMA-NAME directory=dmpdir-name
Archivelog Änderungen anzeigen.
  select t.sid, s.name, t.value, r.username, r.program, r.type, r.module
  from v$sesstat t 
      join v$statname s on s.statistic# = t.statistic#
      join v$session r on r.sid = t.sid
  where name like '%redo entries%'
  order by t.value desc;
Patchmanagment
OPatch aktualisieren
Bevor neue Patches in die Oracleinstallation eingespielt werden könnne, muss das Patchtool "OPatch" auf den neusten Stand aktualisiert werden.
- Parameter ORACLE_HOME überprüfen.
- Inventory anzeigen (OPatchversion).
$ORACLE_HOME/OPatch/opatch lsinventory
- Patch entpacken. (muss nicht innerhalb der Oracleinstallation sein)
- Verzeichnis $ORACLE_HOME/OPatch löschen.
- Patch in das Verzeichnis kopieren(Berechtigung beachten).
- Inventory anzeigen (OPatchversion).
Patch einspielen
- Patch entpacken.
- In das entpackte Verzeichnis wechseln.
- Anforderung der Patchinstallation überprüfen.
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./
- Datenbank und Listner stoppen.
- Patch einspielen.
$ORACLE_HOME/OPatch/opatch apply
- Installierte Patches anzeigen
- Datenbank starten.
- Scripte der Preinstallation ausführen (Readme-Datei).

