Odbcドライバを使用してRACデータベースに接続しようとしています。やってみながら
ORA-28040
:一致する認証プロトコルがありません
これをクライアントとサーバーの両方に追加しました:
SQLNET.ALLOWED_LOGON_VERSION=8
また、上記の廃止されたパラメーターをサーバーとクライアントに置き換えてみました。それでも同じエラーが発生します。
詳細:
これは、Oracleクライアント/サーバーバージョンの互換性の問題である可能性があります。
From Java.sql.SQLException:ORA-28040:No matching authentication protocol から
これは、互換性のないバージョンのJDBCドライバーを使用しているために発生します。
この問題を解決するには、JDBC 12c以降のバージョンを使用していない場合は、最新バージョンのOracle JDBCドライバーを使用していることを確認してください。
質問の作成者がコメントとして残した回答:
sqlnet.ora
で廃止されたパラメーターを使用する代わりに、新しい12cパラメーターを追加した後に機能しました。
私は同じ問題に直面していました。問題は、SQL Developer 11gを使用して接続しようとしていたのですが、私のデータベースはOracle 12cでした。この問題は、正しいOracle SQL Developerバージョンを使用することで解消されました。
古いWebアプリを復活させて新しいデータベースに接続する場合は、build.xml
に適切なクラスパスがあるか、または.classpath
が潜んでいないかを再確認してください
<classpathentry path="some/path/WEB-INF/maybe-lib/ojdbc14.jar"/>
ojdbc6.jar
またはojdbc7.jar
の代わりに使用します。これらは実際にはより新しく、使用したいものです。