Archiv

Archiv für die Kategorie ‘Oracle’

Oracle 11: Fehler beim Anlegen einer neuen Instanz

23. Juli 2010

Bekommt man beim Anlegen einer neuen Instanz unter Oracle 11 die Fehlermeldung “Listener is not up or database service is not registered with it. Start the Listener and register database service and run EM Configuration Assistant again.” muss man die Umgebungsvariable ORACLE_HOSTNAME auf localhost setzen und die Instanz neu anlegen

siehe http://download.oracle.com/docs/cd/E11882_01/readmes.112/e11015/toc.htm Bug 8638267

rmuehle Oracle

Case Sensitive Passwords in Oracle Database 11g

23. Juli 2010

Seit Oracle 11 ist der Benutzername und das Passwort case sensitiv. Möchte man dies abschalten kann man es entweder per SQL oder über den Enterprise Manager tun.

Mit SQL:

SQL> SHOW PARAMETER SEC_CASE_SENSITIVE_LOGON

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sec_case_sensitive_logon             boolean     TRUE
SQL> 

SQL> ALTER SYSTEM SET SEC_CASE_SENSITIVE_LOGON = FALSE;

System altered.

SQL>

Im Enterprise Manager auf Server -> Initialisierungsparameter gehen und nach Case suchen (Achtung: auch in beiden Tabs ändern)

rmuehle Oracle

Oracle FAQ

28. April 2010

&-Zeichen und sqlplus
Am Anfang des Scripts set define off; setzen

Reservierte Wörter in Oracle
http://www.camden.rutgers.edu/HELP/Documentation/Oracle/server.815/a42525/apb.htm

Trigger aktivieren / deaktivieren
alter trigger <trigger_name> {disable|enable};

mit SQL Proceduren finden, welchen Invalid sind:

select * from user_objects where status=’INVALID’

siehe auch:

http://blog.ralfmuehle.de/entwicklung/datenbanken/oracle/case-sensitive-passwords-in-oracle-database-11g

http://blog.ralfmuehle.de/entwicklung/datenbanken/oracle/oracle-11-fehler-beim-anlegen-einer-neuen-instanz

rmuehle Oracle

Datenbanklink

5. Februar 2008

Mit folgenden Befehl kann man unter Oracle einen Datenbank-Link anlegen

CREATE DATABASE LINK linkname CONNECT TO user IDENTIFIED BY password USING ‘database’

rmuehle Oracle

Übersicht über Datenbanktabellen

4. Januar 2008

select distinct owner, table_name from dba_tables where owner=’OWNER’

rmuehle Oracle

Open Cursor finden

6. Dezember 2007

Um in Oracle für einen Benutzer offene Cursor finden einfach folgenden SQL absetzen:

SELECT a.inst_id, a.saddr, a.sid, a.user_name, a.address, a.hash_value, a.sql_text FROM sys.gv_$open_cursor a WHERE user_name = ‘USERNAME’

Danach wird in der Spalte SQL_TEXT der SQL angezeigt, welcher nicht geschlossen wurde

rmuehle Oracle

Tabellen analysieren

1. Juli 2007

Ab Oracle 10 sollte zum analyisieren der Tabellen folgender Befehl verwendet werden:
begin dbms_stats.gather_schema_stats(ownname=> ‘NAME’ ; estimate_percent=> 10 ; cascade=> TRUE );
end;

Für SQL-Plus muss das Kommando folgendermaßen lauten:
nexec dbms_stats.gather_schema_stats(ownname=> ‘NAME’ ;estimate_percent=> 10  cascade=> TRUE );

rmuehle Oracle

Verbindung für mat. View wieder herstellen

1. Juli 2007

zuerst muß der Befehl
CREATE MATERIALIZED VIEW LOG ON A_STUELI_KPROF_KSDS WITH ROWID;
abgesetzt werden um die Verbindung wieder herzustellen. Anschließend muß mit dem Befehl
execute dbms_mview.refresh(‘view_name’c');
ein kompletter Refresh der View gemacht werden damit anschließend z.B. wieder der fast-refresh ausgeführt werden kann

rmuehle Oracle

Links zu SQL

1. Juli 2007

links- / rechtsbündig auffüllen

1. Juli 2007

mit lpad bzw. rpad kann eine Ausgabe links- oder rechtsbündig mit einem beliebigen Zeichen aufgefüllt werden
select lpad(feld;länge;zeichen) …

rmuehle Oracle