studio Odyssey




スタジオ日誌

日誌的なもの

2017.11.03

SQL Developer Oracle 12c

Written by
しゃちょ
Category
プログラム

 SQL Developer で、Oracle 12c につなごうとすると、NullPointerException が起こって、接続できない問題。

 17.x系のバグっぽい報告もあったり、fixされたとかあったりしたんだけど、まぁ、つながらなかったりするわけですよ。でね、結論から言って、なんてことはない、Oracle Clientのバージョンが 12.1 以上でないとつながらないという、単なるドライバの問題なんですよ。

 もうね、その情報ですら、日本語で取得できないわけですよ。いやわかんない。あるのかもしれないけど、見つからなかったわけですよ。

 で、解決策としては、ドライバあげればいいんだけど、Oracle Clientは開発環境の問題とかで、バージョン上げたくないんだよーっていうことが、あるわけで、そういう人のための解決方法ね。

 Oracle Instant Client使えるなら、アレ使えばいい。いや、しかし、PATHに書いちゃったら、開発環境汚すから、PATHには書かない方法でやる。

 Oracle Instant Client は、使い方わかっている前提で、

  • Windows の場合の話。他はしらん。まずは、Instant Clientをダウンロードして、適当に解凍する。
  • 本当はPATHを通すんだけど、PATHは通さない。
  • TNS_NAMESは通してもいい。(通さなくてもいい)
  • SQL Developer を起動する
  • ツール-プリファレンス-データベース-拡張
  • Oracle Clientの使用にチェック
  • 参照で、インスタントクライアントにして、インストールしたパスを指定。(TNS_NAMESはこの画面でも指定できる)
  • まだ動かない。まだ慌てる時間じゃない。
  • ヘルプ-バージョン情報-プロパティで、java.library.pathを探す。
  • 値をメモ帳にでもコピる。見たらわかることだけれど、これ、基本的にPATHの環境変数のコピーみたいなもん。
  • インスタントクライアントのバスを追加する。いらないものは消していい。
  • このPATHをSQL Developerがロードすればいいので、sqldeveloper.confを探せ。(多分、binの中。すげー変なところにある)
  • AddVMOptionが並んでるとこの適当なとこに。
  • AddVMOption -Djava.library.path=C:\Oracle\~ みたいに、先のパスを書く。
  • SQL Developer を再起動して、conn conn connnnnnn!!!1!!

 最近はこんなことばっかに引っかかってるきがするなぁ。

 気が向いたら、ASP.net Coreでつぶやいていたやつもまとめるかもしれない。


トラックバックURL

http://blog.studio-odyssey.net/cgi-bin/mt/mt-tb.cgi/937


コメントする