sql >> Databáze >  >> RDS >> Oracle

Jak nainstalovat ODP.NET 2.111 a ODP.NET 4.112 do stejného počítače vedle sebe, zatímco oba ukazují na stejný databázový server

Krátká odpověď:

Poznámka:Pokusil jsem se nainstalovat nový ODP.NET přes předchozího klienta a dokázal jsem se připojit k databázi pomocí následujícího spojovacího řetězce...

To znamená, že vaše nová instalace nemá v /Network/Admin soubory tnsnames.ora a sqlnet.ora. Pokud souhlasíte se starým klientem používajícím novou instalaci ODP.net, můžete je buď zkopírovat ze staré instalace, nebo můžete zadat globální umístění pro všechny instance pomocí proměnné prostředí TNS_ADMIN, tj. TNS_ADMIN=C:\MyOracleFilesDir

Dlouhá odpověď:

Když jste nainstalovali nového klienta, s největší pravděpodobností také nainstaloval do GAC soubory zásad vydavatele, které během procesu řešení sestavení přesměrovávají odkazy na starý Oracle.DataAccess.dll na novou verzi. Oracle.DataAccess poté vyhledá klienta pomocí parametru (DllPath) v registru. Toto umístění můžete přepsat nastavením dllPath v souboru .config:

<configuration>
  <oracle.dataaccess.client>
    <add key="DllPath"            value="C:\yourotherpath"/>
  </oracle.dataaccess.client>
</configuration>

To je obecně to, co dělám, ale jak tomu více rozumím, uvědomuji si, že staršímu klientovi vnucuji novější dll. Pokud je vaším cílem ponechat starého klienta nedotčeno, může být lepší možností odstranit zásady vydavatele z GAC (nemyslím si, že by byly nainstalovány s plnou instalací ODAC, pouze ODP.net):

Pokud je potřebujete přeinstalovat, obvykle je najdete na adrese oraclepath\odp.net\PublisherPolicy.

Další a možná lepší dlouhodobou možností je nakonfigurovat staré klienty tak, aby ignorovali zásady vydavatele:http://msdn.microsoft.com/en-us/library/cf9025zt%28v=vs.80%29.aspx

Nakonec jsem si docela jistý, že komponenty .net pro rámce 2.0 vs. 4.0 jsou samostatné možnosti instalace během instalace ODP.net. Myslím, že byste se tomuto problému mohli vyhnout jednoduše tím, že nebudete instalovat komponenty 2.0. V této souvislosti byste mohli udělat podobnou práci tím, že byste místo toho vyvinuli svůj nový projekt proti 64bitovému odp.net. Stejně jako v2.0 a v4.0, ani 32bitová a 64bitová verze nemají o sobě žádné povědomí.




  1. Primární klíče s Apache Spark

  2. SQL Server Parallel Backup Restore -1

  3. Jak načíst obsah souboru .sql do R skriptu pro spuštění dotazu?

  4. Jak ručně zkomprimovat a opravit databázi v Accessu 2016