【eclipse+java】Oracle10→12でORA-28040

eclipse+java環境で
Oracle10→12
へアップデートする時
ローカル環境でテストしようとした時にハマったことを書いておく。

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

eclipseのlibは

Oracle10のJDBCドライバ
classes12.jar は、削除
ojdbc6.jar(JDK6用)を追加済。

しかし何度やってもエラー
ORA-28040: 一致する認証プロトコルがありません
発生。

何度もググってたどりついたのが、これ。

オラクルの公式QA
12.2:12より小さいバージョンのクライアントでORA-28040の後にORA-1017が発生します (Doc ID 2423805.1)

https://support.oracle.com/knowledge/Oracle%20Database%20Products/2423805_1.html

これを読んで、オラクル側の設定を疑った。

同僚に相談したら、

「いままで同じことやってたけど、 そんなエラー出たことないっすねー」

とのお返事。

半日ぐらい悩んだ末に、原因がわかった。

原因は、libフォルダに物理的に「classes12.jar」が残っていたこと。

つまり、古いJDBCドライバでoracle12に接続して
「プロトコルが一致していません。」というエラーになっていたようだ。

libフォルダから「 classes12.jar 」を削除すれば、無事接続できた。

eclipseは、
ライブラリで、
ojdbc6.jar 追加
classes12.jar  削除
としても

ファイルシステム上、物理的に 「 classes12.jar 」 が残っていれば、ダメってことです。

参考
12.2:12より小さいバージョンのクライアントでORA-28040の後にORA-1017が発生します (Doc ID 2423805.1)
https://support.oracle.com/knowledge/Oracle%20Database%20Products/2423805_1.html

この記事とは関係がないけど、oracle12へバージョンアップした際に参考にした記事メモ
参考
Oracle Database 12cR2へのアップグレード後に発生するORA-01017
https://www.ashisuto.co.jp/db_blog/article/201712-ora-01017.html

参考
Oracle11gから12cへの移行の注意点
https://simple-it-life.com/2016/03/20/oracle12c-1/

コメント

タイトルとURLをコピーしました