#この記事の目的
この記事のタイトルにある通り、ODACのインストール方法について方法を記載する。が、本当の目的は以前に書いた記事「複数バージョンのOracle DBにODAC(ODP.NET)を用いてアクセスするアプリケーションを作る際の参照先DLLに関する注意点」で、GACへのdllやPublisherPolicyの登録方法について、別記事を参照するように書いてあったのに、実際には記事が存在していなかったことに対するフォローが目的である。
なお、今回の例ではODAC183_x64を例にとってコマンドサンプルを作成しているが、ODAC18以降であればコマンドはバージョンの個所を変更するだけで流用できるはずである。
##注意すべき点
以前のODACはOUI(Oracle Universal Installer)でインストールを行うと、自動でGACにdllとPublisherPolicyを登録してくれていたのだが、少なくとも18以降のバージョンでは自動で登録をしない仕様になっている。
GACへの登録をしたい場合には、以下に示す通り、いくつかのコマンドを実行すればよい。
#ステップ ガイド
ODAC183_x64を解凍する
- 必要があれば、事前にORACLE_HOME用のユーザーを作成しておく(以下の例ではoraclehomeというユーザーを仮定している)
- 解凍したフォルダ内のsetup.exeを実行しORACLE_HOMEにODACをインストールする(以下の例ではC:\app\oraclehome\product\18.0.0\client_1)
- このままだとGACに登録されないので、コマンドを実行しdllとpublisher policyをGACに登録する。
推奨設定のとおり <ORACLE_HOME> = <drive>:\app\product\<version of product>\<product type>となっているのであれば以下のとおりである。
ただし、コマンドプロントは管理者で実行し、oraprovcfg はC:\app\oraclehome\product\18.0.0\client_1\ASP.NET\bin\4 に移動したうえで実行している。
oraprovcfg /action:gac /providerpath:C:\app\oraclehome\product\18.0.0\client_1\odp.net\bin\4\Oracle.DataAccess.dll
oraprovcfg /action:gac /providerpath:C:\app\oraclehome\product\18.0.0\client_1\odp.net\PublisherPolicy\4\Policy.4.112.Oracle.DataAccess.dll
oraprovcfg /action:gac /providerpath:C:\app\oraclehome\product\18.0.0\client_1\odp.net\PublisherPolicy\4\Policy.4.121.Oracle.DataAccess.dll
oraprovcfg /action:gac /providerpath:C:\app\oraclehome\product\18.0.0\client_1\odp.net\PublisherPolicy\4\Policy.4.122.Oracle.DataAccess.dll
#確認方法
正しく、dllとPublisherPolicyがGACに登録されたことを確認するには
C:\Windows\Microsoft.NET\assembly\GAC_64 をエクスプローラーで開き、dllとpublisher policyがインストールされていることを確認すればよい。