如何在 WSL 中安装 IBM DSR 客户端和 PHP 的一些扩展

问题描述 投票:0回答:1

我目前正在尝试安装 IBM Data Server Runtime Client 和一些扩展 pdo_ibm 和 ibm_db2,以在 PHP / Laravel 项目中使用。

目前,我已经安装了 WSL 2,以便在 Windows 上拥有 Ubuntu 环境。我还安装了最新的 PHP 版本和 Composer,但在继续之前,我想看看它是否可能。由于没有图形界面,有没有办法为Ubuntu获取此类文件并安装客户端?我可以轻松地将东西从我的“计算机”移动到 Ubuntu 系统,但我无法找到任何相关内容,而且我不知道从哪里开始。

我确实有扩展,但作为 DLL,适用于 Windows,而不适用于 Ubuntu。

php db2 windows-subsystem-for-linux
1个回答
0
投票

出于某种原因,您想尝试在 ubuntu-in-WSL2 上运行 PHP + php_ibm_db2 + Db2 客户端,这与本机 ubuntu x64 或本机 Windows x64 不同。 PHP 可以在所有这三个方面与 Db2 配合使用。所以,最简单的答案是“是的,当然可以使用 ubuntu-in-wsl2,你只需要知道如何操作”。

正如您所见,可以通过 github 存储库获得适用于本机 MS-Windows 的 php_ibm_db2 包装器的 预构建 二进制副本。该包装器是一个薄层,使用底层单独安装的 Db2 驱动程序。此包装器的预构建版本适用于 Microsoft-Windows 环境(仅限 x64 和 x32)。

对于linux/unix,需要自己从源代码构建php_ibm_db2包装器。 Linux 没有预先构建的存储库,因为 Linux 可以在许多 cpu 架构上运行,而不仅仅是 x64。此构建活动在 https://github.com/php/pecl-database-ibm_db2 进行了描述。此活动需要一定的开发能力,因为必须首先安装先决条件(例如 gcc 编译器、Db2 包含文件和 Db2 的链接时库等,以及一些环境配置等,以及 make、tar 等) .)。如果您缺乏这些技能,那么让经验丰富的开发人员为您进行构建可能是明智之举。

与 php_ibm_db2.dll 的本机 Microsoft-Windows 版本一样,Linux 等效共享库需要使用单独安装的底层 Db2 驱动程序来完成实际工作。最简单和最有效的方法是使用 IBM 的小型占用空间(零 GUI、零安装)clidriver,可从 https://public.dhe.ibm.com/ibmdl/export/pub/software/data/db2/drivers 获取/odbc_cli/(注意匹配 PHP 二进制文件的位数和平台)。下载后,您必须将其解压(unzip/gunzip等)到一个目录中,并且它仅适用于Db2-server的Linux/Unix/Windows/Cloud平台。对于 Z/OS 目标数据库服务器平台,需要额外的配置和许可,此处未涵盖,请参阅 Db2 知识中心了解详细信息。

您的问题提到了 Db2 运行时客户端,但这不是构建活动的正确工具,缺少必要的文件。相反,运行时客户端用于构建后、配置和运行时活动。这就是我建议使用 clidriver 的原因,其中包括以尽可能小的占用空间构建和运行所需的文件。除了无法满足您的即时需求之外,Db2 运行时客户端还具有用于仅命令行安装的静默安装方法(即无 GUI),如 Db2 知识中心所述,因此请参阅该方法以获取更多详细信息。

© www.soinside.com 2019 - 2024. All rights reserved.