IT業界のすみっこ暮らし

ふと気がついたときの記録

Oracle接続前提の開発環境構築メモ

1、Oracle Database Client

Oracle Data Access Components (ODAC) for Windows Downloads

ODAC 12c Release 2 and Oracle Developer Tools for Visual Studio (12.1.0.1.2) ODTwithODAC121012.zipをダウンロードする。

※サンプルでは12.1.0.1.2をダウンロードして進めたけど、サーバーとのバージョンが合えば最新バージョンでも問題ないはず…

①インストール

基本的にデフォルト値のまま進む。

Oracleベース(=Oracle設置場所)は端末や既存設定により異なる。

f:id:papamau:20161222114852p:plain f:id:papamau:20161222115018p:plain f:id:papamau:20161222115100p:plain f:id:papamau:20161222115111p:plain f:id:papamau:20161222115202p:plain f:id:papamau:20161222115215p:plain f:id:papamau:20161222115239p:plain

環境変数設定

# PATH

f:id:papamau:20161222115520p:plain

PathにOracleの格納先が設定されているのか確認する。

# ORACLE_HOME

f:id:papamau:20161222115625p:plain

新しい環境変数ORACLE_HOME」を追加する。

※PATHのみでもOracle SQL DeveloperからのDB接続は可能。
でも、プロジェクトからOracleに接続する場合はTNSエラーが発生する場合があるため、ORACLE_HOMEも設定するのが良い。

③tnsnames.ora設定

以下のパスのtnsnames.oraに接続予定のOracle DB情報を設定する %ORACLE_HOME%\12.1.0\dbhome_1\NETWORK\ADMIN

2、SQL Developer

Oracle SQL Developer ダウンロード

Windows 64-bit with JDK 8 included sqldeveloper-4.1.3.20.78-x64.zipをダウンロードする。

f:id:papamau:20161222120155p:plain 接続タイプ=TNS ネットワーク別名からtnsnames.oraに宣言されているDB群が選択できるのでそれを選択してユーザ・パスワードを入力して接続を確認する。

3、その他

以下のようなエラーが表示されたときの対応メモ

要求された .Net Framework データ プロバイダーが見つかりません。これは、インストールされていない可能性があります。

①「machine.config」の中身を確認する。

C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\machine.config

f:id:papamau:20161222120917p:plain

私の場合、上記画像のように<DbProviderFactories>の中にOracleに関する定義がされていなかった。

※<DbProviderFactories>にOracleの設定情報が存在しない場合、上記のようなエラーメッセージが表示される。


②「machine.config」を修正する。

<DbProviderFactories>に下記内容を追加する。

  <add name="ODP.NET, Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver" type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
 <add name="ODP.NET, Unmanaged Driver" invariant="Oracle.DataAccess.Client" description="Oracle Data Provider for .NET, Unmanaged Driver" type="Oracle.DataAccess.Client.OracleClientFactory, Oracle.DataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342"/>


※上記対策はOracleインストール済み、且つ下記の格納場所にファイルが存在することを前提にしている。

%ORACLE_HOME%\12.1.0\dbhome_1\ODP.NET\managed\common

f:id:papamau:20161222121234p:plain
%ORACLE_HOME%\12.1.0\dbhome_1\ODP.NET

f:id:papamau:20161222121305p:plain

以上