7

私はasp.netWeb開発者です。

一部の機能(EFサポート)をテストするためにOracle Client 11をインストールしていますが、顧客が使用しているため、アプリケーションはOracle10にある必要があります。

したがって、顧客プロジェクトで作業する場合は(ワークステーションでテストするために)Oracle10をインストールする必要があり、Oracle11の機能をテストする場合は、Oracle11をインストールする必要があります。

私の質問は、Oracle10と11のクライアントを同じワークステーションに共存させる方法です。

つまり、自分のワークステーションでasp.net Webアプリケーションをデバッグして実行し、Oracle10またはOracle11クライアントを使用するようにweb.configを変更するだけです。

可能です?

4

1 に答える 1

9

2つのバージョンのOracleクライアントを異なるOracleホームにインストールする限り、それらは平和的に共存する必要があります。知っておくべきいくつかの落とし穴があります

  1. デフォルトでは、各Oracleホームには個別のtnsnames.oraファイル(およびsqlnet.oraファイルなど)があります。一方のOracleホームでTNSエイリアスを構成し、もう一方のOracleホームでは構成していない場合、これにより混乱が生じることがよくあります。TNS構成の問題の真の原因が1つ含まれるディレクトリを指すようにTNS_ADMIN環境変数を設定することにより、TNS構成ファイルの単一セットを使用するように環境を構成できます(つまり、TNS_ADMINを%Oracle11g_Home%\ network \ adminに設定して、常に使用するようにします) 11g Oracleホームのtnsnames.oraファイル)。
  2. 一部のサードパーティ製品は、マルチホームに準拠していません。たとえば、Oracle用のレガシーMicrosoft ODBCドライバーのようなものを使用する場合、PATHに最初に表示されるOracleクライアントのバージョンを使用します。Oracleドライバを使用してデータベースに接続している場合、それは問題にはなりません。デフォルトのOracleホームを切り替える必要がある場合は、PATHを手動で編集するか、OracleUniversalInstallerを起動して[InstalledProducts]|[InstalledProducts]|のいずれかを選択できます。環境では、OracleホームがPATHに表示される順序を制御できます。
于 2011-03-11T20:08:41.447 に答える