ORA-12547エラーが発生しているPL/SQLによるOracleへのログインに関するトラブルシューティング

ORA-12547エラーはTNSがデータベースに接続できないことが原因で発生します。このエラーを解決するには、以下の手順に従ってください。

  1. TNSサービスが動作しているかを調べてください。Windowsの場合は、「サービス」で、Oracle TNS Listenerサービスが起動しているかどうかを確認できます。Linuxの場合は、次のコマンドを使用できます。
  2. systemctl status oracle-xe-18c
  3. TNS名が正しいことを確認する。ご使用のTNS名がデータベースインスタンス名と一致していることを確認する。TNS名は$ORACLE_HOME/network/admin/tnsnames.oraファイルで見つけることができます。
  4. リスナーの設定を確認する。リスナーが正しく設定されており、正しいポートがリッスンされていることを確認する。$ORACLE_HOME/network/admin/listener.oraファイルでリスナーの設定を確認できます。
  5. ファイアウォール設定を確認してください。データベースサーバー上でファイアウォールが有効になっている場合は、クライアントが適切なポートにアクセスできるようにしてください。ファイアウォールを無効にするか、適切なファイアウォールルールを設定してみてください。
  6. データベースサービスが動作しているかどうかを確認する。Windows の場合は、「サービス」で Oracle Database サービスが起動しているかどうか確認する。Linux の場合は、以下のコマンドで確認できる。
  7. systemctl status oracle-xe-18c

上記のいずれの方法でも問題が解決しなかった場合は、ログファイルを確認して詳細情報を調べる必要があります。TNSリスナーのログファイル$ORACLE_HOME/network/log/listener.logとデータベースのログファイル$ORACLE_HOME/rdbms/log/alert_.logを確認できます。

bannerAds