Oracle Quick Tipps

Anmelden:
Auf der Shell: ’sqlplus‘ eingeben

Bei Nachfrage Benutzernamen und Passwort eingeben.
Für Administrative Tätigkeiten sind vielleicht erweiterte Berechtigungen notwendig.
Hier hilft bei der Eingabe „sys as sysdba“ als Benutzernamen.

Überprüfen des Status der Datenbank:
SQL>select status from v$instance;

Starten der Instanz:
SQL>STARTUP;

Herunterfahren der Instanz:
SQL> SHUTDOWN;

Für weitere Informationen zum Starten und Herunterfahren einer Oracleinstanz könnt Ihr hier weiterlesen:
http://docs.oracle.com/cd/B10501_01/server.920/a96521/start.htm

Tablespace erweitern:
ALTER TABLESPACE TABLESPACE_NAME ADD DATAFILE PFAD_ZUR_NEUEN_DATENDATEI SIZE GRÖSSE_DER_NEUEN_DATENDATEI
z.B:
ALTER TABLESPACE user_ts1 ADD DATAFILE 'c:\oracle\oradata\ora\userts1.dbf' SIZE 10M;

Pfad der Datendateien herausfinden:
SELECT NAME, FILE#, STATUS, CHECKPOINT_CHANGE# "CHECKPOINT" FROM V$DATAFILE;

Größe von Datafiles ermitteln:

select file_name, tablespace_name, bytes/1024/1024 as MB, autoextensible, online_status from dba_data_files order by tablespace_name;

Größe von Tabellen ermitteln (als Benutzer der Zugriff auf die Tabellen hat):
SELECT SEGMENT_NAME, SEGMENT_TYPE, TABLESPACE_NAME, BYTES/1024/1024 AS MB FROM USER_SEGMENTS order by MB desc WHERE SEGMENT_NAME = 'TESTTABLE';

SYS_LOB Elemente identifizieren:

SELECT owner, table_name, column_name
FROM dba_lobs
WHERE segment_name = 'SYSLOB_NAME'

Größe von Tablespaces ermitteln (als sysdba):

select
df.tablespace_name "Tablespace",
totalusedspace "Used MB",
(df.totalspace - tu.totalusedspace) "Free MB",
df.totalspace "Total MB",
round(100 * ( (df.totalspace - tu.totalusedspace)/ df.totalspace)) "Pct. Free"
from
(select tablespace_name,round(sum(bytes) / 1048576) TotalSpace from dba_data_files group by tablespace_name) df,
(select round(sum(bytes)/(1024*1024)) totalusedspace, tablespace_name from dba_segments group by tablespace_name) tu
where df.tablespace_name = tu.tablespace_name ;

Tabellen im bestimmten Tabelspace (&TSNAME) von einem bestimmten Besitzer (&OWNER):


SELECT DISTINCT owner
, segment_name
, segment_type
, tablespace_name
, ROUND((BYTES/1024/1024), 2) AS table_size
FROM dba_segments
WHERE segment_type = 'TABLE'
AND tablespace_name = &TSNAME
AND segment_name not like ('BIN$%')
AND owner = &OWNER
GROUP BY owner
, segment_name
, segment_type
, tablespace_name
, ROUND((BYTES/1024/1024), 2)
ORDER BY table_size DESC

Spaltenbreite bei SQL Queries setzen:

column SPALTEN_NAME format a40

Dieser Beitrag wurde unter Oracle abgelegt und mit verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.