Problem beim Zugriff auf eine Oracle-DB

Status
Nicht offen für weitere Antworten.

d.ausstroit

Bekanntes Mitglied
Hai, ich versuche gerade eine DB-Verbindung zu einer Oracle 8er DB aufzubauen.

Hier der Code für das Öffnen der DB:

Code:
        try {
            db.setConnection(new ConnectionDescriptor(
                    "jdbc:oracle:thin:@192.168.0.2:1521:hw2", bed, pwd, false,
                    "oracle.jdbc.driver.OracleDriver"));
            db.openConnection();
        }
        catch (Exception err) {
            err.printStackTrace();
        }

Folgende Fehlermeldung beim Zugriff auf eine 8er wird ausgegeben:

Siehe Fehlercode com.borland.dx.dataset.DataSetException: BASE+66

com.borland.dx.dataset.DataSetException: ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux Error: 2: No such file or directory


at com.borland.dx.dataset.DataSetException.a(Unknown Source)
at com.borland.dx.dataset.DataSetException.throwException(Unknown Source)
at com.borland.dx.dataset.DataSetException.SQLException(Unknown Source)
at com.borland.dx.sql.dataset.Database.openConnection(Unknown Source)
at TC_Dialogpflege.TC_Dialogpflege.dbopen(TC_Dialogpflege.java:131)
at TC_Dialogpflege.TC_Dialogpflege.init(TC_Dialogpflege.java:81)
at com.borland.jbuilder.runtime.applet.AppletTestbed.startApplet(Unknown Source)
at com.borland.jbuilder.runtime.applet.AppletTestbed.main(Unknown Source)
Exception-Kette:
java.sql.SQLException: ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux Error: 2: No such file or directory
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:283)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278)
at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOsesskey(T4CTTIoauthenticate.java:288)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:357)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
at java.sql.DriverManager.getConnection(DriverManager.java:525)
at java.sql.DriverManager.getConnection(DriverManager.java:171)
at com.borland.dx.sql.dataset.Database.openConnection(Unknown Source)
at TC_Dialogpflege.TC_Dialogpflege.dbopen(TC_Dialogpflege.java:131)
at TC_Dialogpflege.TC_Dialogpflege.init(TC_Dialogpflege.java:81)
at com.borland.jbuilder.runtime.applet.AppletTestbed.startApplet(Unknown Source)
at com.borland.jbuilder.runtime.applet.AppletTestbed.main(Unknown Source)

usw.....

Der Zugriff auf eine andere DB (9er oder 10er) funktioniert ohne Probleme. Ich bin mir sicher, dass der Zugriff auf die 8er schon einmal funktioniert hat. Allerdings hat der Rechner, auf dem die 8er liegt, eine andere IP bekommen. Kann das damit zusammen hängen.

Bin echt am verzweifeln. :cry: Ich hoffe mit kann jemand helfen.

Dirk
 

thE_29

Top Contributor
Wenn er ne andere IP hat, hast du die IP auch geändert beim Zugriff??

Der 8er Zugriff läuft gleich ab wie bei der 9er oder 10er!


Laut der Fehlermeldung, läuft auf dem PC keine Instanz die so heißt!
 

d.ausstroit

Bekanntes Mitglied
Ja, die 192.168.0.3 ist schon die neue. Du meinst doch die IP in dem Cennction-String, oder?

Die DB läuft auf dem Rechner. Ich komme ja mit anderen DB-Tools über die IP auf die DB und kann dort arbeiten. Es kann doch nicht sein, dass sich die IP irgenwo gemerkt wird. Ne, dass glaube ich nicht.
 

thE_29

Top Contributor
Probier mal normal "einloggen"

Also ohne diesen ConnectionDescripter!

Zuerst class.forName("oracle...")

Und dann mit DriverManager die conn aufbauen!
 

thE_29

Top Contributor
Der Listener ist richtig konfiguriert?

Andere Programme (was sind andere Programme?) können drauf zugreifen?

Geht aquadatastudio?
 

