【问题标题】:FreeBSD POSIX C Oracle APIFreeBSD POSIX C Oracle API
【发布时间】:2013-05-24 09:07:04
【问题描述】:

我无法找到 FreeBSD 的 Oracle 调用接口。我可能遗漏了一些简单的东西,但我在网上搜索了几天,最后在这里提出了问题。

我的任务相当简单:用 posix C 编写一个连接到 Oracle 数据库并在 FreeBSD 机器上运行的程序。在最坏的情况下,我将放弃 POSIX 和 FreeBSD 部分并使其在 Linux 上运行,但到目前为止,我的目标是在 BSD 上执行此操作。这是我目前发现的:

ftp://ftp.atnet.ru/pub/OS/FreeBSD/oracle/otl/otl.htm

一个我还没有测试过的 GNU 库,如果有人知道它,请告诉我:

http://sourceforge.net/projects/orclib/files/OCILIB%20Sources/3.12.1/

如果您对如何做得更好有任何建议,请告诉。如果您有这种情况的经验,甚至更好。

【问题讨论】:

  • AFAIK oracle 不支持 FreeBSD。这意味着不能保证 oracle 库可以在该平台上运行。所以,从这个意义上说,你是如履薄冰。您打算如何连接到数据库? ODBC?
  • @jimmcnamara:当 OP 提到 OCI 时,我怀疑连接应该通过 OCI 完成。
  • @jim mcnamara 理想情况下,Oracle 数据库的连接器应该是已经运行并投入生产的大型软件的一个模块。这就是为什么我坚持使用 FreeBSD 并尝试连接一些正在开发它的 oracle 库,即使它不是官方的。
  • OCI 需要像 SQLNET 这样的传输。它要求 oracle 库 - 例如 libclntsh.so 和公司,驻留在本地机器上。这就是我要问的原因。在尝试使 API 正常工作之前,您必须知道它是如何设置的。我猜它是 ODBC。 OCI 确实是一个编程接口,虽然它很老。
  • @jimmcnamara 感谢您的所有努力,但我们在没有编写新 API 的情况下使该方案正常工作,我们将 mysql 作为中间基础,通过 ODBC 连接到 oracle。从性能角度来看,这是一个很大的降级,但它工作得很好,而且老员工也很容易管理。感谢大家的帮助和关注。

标签: c oracle api posix freebsd


【解决方案1】:

Oracle 本身不支持 FreeBSD。但是,他们的 Linux 客户端库的某些端口可以在操作系统上运行:

不幸的是,以上两个目前仅适用于 i386,但您也许可以使用与移植作者相同的技术来按摩 x86_64 Linux 二进制文件以在 FreeBSD/amd64 下工作。

然后有一个开源的ODBC驱动的端口在:

这个需要 oracle8-client,因此此时也是 i386-only。

【讨论】:

    【解决方案2】:

    有用于 Mac OS X 的 oracle 实例客户端。AFAIK Mac OS 在某种程度上与 FreeBSD 代码库相关。因此,也许,Mac OS 客户端的适配会比 Linux 客户端更容易。 (不过我没试过)。

    【讨论】:

      猜你喜欢
      • 2013-09-04
      • 1970-01-01
      • 2020-10-20
      • 1970-01-01
      • 2013-10-30
      • 1970-01-01
      • 2016-02-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多