64位操作系统安装说明文档对oracle进行配置后可能出现用odp.net无法连接数据库问题

按照收缴系统64位操作系统安装说明文档对oracle进行配置后可能出现用odp.net无法连接数据库问题,以下是此问题解决方案:

一、修改machine.config配置文件

64位+.net 4.0环境下,machine.config可能会有4份,分别对应于.net2.0/4.0的32/64位版本,文件路径如下:

C:\Windows\Microsoft.NET\Framework\v2.0.50727\Config

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

C:\Windows\Microsoft.NET\Framework64\v2.0.50727\Config

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config

分别对以上目录下的machine.config文件进行配置:

在2.0的machine.config文件<system.data>节点下配置如下节点:

<DbProviderFactories>

<add name="Oracle Data Provider for .NET" invariant="Oracle.DataAccess.Client" description="Oracle Data Provider for .NET" type="Oracle.DataAccess.Client.OracleClientFactory, Oracle.DataAccess, Version=2.111.7.20, Culture=neutral, PublicKeyToken=89b483f429c47342"/>

</DbProviderFactories>

在4.0的machine.config文件<system.data>节点下配置如下节点:

<DbProviderFactories>

<add name="Oracle Data Provider for .NET" invariant="Oracle.DataAccess.Client" description="Oracle Data Provider for .NET" type="Oracle.DataAccess.Client.OracleClientFactory, Oracle.DataAccess, Version=4.112.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342" />

</DbProviderFactories>

 

二、安装X64版本的odp.net

1、解压ODAC112021Xcopy_x64.zip到某个目录,比如E:\software\oracle11g\ODP.Net。

2、在CMD中进入该目录下并键入以下命令:install.bat all c:\odp.net myhome (install all components),上述命令将自动把所有文件复制到c:\odp.net下。

3、转到c:\odp.net下,键入命令:configure.bat all myhome (configure all component),将自动向GAC中部署相应的程序集。

安装成功后可以在C:\Windows\assembly 目录下看到x86与AMD64位的Oracle.DataAccess。

三、解决非odp方式无法连接数据库问题

解压instantclient-basic-win-x86-64-11.1.0.7.0.zip到C:\oracle目录下,并在系统的环境变量PATH中加入路径C:\oracle\instantclient_11_1。

在C:\oracle\instantclient_11_1下添加建Network\ADMIN子目录,在下面创建tnsnames.ora文件并记录tns

四、新建一个环境变量,取名为tns_admin,把变量值设为第三步创建的admin文件夹路径

猜你喜欢

转载自www.cnblogs.com/gdg87813/p/11883334.html