Oracle用の32ビットodp.netドライバをインストールしました。現在、サーバーは、非推奨のMicrosoftOracleドライバーを使用しているアプリケーションをホストしています。
サーバーで新しいodp.netドライバーを使用するために、Microsoftの古い非推奨のドライバーとの競合はありますか?
サーバーに何をインストールする必要がありますか?(既存のWebアプリケーションとの競合を回避する方法は?)
System.Data.OracleClientは、odp.netと同じように、管理されていないOracleクライアントソフトウェアに依存しています。
http://msdn.microsoft.com/en-us/library/2d7h4ycx.aspx
.NET Framework Data Provider for Oracleは、Oracleクライアントソフトウェアによって提供されるOracle Call Interface(OCI)を使用してOracleデータベースへのアクセスを提供します。データプロバイダーの機能は、SQL Server、OLE DB、およびODBC用の.NETFrameworkデータプロバイダーの機能と同様に設計されています。
Oracleクライアントがインストールされると、「oracle_home」(複数のOracleホームが許可されます)が確立され、さまざまな方法を使用して、レジストリ(HKLM / Software / Oracle)、. configオプション、pathステートメントなどの関連する依存関係が検索されます。System.Data.OracleClientがどのメソッドを使用するかは正確にはわかりませんが、古いバージョンのクライアントと同様に、パス環境変数に依存していると思います。
新しいクライアントをインストールすると、pathステートメントの最初に自分自身が配置される可能性があります。たとえば、4つのクライアントがインストールされているコマンドライン「set」コマンドからの次の切り取りについて考えてみます。
OS =Windows_NTパス=C:\ ProgramFiles \ Common Files \ Microsoft Shared \ Windows Live; C:\ Program Files(x86)\ Common Files \ Microsoft Shared \ Windows Live; C:\ Oracle \ product \ 11.2.0 \ client_ODT; C:\ Oracle \ product \ 11.2.0 \ client_ODT \ bin; C:\ Oracle \ product \ 11.2.0 \ client_ODACx64; C:\ Oracle \ product \ 11.2 0 \ client_O DACx64 \ bin; C:\ Oracle \ product \ 11.2.0 \ client_1 \ bin ; C:\ Windows \ system32; C:\ Windows; C:\ Windows \ System32 \ Wbem; C:\ Windows \ System32 \ WindowsPowerShe ll \ v1.0 \; C:\ ORA6i \ bin; C:\ ORANT \ bin ; C:\ Windows \ system32; C:\ WINDOWS; C:\ WINDOWS \ System32 \ Wbem; C:\ ORA6i \ jdk \ bin; C:\ Windows \ system32 ; C:\ WINDOWS; C:\ WINDOWS \ System32 \ Wbem; C:\ ORA6i \ jdk \ bin; C:\ ORA6i \ bin; C:\ ORANT \ bin; C:\ Windows \ system32; C:\ WINDOWS; C:\ WINDOWS \ System32 \ Wbem; C:\ ORA6i \ jdk \ bin;
その時点で、既存のクライアントユーザーが代わりに新しくインストールしたクライアントを使用し始める可能性があります。したがって、これらの種類の変更については、インストールの前後にシステムを確認することをお勧めします。
新しいクライアントで実行することはおそらく問題ありませんが、既存のシステムに触れないようにしたい場合は。代わりにxcopyインストールの使用を検討してください。以下は、インストールに関する情報へのリンクです。http: //www.oracle.com/technetwork/issue-archive/2008/08-nov/o68odpnet-101744.html http://www.brothersincode.com/post/Oracle -ODPnet-xcopy-deployment-for-aspnet.aspx
xcopyインストールはそれ自体をpathステートメントに追加しないため、他のインストールに影響を与えることはありません。odp.netの新しいバージョンは、レジストリを介して管理されていないバイナリを解決することになっているため、新しいアプリは問題なくそれを見つけることができます。ただし、dllPathの構成の方が信頼性が高いと思います。構成ファイルには次のようになります。
<configuration>
<oracle.dataaccess.client>
<add key="DllPath" value="c:\oracle\product\1.1.0-xcopy-dep\BIN"/>
</oracle.dataaccess.client>
</configuration>
私が知っているように、衝突はありません。そして、それはオラクルにとってより良いでしょう-開発の進歩はMSソリューションよりも大きいです。インストールプロセスと要件については、ここですべて読むことができます-> Oracle®DataProvider for .NET