Avatar billede decrypto Nybegynder
11. marts 2007 - 15:36 Der er 28 kommentarer

Oracle listener problemer sammen med Tomcat. ORA-12505.

Jeg har problemer med at få min Tomcat og Oracle til at spille sammen.

Jeg starter med at starte op for Tomcat, og derefter for min Oracle 10g DB.

Jeg kan herefter uden problemer kalde min localhost og fp Tomcat til at agere som webserver:
http://localhost:8080/

Herinde har jeg en en simpelt test side med en formular, som jeg ved submit helst gerne vil have noget i min tabel på min Oracle DB.

Jeg får bare denne fejl:
XML-25007: Cannot acquire a database connection to process page.
Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
The Connection descriptor used by the client was:
localhost:1521:XE

Efter at ha søgt på nettet, har jeg fundet et sted der anbefaler til at i run køre for lsnrctl, og manuelt stoppe og starte for ens listener, men det hjælper ikke.

Jeg oplever også problemet med at min Tomcat står af, når jeg åbner for min DB og kører nogle kommandoer fra Oracles SQL cmd line.

Virker som om der er en konflikt på en port. Oracle kommer også med en webgui, og den kan også køres på ens localhost:8080, selvom jeg ikke bruger den.

Jeg har kæmpet mig i en uge, uden held, og jeg skal aflevere en opgave d. 26/3 så jeg vil helst gerne have mit miljø oppe og køre hurtigst muligt.

Jeg arbejder på en win server 2003.
Der er gode point til ham / dem der kan hjælpe mig med at få mit miljø op og spille
Avatar billede inglenook Praktikant
11. marts 2007 - 15:49 #1
Foerst boer du tjekke at localhost er defineret i tnsnames.ora og listener.ora (kraever restart af tnslistener hvis du aendrer i en af filerne)
Dernaest tror jeg det er et problem hvis du installerede oracle til at bruge port 8080. Porten bliver brugt mens oracle koerer. Kan du proeve at koere Tomcat paa en anden port ? Ellers maa du finde en maade at aendre porten i Oracle.
Avatar billede arne_v Ekspert
11. marts 2007 - 17:16 #2
Du skal ikke bruge OCI i Java - du skal bruge thin client !
Avatar billede arne_v Ekspert
11. marts 2007 - 17:19 #3
driver navn = oracle.jdbc.OracleDriver
connection URL = jdbc:oracle:thin:@ipnodenavn:1521:instansnavn
Avatar billede arne_v Ekspert
11. marts 2007 - 17:20 #4
og check først at du kan logge ind med instansnavn+username+password
Avatar billede decrypto Nybegynder
11. marts 2007 - 17:52 #5
Dette er min connection info i min XSQLConfig.xml fil

<connection name="myoracle">
    <username>user</username>
    <password>user</password>
    <dburl>jdbc:oracle:thin:@localhost:1521:XE</dburl>
    <driver>oracle.jdbc.OracleDriver</driver>
    <autocommit>false</autocommit>
</connection>

1. Hvad skal jeg ændre i min tnsnames.ora og listener.ora, hvordan er localhost defineret i dem?

2. Jeg tænkte nok at der var en port 8080 problem. Som man kan se i min XSQLConfig.xml, så prøver jeg at tilgå DB'en gennem dette: jdbc:oracle:thin:@localhost:1521:XE, det er vel korrekt, hvor kan jeg resolve denne port 8080 konflikt henne?

3. Hvordan kan jeg tjekke om jeg kan logge ind med "myoracle", "user", "user" (instansnavn+username+password)?

Håber der er lys forenden af tunnellen.
Avatar billede arne_v Ekspert
11. marts 2007 - 17:55 #6
hedder din instans XE ?
Avatar billede arne_v Ekspert
11. marts 2007 - 17:56 #7
det er nok iøvrigt nemmere at troubleshoote connection via et lille 15 liniers
standalone Java program
Avatar billede decrypto Nybegynder
11. marts 2007 - 17:58 #8
Hmm jeg troede min instans hed 'myoracle'
Avatar billede decrypto Nybegynder
11. marts 2007 - 17:59 #9
Hvor kan man se hvad ens instans hedder?
Avatar billede decrypto Nybegynder
11. marts 2007 - 18:02 #10
Nej, det hedder vel min connection...
Avatar billede arne_v Ekspert
11. marts 2007 - 18:07 #11
hvis din instans hedder myoracle så skal du bruge