d.ausstroit

Bekanntes Mitglied
Was bitte ist "aquadatastudio" :shock:

Mit anderen Programmen meine ich mit C++Builder selbstgeschriebene Dialogprogramme und auch DB-Abfrage Tools (z.B. Toad) oder auch direkt mit SQLPlus von Oracle. Also, im Ernst. Die DB ist gestartet und läuft.

Was meinst Du mit Listener richtig konfiguriert. Kann man da einstellen, ob über einen Java-Oracle-Treiber verbunden werden darf. Sag schon. Wie muss ich den konfigurieren ???:L

Nachträglich hinzugefügt:
Habe schon nach aqua data studio gegoogelt. Ist auch ein DB-Abfrage-Tool. Würd sicher auch funktionieren.
 

thE_29

Top Contributor
Naja, verallgemeinere das nicht!

Zwischen Oracle8 verbinden und Oracle 9/10 verbinden liegen Welten!

Schau mal ob Aquadatastudio connecten kann!

Ansonsten ist dein Listener (Java greift auf einen Listener zu) falsch konfiguriert, bzw läuft nicht!

sqlplus geht nicht über Listener, das geht direkt drauf!


Das Ding heißt unter Linux: tnslsnr

Weiß ja nicht ob du Linux oder Windows hast!

Wenn das nicht läuft, bzw konfiguriert ist, kannst du das ganze knicken!
 

d.ausstroit

Bekanntes Mitglied
Die DB ist unter Linux installiert. Kannst Du mir vielleicht sagen, wie und womit ich den Listener konfiguriere.

Vielen Dank für Deine bisherige Hilfe.
 

d.ausstroit

Bekanntes Mitglied
So, ich habe nun aqua data studio installiert. Du hattest recht. Das Ding läuft auch nicht. Ist schon komisch. Greift das anders auf eine DB zu? Fragen über Fragen.
 

thE_29

Top Contributor
Es gibt irgendwo eine listener.ora

In der steht wo das log Verzeichnis ist, etc (dort gibts dann eine listener.log).

In dieser listener.ora steht auch der SID Name und Port falls ein anderer!

Was ganz wichtig ist, dort drinnen ist auch ein HOST Angabe!

Dh, wenn dort drinnen ein alter Host Eintrag oder IP steht, geht der auch auf die und net auf deine neu umgestellte!!

Also mit find nach listener.ora suchen!

und gucken ob der tnslsnr (ps ax | grep tnslsnr) läuft!

Und was in der log Datei steht!
 

d.ausstroit

Bekanntes Mitglied
Hai, da bin ich wieder. Leider ist mein Problem noch nicht gelöst. Die Einträge in der listener.ora und in der tnsnames.ora habe ich geprüft. Die sind ok. Ich verstehe das einfach nicht. Muss man denn noch irgenwas beachten, wenn man mit Java auf eine Oracle8i-Datenbank zugreifen will, die unter Linux installiert ist. Das unverständliche ist halt, dass Zugriffe über andere Programme durchgeführt werden können. Nur über Java und mit "aqua data studio" nicht. Ist doch eigenartig oder :?:

Brauche dringend Unterstützung :cry:

Dirk
 

thE_29

Top Contributor
Naja, über den Listener greifen nur Java Programm zu!

Die meisten C programme gehen über unicODBC oder über openlink!


Was steht den in der listener.log?
 

d.ausstroit

Bekanntes Mitglied
Ich meine die C-Programme greifen über Oracle-Net auch auf den Listener zu. Wenn ich die Einstellungen in der listener.ora ändere, funktioniert der Zugriff mit C-Programmen nicht mehr. Auch DB-Admin-Programme können die DB dann nicht mehr öffnen. Also ist der Listener auch für die Programme da.

Ich habe ja noch nicht viel mit dem DB-Zugriff mit Java programmiert. Aber ich meine gelesen zu haben, dass der Zugriff nicht über den Listener erfolgt. Da kann ich mich aber auch täuschen.

Hier kommt der Inhalt der listener.ora:

