この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 10288|答える: 1

OracleデータベースレポートORA-12547へのリンク:TNS:連絡喪失の問題

[リンクをコピー]
掲載地 2017/10/23 14:51:29 | | | |

現在、ETLノードマシンが新しいデータベースサーバーにアクセスしたい場合、tnsnames.oraの設定が必要で、結果が設定された後、データベースに接続時にエラーが報告されます:
ORA-12547: TNS:lost contact



最初はtnsnames.oraの設定ミスかと思いましたが、比較と検証の結果、その可能性は否定されました。 同じ構成が他のホストでもこのデータベースサーバーに接続されていることが確認されているからです。

次に、「ORA-12547: TNS: lost contact」というエラーに基づいてインターネットで多くの情報を検索しました。ソフトウェアパッケージが不足しているという意見もあれば、データベースホストのファイル権限設定に問題があるという意見もありましたが、今回の状況とは一致していませんでした。

後でログを確認し、データベースの監視ログlistener.logを確認したところ、以下のエラーメッセージが表示されていました。
2016年5月20日 15:46:03 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=db01)(USER=grid))(COMMAND=status)(ARGUMENTS=64)(SERVICE=LISTENER)(VERSION=186647552)) * status * 0
192.168.24.1からの着信接続が拒否されました
2016年5月20日 15:46:06 * 12546
TNS-12546: TNS:permission denied
TNS-12560: TNS:protocol adapter error
  TNS-00516:許可拒否

参照し、データベースサーバーのsqlnet.ora設定を確認したところ、データベースアクセスIP制限が設定されているため、指定されたIPのみがデータベースにアクセスできることが判明しました。

2ノードRACデータベースであるため、グリッドユーザーの下でsqlnet.oraを変更すると、ETLノードのIPアドレスをIPホワイトリストに追加してデータベースにアクセスします。
修正後にリスニングを再開(lsnrctl reload)してください。そうでなければエラーは報告されます。




先の:C#はJavaコードを呼び出し(JARがDLLに変換)
次に:TNS-12547: TNS:lost contact解决办法
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com