LoginSignup
2
1

OracleデータベースにOracle Clientなしでリモート接続する方法3つ

Last updated at Posted at 2024-04-28

先日Windowsローカル環境でOracleデータベースに入門したばかりの赤ん坊です。

Oracleデータベースにリモート接続するには「クライアントマシンにOracle Clientをインストールする必要がある」という説明が多かったので、Oracle Clientをインストールしなくても済む方法が無いか簡単に調べた。

まとめ

OracleデータベースにOracle Clientなしで接続する方法3つ

  • JavaアプリケーションからはODBC Thinを使う
  • .NETアプリケーションではDLL形式のODP.NETを使う
  • A5:SQL Mk-2 では直接接続方式を使う

結構普通にあった。

Oracle Clientをインストールすると

クライアントマシン向けのOracle Clientというソフトウェアをインストール・設定することで、別マシンのOracleデータベースにリモート接続できるようになる。

Oracle Clientをインストールすると、サーバー側用ソフトウェアをインストールした時と同じように、ORACLE_HOMEtnsnames.oraの置き場所も作られてしまう。

ちょっと気軽に接続したいぜぐらいのノリだったらいちいち仰々しくない?などと思ったのが今回調べるに至ったきっかけ。

JavaアプリケーションからOracleデータベースにリモート接続する方法

以下2種類のうちどちらかのドライバを使う。
推奨は JDBC Thin とのこと。

  • JDBC Thin ドライバ
    Oracle Clientにも含まれているが、JARファイルにも含まれているので、Oracle Clientは必須ではない。
  • JDBC OCI ドライバ
    Oracle Client に含まれており、Oracle Clientインストールが必要。

.NET アプリケーションからOracleデータベースにリモート接続する方法

ODP.NET ドライバ が必要。

入手方法

  • Oracle Client (バージョンによっては Oracle Database Access Component)
  • Nuget

NugetからならODP.NETをパッケージという形で入手できるので、アプリケーションにDLLとして挿せばよく、Oracle Clientをインストールせずに済むようだ。

接続先情報については、tnsnames.oraファイルが無い代わりに自前で接続記述子を指定するようだ。

A5:SQL Mk-2 からOracleデータベースにリモート接続する方法

思い返せば、私は仕事で開発マシンのA5からDBサーバーのOracleに難なく接続できていたが、そのマシンにはOracle Clientはインストールされていなかったので気になって調べた。

A5からOracleに接続するとき、以下の2つの方式から選択できるようになっている。

  • OCI経由 Oracle Clientを使って接続する。
  • 直接接続 Oracle Clientを使わずに接続する。

直接接続方式ならOracle Clientインストールが不要。

直接接続方式では、A5の開発言語Delphi等で使えるUniDACという有償コンポーネントを使っているそうだ。A5開発者の方によれば、おそらくUniDACはOracle Clientと同等の機能を有しているとのこと。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1