Code:
# LISTENER.ORA Network Configuration File: /oracle/app/oracle/product/8.1.7/netw
ork/admin/listener.ora
# Generated by Oracle configuration tools.

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = HW3L.local)(PORT = 1521))
      )
    )
  ) 

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = HW3)
      (ORACLE_HOME = /oracle/app/oracle/product/8.1.7)
    )
    (SID_DESC =
      (SID_NAME = HW1)
      (ORACLE_HOME = /oracle/app/oracle/product/8.1.7)
    )
  )

Gruß

Dirk
 

thE_29

Top Contributor
Wieso hatn dein Listnere 2 Zugriffsnamen?


Einmal HW3 und einmal HW1!



Und du sagst da:

db.setConnection(new ConnectionDescriptor(
"jdbc:eek:racle:thin:mad:192.168.0.2:1521:hw2", bed, pwd, false,
"oracle.jdbc.driver.OracleDriver"));


hw2!

Nur gibts kein hw2!

Probier mal HW3 oder HW1 (Großschreibung beachten)
 

d.ausstroit

Bekanntes Mitglied
Oh, sorry mein Fehler :roll:.

Es muss natürlich heißen:

db.setConnection(new ConnectionDescriptor(
"jdbc:eek:racle:thin:mad:192.168.0.3:1521:hw1", bed, pwd, false,
"oracle.jdbc.driver.OracleDriver"));

Zwei Zugriffsnamen, weil 2 DB-User eingerichtet sind.
 

thE_29

Top Contributor
Geht es den wenn du ein großes HW1 dort hinmachst?


db.setConnection(new ConnectionDescriptor(
"jdbc:eek:racle:thin:mad:192.168.0.3:1521:HW1", bed, pwd, false,
"oracle.jdbc.driver.OracleDriver"));
 

thE_29

Top Contributor
Auch mit AQUAstudio nicht?

Kommt die gleiche Exception?


Dann ist HW3.local auch deine lokale Maschine?


Was steht in der listener.log im $ORACLE_OME/network/log Verzeichnis?
 

d.ausstroit

Bekanntes Mitglied
Auch mit AQUAstudio geht's nicht. Und richtig, die DB liegt auf der HW3L.

Ich poste mal drei Einträge aus der listener.log.

Dieser Eintrag entsteht durch eine korrekte Verbindung (Durch das Programm Toad)
05-OKT-2006 11:15:05 * (CONNECT_DATA=(SERVICE_NAME=hw1)(CID=(PROGRAM=C:\Programme\Quest Software\Toad for Oracle\TOAD.exe)(HOST=PC-DIRK)(USER=wiederm))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.206)(PORT=2996)) * establish * hw1 * 0

Dieser durch den Zugriff eines C++-Programms, der klappt auch
05-OKT-2006 11:19:00 * (CONNECT_DATA=(SERVICE_NAME=hw1)(CID=(PROGRAM=F:\programmierung\Kunden_Projekte\schober\TC_ACS\Dialogpflege\TC_Dialogpflege_DEU.exe)(HOST=PC-DIRK)(USER=wiederm))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.206)(PORT=3001)) * establish * hw1 * 0

Dieser durch den Zugriff des Java-Applets, der nicht klappt
05-OKT-2006 11:17:11 * (CONNECT_DATA=(SID=HW1)(CID=(PROGRAM=)(HOST=__jdbc__)(USER=oracle))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.206)(PORT=2999)) * establish * HW1 * 0

Der Unterschied ist einmal mit SID (klappt nicht) und SERVICE_NAME (klappt).
 

thE_29

