Fehler, die auf Oracle-während der Verwendung DBLINK
Ich bin Mit jboss5.1.x, EJB3.0 ,JPA3.
Ich versuche zu tun 'select' Abfrage aus der Ansicht, die verbunden ist über dblink in eine andere Datenbank.
source-Datenbank ist Oracle 9, Ziel dabatase ist Oracle 8.
Bin ich immer diese Fehlermeldung:
15:27:06,625 WARN [JDBCExceptionReporter] SQL Error: 24777, SQLState: 99999
15:27:06,625 ERROR [JDBCExceptionReporter] ORA-24777: use of non-migratable database link not allowed
Fand ich die Lösung zu diesem Fehler, nachdem ich verstanden, dass ich nicht verwenden dblink während der Verwendung XA. So schaffte ich es gelöst, indem die dblink-Skript erstellen von freigegebenen Datenbank-link wie folgt:
CREATE SHARED DATABASE LINK CONNECT TO IDENTIFIED BY AUTHENTICATED BY IDENTIFIED BY USING
alles geklappt hat in dieser test-Umgebung.
Nun habe ich zog meine Anwendung Produktionsumgebung, wo die Quell-Datenbank ist Oracle 11 während das Ziel ist noch Oracle 8.
Den trick, die ich verwendet hat nicht funktioniert diese Zeit, und ich konnte Sie nicht finden eine Lösung. Dies ist die neue Ausnahme, die ich immer bin:
Caused by: org.hibernate.exception.GenericJDBCException: could not execute query
at ....Caused by: java.sql.SQLException: ORA-01012: not logged on
ORA-02063: preceding line from TO_VANTIVE
Danke für Eure Hilfe,
ray,
InformationsquelleAutor rayman | 2011-03-31
Du musst angemeldet sein, um einen Kommentar abzugeben.
scheint nahe zu legen, dass Sie sich noch nicht konfiguriert, der neue link korrekt und da die Datenbank jetzt 11g, die vielleicht case-sensitive Passwörter, wäre das erste, was zu überprüfen ist.
Setzen Sie Anführungszeichen um das Passwort in den LINK ERSTELLEN, wenn die remote-schema(s) case-sensitive Passwörter. So
Die Passwörter und die Benutzernamen von Benutzern finden Sie zu remote-Datenbank .ich.e. nicht die Datenbank, für die Sie die Verknüpfung erstellen, aber die Datenbank, die Sie Zugriff über den link.
Ich habe es versucht.. ich bekomme den gleichen Fehler (das zweite ich erwähnen)
Sind Sie anmelden können, um Benutzer in die entfernte Datenbank direkt? Wenn Sie nicht anmelden können, dann die anderen Fehler sind ziemlich wahrscheinlich zu sein, weil, da kann man nicht wirklich etwas tun. Entweder der link funktioniert nicht (haben Sie einen TNS-Eintrag für die Datenbank entspricht den link für Beispiel) oder es gibt ein Problem mit Berechtigungen von einer Art (Falsches Passwort, account gesperrt, nicht erlauben, zu verbinden oder fehlende Benutzer).
Es tut mir Leid, wenn ich nicht erwähnen, aber regelmäßige dblink funktioniert Prima zwischen Ihnen. dieses problem tritt nur auf, wenn ich versuche, "ERSTELLEN von FREIGEGEBENEN DATENBANK"
InformationsquelleAutor Lunc
Haben wir das gleiche problem mit Weblogic und die Lösung ist die Verwendung der non-XA-oracle-JDBC-Treiber.
InformationsquelleAutor Joaozito Polo
War ich mit dem gleichen problem hier mit einer Oracle 11g (ORA-24777). Habe ich durchgeführt, die eine Verknüpfung zwischen einer einzelnen Tabelle (in mein schema) und einer Ansicht (erstellt durch eine Datenbank-Verknüpfung). Ich habe ausgeführt, die alle über einen JBoss datasource im XA-Modus.
Um es zu bekommen, um gut zu funktionieren, ich musste ändern Sie den Modus von meinem dblink anzeigen. In diesem Fall ist sehr wichtig, um eine genaue
AUTHENTICATED BY
- Klausel, um zu vermeiden, "ORA-01012: nicht eingeloggt" auf.InformationsquelleAutor noleto
Bitte stellen Sie sicher, dass der DB-link, den Sie verwenden, ist Öffentlich und Freigegeben, wenn der DB-link ist nicht Öffentlich und Teilte es wird eine Exception ORA-24777: Verwendung von nicht-migrierbar Datenbank link nicht erlaubt. Aber wenn Sie versuchen zum ausführen der gleichen Abfrage direkt auf der DB mit der mit der Java-oder XA-Transaktion, wird es funktionieren.
InformationsquelleAutor user2807568