如何在安装32位Oracle客户端组件的情况下以64位操作系统中运行
展开全部
win7+64位+Oracle+11g+64位下使用PLSQL+Developer+的解决办法
1)安装Oracle 11g 64位
2)安装32位的Oracle客户端( instantclient-basic-win32-11.2.0.1.0)
下载instantclient-basic-win32-11.2.0.1.0.zip (一定得是32位的,不要下错了版本,Oracle官网有下载),将其解压至Oracle安装目录的Product下(本机命名为:instantclient_11_2):D:\Oracle\app\dd\product\instantclient_11_2。
拷贝数据库安装根目录下的一个目录D:\Oracle\app\dd\product\11.2.0\dbhome_1\NETWORK到Oracle客户端目录下D:\Oracle\app\dd\product\instantclient_11_2(其实只需要 NETWORK\ADMIN\tnsnames.ora)
3)安装PL/SQL Developer
安装 PL/SQL Developer,在perference->Connection里面设置OCI Library和Oracle_Home,例如本机设置为:
Oracle Home :D:\Oracle\app\dd\product\instantclient_11_2
OCI Library :D:\Oracle\app\dd\product\instantclient_11_2\oci.dll
4) 设置环境变量(修改环境变量)
对于NLS_LANG环境变量, 最好设置成和数据库端一致, 首先从数据库端查询字符集信息:
SQL> select userenv('language') nls_lang from dual;
NLS_LANG
----------------------------------------------------
SIMPLIFIED CHINESE_CHINA.ZHS16GBK
右击"我的电脑" - "属性" - "高级" - "环境变量" - "系统环境变量":
1>.点击"新建", 变量名设置为"NLS_LANG", 变量值设置为"SIMPLIFIED CHINESE_CHINA.ZHS16GBK", 点击"确定";
2>.新建环境变量“TNS_ADMIN”,值为“D:\Oracle\app\dd\product\instantclient_11_2”
最后点击"确定"退出.
启动 PL/SQL Developer ,运行无问题。
1)安装Oracle 11g 64位
2)安装32位的Oracle客户端( instantclient-basic-win32-11.2.0.1.0)
下载instantclient-basic-win32-11.2.0.1.0.zip (一定得是32位的,不要下错了版本,Oracle官网有下载),将其解压至Oracle安装目录的Product下(本机命名为:instantclient_11_2):D:\Oracle\app\dd\product\instantclient_11_2。
拷贝数据库安装根目录下的一个目录D:\Oracle\app\dd\product\11.2.0\dbhome_1\NETWORK到Oracle客户端目录下D:\Oracle\app\dd\product\instantclient_11_2(其实只需要 NETWORK\ADMIN\tnsnames.ora)
3)安装PL/SQL Developer
安装 PL/SQL Developer,在perference->Connection里面设置OCI Library和Oracle_Home,例如本机设置为:
Oracle Home :D:\Oracle\app\dd\product\instantclient_11_2
OCI Library :D:\Oracle\app\dd\product\instantclient_11_2\oci.dll
4) 设置环境变量(修改环境变量)
对于NLS_LANG环境变量, 最好设置成和数据库端一致, 首先从数据库端查询字符集信息:
SQL> select userenv('language') nls_lang from dual;
NLS_LANG
----------------------------------------------------
SIMPLIFIED CHINESE_CHINA.ZHS16GBK
右击"我的电脑" - "属性" - "高级" - "环境变量" - "系统环境变量":
1>.点击"新建", 变量名设置为"NLS_LANG", 变量值设置为"SIMPLIFIED CHINESE_CHINA.ZHS16GBK", 点击"确定";
2>.新建环境变量“TNS_ADMIN”,值为“D:\Oracle\app\dd\product\instantclient_11_2”
最后点击"确定"退出.
启动 PL/SQL Developer ,运行无问题。
展开全部
C#使用System.Data.OracleClient连接Oracle数据库。之前在WinXP上正常运行的程序移植到Windows 2008 x64上之后就连不上数据库了,错误信息如下:
启动database2sharp工具时提示:
数据连接不成功,请检查该数据库是否已启动尝试加载oracle客户端时引发BadImageFormatException.如果在安装32位Oracle客户端组件的情况下以64位模式运行,将出现此问题。
错误原因是原来WinXP机子上所安装的OracleInstantClient是32位,所以编译的程序所用的OracleClient也是32位的,从而导致兼容问题。当然,如果在64位操作系统上重新安装64位的Oracle客户端再重新编译程序也是能解决问题的。这里我们介绍一种简单的方法来移植程序。
实际上,System.Data.OracleClient所指向的是PATH环境变量下的oci.dll。因此,我们只要让程序能够找到64位的oci.dll就可以了。方法如下:
1. 下载instantclient-basic-win-x86-64-11.1.0.7.0.zip,并解压,如C:\instantclient-basic-win-x86-64-11.1。
2. 在系统的环境变量PATH中加入以上路径。
之后再运行程序,程序会依照PATH路径寻找oci.dll,如果遇到32位的oci.dll会自动略过,找到64位的oci.dll就能连接上数据库了!!!祝你成功`
启动database2sharp工具时提示:
数据连接不成功,请检查该数据库是否已启动尝试加载oracle客户端时引发BadImageFormatException.如果在安装32位Oracle客户端组件的情况下以64位模式运行,将出现此问题。
错误原因是原来WinXP机子上所安装的OracleInstantClient是32位,所以编译的程序所用的OracleClient也是32位的,从而导致兼容问题。当然,如果在64位操作系统上重新安装64位的Oracle客户端再重新编译程序也是能解决问题的。这里我们介绍一种简单的方法来移植程序。
实际上,System.Data.OracleClient所指向的是PATH环境变量下的oci.dll。因此,我们只要让程序能够找到64位的oci.dll就可以了。方法如下:
1. 下载instantclient-basic-win-x86-64-11.1.0.7.0.zip,并解压,如C:\instantclient-basic-win-x86-64-11.1。
2. 在系统的环境变量PATH中加入以上路径。
之后再运行程序,程序会依照PATH路径寻找oci.dll,如果遇到32位的oci.dll会自动略过,找到64位的oci.dll就能连接上数据库了!!!祝你成功`
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在64 位操作系统中运行完全无障碍运行。
以64 位运算就扯淡了
以64 位运算就扯淡了
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询