用于基于 ARM 的 Debian 设备的 Oracle Instant Client

2022-01-17 00:00:00 installation oracle11g debian arm oracle

正如标题所示,Oracle 不提供基于 ARM 的即时客户端.这是与数据库服务器通信所必需的.(这是我们项目所需的唯一方法)那么任何人都可以帮助我们安装/编译/修改 oracle 即时客户端以使其在基于 Debian arm 的系统上运行吗?目标oracle数据库11g

As the title suggest Oracle doesn't provide a ARM based instant client. Which is necessary to communicate with the DB server. (this is the only way we need for our project) So can any one help us to install/compile/modify the oracle instant client to make it work on Debian arm based system ? Targer oracle database 11g

Instant Client for Microsoft Windows (x32)
Instant Client for Microsoft Windows 64-bit Itanium
Instant Client for Microsoft Windows (x64)
Instant Client for Linux x86
Instant Client for Linux x86-64
Instant Client for Linux Itanium
Instant Client for Linux AMD64 (32-bit and 64-bit)
Instant Client for Linux on Power (32-bit)
Instant Client for Linux on Power (64-bit)
Instant Client for z/Linux (31-bit and 64-bit)
Instant Client for Mac OS X (Intel x86) (32-bit and 64-bit)
Instant Client for Mac OS X (PPC)
Instant Client for Solaris Operating System (SPARC) (64-bit)
Instant Client for Solaris Operating System (SPARC) (32-bit)
Instant Client for Solaris x86
Instant Client for Solaris x86-64
Instant Client for HP-UX PA-RISC (64-bit)
Instant Client for HP-UX PA-RISC (32-bit)
Instant Client for AIX5L (64-bit)
Instant Client for AIX5L (32-bit)
Instant Client for HP Tru64 UNIX
Instant Client for HP-UX Itanium (64-bit)
Instant Client for HP-UX Itanium (32-bit)

我检查的最后一个问题是 2-3 年前的老问题了,我想现在可能有一些方法?

Last questions i check on this were very old like 2-3 yrs back i guess there might be some method now ?

推荐答案

据我所知,Oracle 没有,也从来没有,并且可能在不久的将来也不会为基于 ARM 的 Linux 提供 Instant Client.由于它是专有软件,因此您几乎没有机会编译"它...

As far as I know, Oracle does not, and never has, and probably never will in a near future provide an Instant Client for ARM-based Linux. As it is a proprietary software, there is little chances that you could "compile" it...

  1. 一种选择是编写自己的驱动程序来实现 Oracle 的有线协议.但这远非微不足道.没有提及(可能的)法律影响,因为这是一个专有协议.

  1. An option would be to write your own driver implementing of Oracle's wire-protocol. But this is far from trivial. Not mentioning the (possible) legal implications as this is a proprietary protocol.

目前,如果您想直接从您的 ARM 机器连接到 Oracle 服务器,最好的选择可能是使用 JDBC 瘦驱动程序,因为它是纯 Java 和应该在 ARM 的 JVM 上运行.如果您的应用程序不是用 Java 编写的,您可能需要自己编写某种网关——或者可能通过 JNI 包装自己的东西(听起来像个杂牌,不是吗?)

For now, your best bet if you want to connect directly from your ARM box to an Oracle server, is probably to use the JDBC thin-driver as it is pure-java and should run on a JVM for ARM. If your application is not written in Java, you will probably need to write some kind of gateway yourself -- or wrap your own stuff through JNI maybe (sounds like a kludge, no?)

根据您的需要和项目要求,也许您应该研究让某种Web 服务"充当 Oracle 的网关并在您的网络某处的 x86/amd64 机器上运行的选项.然后您的客户端(无论是否基于 ARM)将通过它访问底层数据库.

Depending on your needs and your project requirements, maybe you should investigate the option of having some kind of "web service" acting as a gateway to Oracle and running on an x86/amd64 box somewhere on your network. Then your clients (ARM-based or not) would access to the underlying DB through it.

您可以在 ARM 设备上使用许多开源 RDMBS 客户端.也许您可以设法在 Oracle 和其中一个 RDBMS 之间同步数据?

There are many clients for open-sources RDMBS that you can use on ARM devices. Maybe you could manage to synchronize data between Oracle an one of these RDBMS ?

就我自己而言,我会推动第三个解决方案.但是,这一切都取决于您的实际需求.

As of myself, I would push toward the third solution. But once again, this is all depending on your actual needs.

鉴于您在下面的各种评论,我认为选择 ARM 目标是一个错误,因为您绝对需要嵌入 即时客户端 以连接到 Oracle RDBMS.

Given your various comments below, I would say that the choice of an ARM target was an error given your absolute need to embed instant client to connect to an Oracle RDBMS.

也许小尺寸的英特尔基于 Atom 的主板在这里会是更好的选择?A 看看 例如 MinnowBoard 甚至 英特尔伽利略.这些只是建议.我从来没有和他们中的任何一个一起工作过.通过谷歌搜索,您可能会找到其他/更好的选择.检查 Linux 兼容性/易于安装 - 您将拥有一个成熟的 x86 架构.

Maybe a small form-factor Intel's Atom based board would have been a better choice here? A Take a look for example at MinnowBoard or even Intel Galileao. Those are only suggestions. And I never worked with any of them. You will probably be able to find other/better options by googling a little. Check for the Linux compatibility/ease of install -- and you will have a full fledged x86 architecture at hand.

相关文章