jdbc:oracle:thin:@localhost:1521:myoracle
Avatar billede decrypto Nybegynder
11. marts 2007 - 18:09 #12
Men er der nogen steder man kan se hvad den hedder?
Avatar billede decrypto Nybegynder
11. marts 2007 - 18:09 #13
For opsætningsmæssigt er vi blevet fortalt, at det er sådan den skal hedde.
Avatar billede decrypto Nybegynder
11. marts 2007 - 18:12 #14
Det hjalp desværre ikke:
Får stadigvæk denne:

XML-25007: Cannot acquire a database connection to process page.
Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
The Connection descriptor used by the client was:
localhost:1521:myoracle
Avatar billede decrypto Nybegynder
11. marts 2007 - 18:15 #15
Jeg er temmelig sikker på at den skal hedde:
jdbc:oracle:thin:@localhost:1521:XE

Denne bruge nemlig resten af holdet, der hvor jeg læser.
Avatar billede arne_v Ekspert
11. marts 2007 - 18:25 #16
XE er vist default på Express Edition
Avatar billede arne_v Ekspert
11. marts 2007 - 18:25 #17
hvis du checker i services hvilke Oracle services kører der så ?
Avatar billede decrypto Nybegynder
11. marts 2007 - 18:31 #18
Her er hvad jeg får ud:

LSNRCTL> services
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
  Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0
        LOCAL SERVER
Service "PLSExtProc" has 1 instance(s).
  Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0
        LOCAL SERVER
Service "XEXDB" has 1 instance(s).
  Instance "xe", status READY, has 1 handler(s) for this service...
    Handler(s):
      "D000" established:0 refused:0 current:0 max:1002 state:ready
        DISPATCHER <machine: FH5, pid: 3716>
        (ADDRESS=(PROTOCOL=tcp)(HOST=fh5)(PORT=1375))
Service "XE_XPT" has 1 instance(s).
  Instance "xe", status READY, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
        LOCAL SERVER
Service "xe" has 1 instance(s).
  Instance "xe", status READY, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
        LOCAL SERVER
The command completed successfully
LSNRCTL>
Avatar billede decrypto Nybegynder
11. marts 2007 - 18:33 #19
Ser ud som om 'xe' kører som service. Så det ser vel rigtigt nok ud?
Avatar billede decrypto Nybegynder
11. marts 2007 - 18:46 #20
Hmmm der er en konflikt.....for før fik jeg en tomcat defaultside når jeg kaldte localhost:8080....

Efter at ha startet Oracle og når jeg får den der listener fejl. så efter et stykke tid....så står tomcat af, og jeg får Oracles default side i min browser, når jeg kalder localhost:8080
Avatar billede decrypto Nybegynder
11. marts 2007 - 19:13 #21
MOn jeg skal ind under services under administrative tools....og vælge manual startuo på OracleServiceXE ???? prøver dette.
Avatar billede decrypto Nybegynder
11. marts 2007 - 19:28 #22
Har fundet denne tråd om port 8080 konflikt:
http://mail-archives.apache.org/mod_mbox/tomcat-users/200612.mbox/%3C2952-92732@sneakemail.com%3E

Men hvor kan jeg rette port navnet henne?
Avatar billede arne_v Ekspert
11. marts 2007 - 19:32 #23
OK - din service hedder tilsyneladende "xe"

jeg ville ændre porten på Tomcat

det er bare at rette i conf/server.xml
Avatar billede decrypto Nybegynder
11. marts 2007 - 20:20 #24
jeg har været inde i administrative tools og slået XEServices fra og fået den til at starte manuelt. Dette vil resolveport konflikten.

Men jeg får stadigvæk listner fejlen.
Avatar billede decrypto Nybegynder
11. marts 2007 - 23:09 #25
Service "xe" has 1 instance(s).
  Instance "xe", status BLOCKED, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
        LOCAL SERVER

Nu har jeg en status blocked på min xe service. Hvordan får jeg den unblocked?
Avatar billede decrypto Nybegynder
14. marts 2007 - 09:21 #26
Jeg har nu prøvet at få hul igennem, men jeg et vindue på ca. 2 min, så lukker tomcat ned igen. Udover det er den eneste måde jeg kan unblocke min xe service, er ved at starte for XEClrAgent i services under windows.
Avatar billede arne_v Ekspert
15. marts 2007 - 01:53 #27
hvorfor lukker Tomcat ned ?

exception i console vindue ?

exception i log fil ?
Avatar billede decrypto Nybegynder
15. marts 2007 - 11:24 #28
Det er som om Oracle møver sig ind....faktisk går Tomcat ikke ned, for når jeg slukker for Oracle, så kan virker TOmcat igen uden at jeg skal starte den. Er der en måde at slå Oracles frarøvning af Tomcats webserver funktionalitet fra, så den ikke møver sig foran Tomcat, når jeg starter Oracle?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester