oracle - 将 oracle 客户端从 win7/32 迁移到 win10/64
问题描述
我正在尝试在 Windows 10 上设置 Oracle 即时客户端 ODBC 驱动程序,因为我们正在将应用程序从 Windows 7 / 32 位移动到 Windows 10 / 64 位。Windows 7 平台使用 Microsoft ODBC Driver for Oracle 工作,但该驱动程序已弃用。所以我正在尝试安装 64 位 Oracle 即时客户端。尝试连接时,我收到 TNS 适配器协议错误。我所做的每一次搜索都会引导我找到有关检查服务器的解决方案,但服务器在企业中运行良好。我没有安装实际的 Oracle 客户端,只安装了 ODBC 驱动程序。使用以下连接字符串
Driver={Oracle in instantclient_11_2};Server=(DESCRIPTION=(ADDRESS=(PROTOCOL = TCP)(HOST = redacted)(PORT = 1521))(CONNECT_DATA = (SERVER = DEDICATED)(SID=redacted))); Uid=redacted;Pwd=redacted;
解决方案
您使用哪个客户端应用程序?
如果这是一个 32 位应用程序(这似乎是因为在您使用仅存在于 32 位的 Microsoft ODBC 驱动程序之前),那么 ODBC 驱动程序也必须是 32 位的!你不能混合架构。
当然,您可以在 64 位 Windows 上安装 32 位应用程序/驱动程序。
ODBC 驱动程序需要 Oracle 客户端,但看起来您已经安装了它。
从连接字符串中删除空格字符。
如果您需要同时安装 32 位和 64 位 ODBC 驱动程序,请按照以下说明操作:BadImageFormatException。这将在安装了 32 位 Oracle 客户端组件的 64 位模式下运行时发生
推荐阅读
- python - 如何访问 Python 创建的字典
- nativescript - Nativescript - 按下通知时如何将应用程序置于前台
- javascript - 制表符不是函数
- ruby - 如何获取简单 Sequel Dataset 对象的表名?
- here-api - HereMaps API 端点返回带有换行符的 json
- laravel - Laravel 邮政编码查询
- c# - 使用参数调用存储过程以返回列表
- sql - 数据大小与查询执行
- advanced-custom-fields - ACF 中继器字段仅显示一行
- liferay - 如果 liferay 放置 30 分钟然后更新,则会出现 CSRF 令牌错误