用于远程访问遗留资源的 ODBC 代理?

发布于 2024-08-17 23:06:56 字数 381 浏览 2 评论 0原文

我们的项目使用 AcuCorp 的 AcuODBC 驱动程序来访问旧版 Vision 数据库。问题是我们只有 32 位驱动程序,安装程序根本无法在 64 位服务器上运行。我需要一种使用 SSIS 从该系统提取数据的方法。据我所知,有 3 个选项:

  1. 设置全新的 SQL Server 带有 SSIS 和 AcuODBC 的实例 32 位虚拟机上的驱动程序(成本高昂)
  2. 尝试 将 32 位驱动程序破解到我们的 手动64位服务器(失败 俯卧且无支撑)
  3. 设置一个 带有某种“代理”的 32 位虚拟机 我们的 64 位 SSIS 可以使用的服务 提取数据。

第一个选择是最不可取的。如果您对选项 2 或 3 有任何建议,或者我没有想到的其他任何建议,我很乐意听到。

Our project uses AcuCorp's AcuODBC driver to access a legacy Vision database. The problem is that we only have a 32-bit driver and the installer simply won't run on our 64-bit servers. I need a way to use SSIS to pull data from that system. As far as I can tell, there are 3 options:

  1. Set up a whole new SQL Server
    instance with SSIS and the AcuODBC
    drivers on a 32-bit VM (costly)
  2. Try
    to hack the 32-bit driver onto our
    64-bit server manually (failure
    prone and unsupported)
  3. Set up a
    32-bit VM with some sort of "proxy"
    service that our 64-bit SSIS can use
    to pull the data.

The first option is the least desirable. If you have any suggestions for options 2 or 3, or anything else I haven't thought of, I'd love to hear them.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

静待花开 2024-08-24 23:06:56

所以我解决了问题,但没有真正回答我的问题,所以我将发布我的解决方案以及我找到的一些资源。

我的解决方案是设置一个安装了 ODBC 驱动程序的 32 位 Windows VM,并使用 SQL Server 2008 Express Advanced(免费!)创建一个可以从 64 位 SSIS 访问的链接服务器环境。这非常有效,我不敢相信我没有早点想到这一点。

不管怎样,还对数据库中继、代理和网桥进行了一些研究。

就我而言,最好搜索的是“ODBC-ODBC 桥”。有一些商业产品,没有免费的。一千块左右。有一种 50 美元的 ODBC 中继产品并不值得,因为它使用专有的 TCP/IP 协议,而不是桥接到 ODBC 协议。

如果您的客户端可以使用 JDBC,则可以将一些免费的 JDBC-JDBC 桥与 JDBC-ODBC 桥结合起来创建可行的中继。还有一个开源 ODBC-JDBC 桥接项目(不确定质量),也许可以用来创建 ODBC-JDBC-JDBC-ODBC 桥接器。哈。

最后一个选项(我非常接近这样做)是编写一个简单的 .NET Web 服务,该服务接受凭据和查询并以 CSV 形式返回结果。 (然而,就我而言,ODBC 驱动程序无法正确地与 .NET 一起工作,因为它基于比 .NET 框架使用的旧版本的 ODBC。否则我认为这应该可以正常工作)。

显然,您需要了解其中任何一个的安全含义。

So I solved the problem without really answer my question, so I'll post my solution as well as some resources I found.

My solution was to set up a 32-bit Windows VM with the ODBC drivers installed and use SQL Server 2008 Express Advanced (free!) to create a linked server that I could access from my 64-bit SSIS environment. This works great, I can't believe it didn't occur to me sooner.

Anyway, also did some research on database relays, proxies, and bridges.

The best thing to search for in my case was "ODBC-ODBC bridge". There are a couple of commercial products out there, nothing free. Around a thousand bucks. There is a $50 ODBC relay product that is not worth it because it uses a proprietary TCP/IP protocol, rather than bridging to the ODBC protocol.

There are some free JDBC-JDBC bridges that can be combined with the JDBC-ODBC bridge to create workable relay if your client can use JDBC. There is also an open source ODBC-JDBC bridge project (not sure of the quality) that could perhaps be used to create an ODBC-JDBC-JDBC-ODBC bridge. Ha.

The final option, which I came very close to doing, was to write a simple .NET web service that takes credentials and a query and returns results as CSV. (In my case however, the ODBC driver did not correctly work with .NET as it was based on an older version of ODBC than the .NET framework uses. Otherwise I think this would have worked ok).

Obviously you need to understand the security implications of any of these.

绾颜 2024-08-24 23:06:56

问题是我们只有一个
32 位驱动程序和安装程序简单
无法在我们的 64 位服务器上运行。

我对此很好奇。它是非标准安装程序吗?

另外,安装是不是很复杂,无法手动完成?即使用32位模拟环境版本的regedit和regsvr32手动执行安装。

The problem is that we only have a
32-bit driver and the installer simply
won't run on our 64-bit servers.

I'm curious about this. Is it a non-standard installer?

Also, is the install that complex that is cannot be done manually? I.e. using the 32-bit emulation environment versions of regedit and regsvr32 to perform the installation manually.

时间海 2024-08-24 23:06:56

版本 8.1.3.1 及更高版本有 32 位和 64 位版本。我无法让版本 9 工作,但 8.1.3.1 64 位似乎可以在 2008R2 上的 SSIS 2008 上正常工作。

Version 8.1.3.1 and up comes in both 32 and 64bit versions. I couldn't get version 9 working, but 8.1.3.1 64-bit seems to be working ok with SSIS 2008 on 2008R2.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文