Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Auf den Oracle 12c-Server kann nicht über den .Net-Anbieter von einem Remote-Computer aus zugegriffen werden

Sie sollten http: nicht haben im Hostnamen an beliebiger Stelle. Die SQL*Plus-Version wäre:

sqlplus system/[email protected]//10.111.111.47:1521/Telefon

Angenommen, der Dienstname ist derselbe wie die SID, was nicht unbedingt der Fall ist; aus Ihrem lsnrctl status Es ist für Sie so, dass das Teil in Ordnung sein sollte.

Aber Ihr Listener lauscht nur auf localhost, 127.0.0.1 . Das bedeutet, dass es von keinem anderen Ort aus erreichbar ist. Bei dieser Verbindungszeichenfolge erhalten Sie wahrscheinlich einen „Kein Listener“-Fehler. Sie müssen Ihre Listener-Konfiguration so ändern, dass sie die externe IP-Adresse 10.111.111.47 überwacht , die hoffentlich statisch ist und nicht per DHCP vergeben wird. Es kann bei Bedarf auf beiden Adressen lauschen:

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = AndrasWin7x64v1)(PORT = 1521))
    )
  )

Angenommen AndrasWin7x64v1 wird zu 10.111.111.47 aufgelöst , zumindest innerhalb dieses Servers; wenn nicht, können Sie stattdessen die IP-Adresse verwenden:

      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.111.111.47)(PORT = 1521))

Aber auch hier sollten Sie nur IP-Adressen verwenden, wenn die IP des Servers statisch ist; Wenn es dynamisch ist (von DHCP zugewiesen), sollten Sie einen DNS-Namen verwenden, der zu dieser Adresse in listener.ora aufgelöst wird und vom Client, und Sie sollten das wahrscheinlich trotzdem tun, auch wenn es statisch ist, falls es sich in Zukunft ändern muss.