オラクルの hsodbc 汎用データベース リンク ドライバーを使用して、オラクル 10gr2 データベース サーバーから postgresql データベースにアクセスしようとしています。すべてが構成されていると思いますが、リモート クエリを試行した後、sqlplus プロンプトからこのエラーが表示されます。
SQL> select * from temp_user@intranet; select * from temp_user@intranet * 1 行目のエラー: ORA-28545: エージェントへの接続時にNet8によってエラーが診断されました NETWORK/NCR メッセージ 65535 のテキストを取得できません ORA-02063: INTRANET からの前の 2 行
Linuxコマンドラインから「isql」を使用すると(つまり、odbc接続のみをテストします)、クエリは機能します。
「isql intranet」と入力します (intranet は odbc 接続の名前です)。プロンプトが表示され、select * from temp_user と入力すると、画面に 157 レコードが返されます。
したがって、odbc 構成が正しくセットアップされていることはわかっています。これが私がオラクルに対して行うことです。
%oracle_home/hs/admin/initsodbc.ora HS_FDS_CONNECT_INFO = イントラネット HS_FDS_TRACE_LEVEL = オフ HS_FDS_SHAREABLE_NAME = /usr/bin/ODBCConfig
%oracle_home/network/admin/tnsnames.ora イントラネット = (説明 = (ADDRESS_LIST = (アドレス = (プロトコル = TCP)(ホスト = 192.168.5.1)(ポート = 5432)) ) (CONNECT_DATA = (SID = イントラネット) ) (HS = OK) %oracle_home/network/admin/listener.ora SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = イントラネット) (プログラム = hsodbc) (SID_NAME = イントラネット) (ORACLE_HOME = /home/oracle/app/OraHomeTEST) リスナー = (DESCRIPTION_LIST = (説明 = (アドレス = (プロトコル = TCP)(ホスト = oracledb.andersen-const.com)(ポート = 5432)) ) )
リスナーを再起動しました。その状態は以下の通りです。
サービス概要... サービス "INTRANET" には 1 件のインスタンスがあります。 インスタンス「INTRANET」、ステータス不明、このサービスのハンドラが 1 つあります...
次に、データベース サーバーのコマンド ラインから sqlplus に入り、次の操作を行います。
drop database link intranet;
データベース リンクを作成する イントラネットは、「イントラネット」を使用して、パスワードで識別されるユーザーに接続します。
これは成功です。
しかし、私が走るとき
select * from temp_user@intranet
エラーが表示される
1 行目のエラー: ORA-28545: エージェントへの接続時にNet8によってエラーが診断されました NETWORK/NCR メッセージ 65535 のテキストを取得できません ORA-02063: INTRANET からの前の 2 行
私は少なくとも良い一日を構成に戻って試してみましたが、常にこのエラーが発生します。
どなたか良いアイデアをお持ちの方、