Top Contributor
Nachtrag: dieses establish kommt auch dann, wenn man einen falschen Benutzernamen/Passwort hat!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Problem beim Zugriff SQL 2000 Datenbankprogrammierung 2
N HSQLDB Problem beim Treiberladen im Jar Datenbankprogrammierung 6
M Problem beim Erstellen einer Query Datenbankprogrammierung 7
S Problem beim Anlegen einer Tabelle Datenbankprogrammierung 5
T Problem beim schreiben von daten Datenbankprogrammierung 4
D MySQL Problem beim einfügen von Double-Zahlen Datenbankprogrammierung 4
cosmic Problem beim Update einer Oracle DB Datenbankprogrammierung 7
T Problem beim Update in die Access DB Datenbankprogrammierung 9
M Problem beim Importieren einer Datenbank Datenbankprogrammierung 3
A Problem beim Laden des Treibers Datenbankprogrammierung 5
G Problem beim einfügen in der Datenbank Datenbankprogrammierung 4
G Problem beim Schreiben eines Dateipfads in MySQL-DB Datenbankprogrammierung 9
M "SQL - Apache" Problem beim laden des Applets Datenbankprogrammierung 4
A Datenbankzugriff per Applet - Problem beim Treiber laden Datenbankprogrammierung 6
E Problem beim laden des JDBC Driver bzw der Database Datenbankprogrammierung 8
T Problem beim Update vom Resultset + Firebird Datenbankprogrammierung 2
M Problem beim erstellen der DB Datenbankprogrammierung 3
K Problem beim Einlesen von Werten aus einem Textfeld Datenbankprogrammierung 11
E Problem beim Datenbank-Design (relational) Datenbankprogrammierung 10
J PC-Start Problem JDBC Connection Datenbankprogrammierung 10
C Problem mit Apache Poi Datenbankprogrammierung 6
N HSQLDB Problem mit Eclipselink in runnable Jar Datenbankprogrammierung 10
P GroupLayout-Problem Datenbankprogrammierung 12
F XAMPP max connections problem Datenbankprogrammierung 6
C MySQL Problem in phpMyAdmin Oberfläche Datenbankprogrammierung 5
C Problem with INSERT.............ON DUPLICATE KEY Datenbankprogrammierung 3
C Problem with insertion in database. Datenbankprogrammierung 7
F Problem mit Hibernate c3p0 Datenbankprogrammierung 2
W Problem mit Insert in zwei Tabellen Datenbankprogrammierung 8
G MySQL Problem mit MySQL verbindung Datenbankprogrammierung 8
A kleines Problem Datenbankprogrammierung 6
T Problem mit Datenbankverbindung Datenbankprogrammierung 22
V Derby/JavaDB updateRow Problem Datenbankprogrammierung 0
G MySQL Java Problem: Nullpointer Exception obwohl Daten vorhanden sind? Datenbankprogrammierung 2
Nuiton EmbeddedDriver Problem Datenbankprogrammierung 6
A MongoDB Passwort Problem Datenbankprogrammierung 0
O HSQLDB Hibernate Criteria Problem Datenbankprogrammierung 3
F MySQL JDBC Problem Datenbankprogrammierung 5
Anfänger2011 Datenbankstruktur/aufbau (theoretisches Problem) Datenbankprogrammierung 5
M Derby/JavaDB Drop Database problem Datenbankprogrammierung 3
M Derby/JavaDB NOT LIKE problem Datenbankprogrammierung 19
N HSQLDB Problem mit EntityManager Datenbankprogrammierung 7
B MySQL JPAContainer Problem Datenbankprogrammierung 4
K Eclipse Apache Derby Treiber Problem Datenbankprogrammierung 4
C Problem oder Denkfehler mit H2-Database Datenbankprogrammierung 3
E Wie kann man das Problem mit der BLOB-Spalte lösen? Datenbankprogrammierung 1
M Problem mit jcouchdb und CouchDB - UTF8 kein gültiger Zeichentyp Datenbankprogrammierung 4
T MySQL Problem mit Datenbankanbindung Datenbankprogrammierung 4
M INSERT-Problem = integrity constraint violation: foreign key no parent Datenbankprogrammierung 5
P SQL Query Problem Datenbankprogrammierung 14
A MySQL Problem bei Tabelle ausgeben Datenbankprogrammierung 3
Q MySQL JDBC-Treiber Problem Datenbankprogrammierung 2
B SQLite Problem bei Planung der Datenbank [Jeopardy] Datenbankprogrammierung 3
A Problem mit dem Import und Export von Bildern Datenbankprogrammierung 4
P Oracle Problem mit Umlauten Datenbankprogrammierung 9
A Problem mit Create-Statement Datenbankprogrammierung 9
D Problem mit COLUMN_IDENTIFIERS Datenbankprogrammierung 8
Bluedaishi MySQL Abfrage Problem :-) Datenbankprogrammierung 21
M Problem mit mehreren Datasourcen Datenbankprogrammierung 3
R Resultset.last() Problem Datenbankprogrammierung 12
M Problem GroupBy Datenbankprogrammierung 3
S CURRENT_DATE problem Datenbankprogrammierung 2
M Problem mt JPA Id-Generators Datenbankprogrammierung 18
Gossi Oracle Problem mit group by... Datenbankprogrammierung 22
M MySQL SQL Abfrage Problem Datenbankprogrammierung 6
R MS-SQL Express Login-Problem Datenbankprogrammierung 8
P Lazy-Fetchig und Session-Problem mit Hibernate Datenbankprogrammierung 4
C Hibernate ManyToMany zusammengesetzter Primärschlüssel, problem. Datenbankprogrammierung 3
M Problem mit HQL Syntax Datenbankprogrammierung 5
K Db4o Delete Problem Datenbankprogrammierung 11
Mike90 Deadlock/Lock Problem Datenbankprogrammierung 4
T Access 32bit on Win7 64Bit ODBC Problem Datenbankprogrammierung 1
C unverständliches DB Problem (Es ist kein temporärer Systemtabellenbereich mit einer ausreichenden..) Datenbankprogrammierung 5
S ODBC Treiber Problem/oder unvermögen Datenbankprogrammierung 18
J Problem bei Boolean in PreparedStatement Datenbankprogrammierung 5
C MySQL Problem mit UPDATE Abfrage Datenbankprogrammierung 13
C Problem mit SQL-Abfrage Datenbankprogrammierung 5
K Problem mit Datenbankverbindung via Eclipse Datenbankprogrammierung 2
A Problem mit Eintragen von Daten in eine Datenbank mittels DAO Datenbankprogrammierung 4
S Oracle Problem mit PreparedStatement.setString(1,"str") Datenbankprogrammierung 10
B MySQL Problem mit Datenbankanbindung an MySQL Datenbankprogrammierung 2
N Problem bei Erstellung eines Index Datenbankprogrammierung 12
C Hibernate Property-Problem Datenbankprogrammierung 5
J MyBatis - Update Problem Datenbankprogrammierung 4
S JPA: Problem mit Update von Daten Datenbankprogrammierung 7
c_sidi90 Hibernate Problem Table doesnt excist Datenbankprogrammierung 8
M Problem mit JPA - OneToMany-Relation Datenbankprogrammierung 3
I Hibernate: Composite Foreign Key Problem Datenbankprogrammierung 14
S JPA OptimisticLocking Problem Datenbankprogrammierung 11
I Derby/JavaDB Problem mit Befüllung von Tabelle Datenbankprogrammierung 7
JavaKaffee Derby/JavaDB Quartz-WebAnwendung - Connection/Treiber Problem Datenbankprogrammierung 47
I Problem mit ResultSet Datenbankprogrammierung 2
L Excel in MySQL importieren Problem Datenbankprogrammierung 5
R MS Access mit Java Problem mit Update Statment Datenbankprogrammierung 13
S MySQL Problem mit SELECT bzw encoding Datenbankprogrammierung 4
M MySQL getConnection - Verbindung Problem Datenbankprogrammierung 2
K Hibernate + MySQL Problem... Datenbankprogrammierung 2
I MySQL MySQL – Proxy Problem Datenbankprogrammierung 4
M Problem mit Hibernate und Named Query Datenbankprogrammierung 1
M Problem mit Hibernate und Access Datenbankprogrammierung 9

Ähnliche Java Themen

Neue Themen


Oben