0

SSH接続のみを持つリモートサーバーでOracleサーバーを実行しており、それに対してデータインポートプロセスを実行する必要があります。

さまざまな SSH トンネルの組み合わせを試しました。

  • 127.0.0.1:1521
  • 127.0.0.1:1522
  • 127.0.0.1:11111
  • 127.0.0.107:1522
  • 127.0.0.107:11111

しかし、どれも imp.exe では機能しません。これらすべての組み合わせが、JDBC を使用する SQL Developer およびScriptellaスクリプトで問題なく機能することは興味深いことです。次のエラーが標準エラー出力に表示されます。

IMP-00058: ORACLE error 12514 encountered
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
IMP-00000: Import terminated unsuccessfully

また、sqlnet.log には次のように表示されます。

***********************************************************************
Fatal NI connect error 12514, connecting to:
 (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=tktdb1)(CID=(PROGRAM=C:\oraclexe\app\oracle\product\10.2.0\server\bin\imp.exe)(HOST=...)(USER=...)))(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=11111)))

  VERSION INFORMATION:
    TNS for 32-bit Windows: Version 10.2.0.1.0 - Production
    Windows NT TCP/IP NT Protocol Adapter for 32-bit Windows: Version 10.2.0.1.0 - Production
  Time: 07-MAR-2011 10:53:26
  Tracing not turned on.
  Tns error struct:
    ns main err code: 12564
    TNS-12564: TNS:connection refused
    ns secondary err code: 0
    nt main err code: 0
    nt secondary err code: 0
    nt OS err code: 0

何か案は?

4

1 に答える 1

2

接続文字列が正しいと思います。もしそうなら: あなたのデータベースはたまたま制限モードになっていますか? その場合、サポートするサービスは接続に使用できません。その場合は、SID=xxx を使用して tns エイリアスで接続してみてください。

ここでは、ssh がどのような影響を与えるのかわかりません。データベース接続は機能しています。ssh は、ssh を介してデータベース接続をトンネリングする必要がある場合にのみ役割を果たします。通常の SQL クライアントがこれなしで接続できる場合は、imp でも同じことができます。通常、ssh はサーバーへの接続にのみ使用されますが、この場合は必要ありません。

これがお役に立てば幸いです、ロナルド。

于 2011-03-07T10:46:37.860 に答える