web-dev-qa-db-ja.com

ORA-28040:一致する認証プロトコルがありません

Odbcドライバを使用してRACデータベースに接続しようとしています。やってみながら

ORA-28040:一致する認証プロトコルがありません

これをクライアントとサーバーの両方に追加しました:

SQLNET.ALLOWED_LOGON_VERSION=8 

また、上記の廃止されたパラメーターをサーバーとクライアントに置き換えてみました。それでも同じエラーが発生します。

詳細:

  • データベースバージョン12c
  • クライアントバージョン12c
1
tesla747

これは、Oracleクライアント/サーバーバージョンの互換性の問題である可能性があります。

From Java.sql.SQLException:ORA-28040:No matching authentication protocol から

これは、互換性のないバージョンのJDBCドライバーを使用しているために発生します。

この問題を解決するには、JDBC 12c以降のバージョンを使用していない場合は、最新バージョンのOracle JDBCドライバーを使用していることを確認してください。

Compatibility Matrix

2
shageo

質問の作成者がコメントとして残した回答:

sqlnet.oraで廃止されたパラメーターを使用する代わりに、新しい12cパラメーターを追加した後に機能しました。

1
user126897

私は同じ問題に直面していました。問題は、SQL Developer 11gを使用して接続しようとしていたのですが、私のデータベースはOracle 12cでした。この問題は、正しいOracle SQL Developerバージョンを使用することで解消されました。

0
Rehan Farooq

古いWebアプリを復活させて新しいデータベースに接続する場合は、build.xmlに適切なクラスパスがあるか、または.classpathが潜んでいないかを再確認してください

<classpathentry path="some/path/WEB-INF/maybe-lib/ojdbc14.jar"/>

ojdbc6.jarまたはojdbc7.jarの代わりに使用します。これらは実際にはより新しく、使用したいものです。

0
vesperto