В настоящее время я пытаюсь установить клиент времени выполнения IBM Data Server и некоторые расширения pdo_ibm и ibm_db2 для использования в проекте PHP/Laravel.
На данный момент я установил WSL 2, чтобы иметь среду Ubuntu в Windows. Я также установил последнюю возможную версию PHP и Composer, но прежде чем продолжить, я хотел посмотреть, возможно ли это вообще. Поскольку графического интерфейса нет, есть ли способ получить такие файлы для Ubuntu, а также установить клиент? Я могу легко переместить что-нибудь со своего «компьютера» в систему Ubuntu, но не могу найти ничего связанного и не знаю, с чего начать.
У меня есть расширения, но в виде DLL для Windows, а не для Ubuntu.
По какой-то причине вы хотите попробовать PHP + php_ibm_db2 + клиент Db2, работающий на ubuntu-in-WSL2, в отличие от собственного ubuntu x64 или собственного Windows x64. PHP может работать с Db2 во всех трех из них. Итак, самый простой ответ: «да, конечно, это возможно с ubuntu-in-wsl2, вам просто нужно знать, как это сделать».
Как вы видели, существуют готовые двоичные копии оболочки php_ibm_db2 для собственной MS-Windows, доступные в репозитории GitHub. Эта оболочка представляет собой тонкий слой, использующий базовый отдельно установленный драйвер Db2. Предварительно созданные версии этой оболочки существуют только для среды Microsoft-Windows (только x64 и x32).
Для linux/unix необходимо самостоятельно собрать оболочку php_ibm_db2 из исходного кода. Для Linux не существует готового репозитория, поскольку Linux работает на многих процессорных архитектурах, а не только на x64. Эта операция сборки описана по адресу https://github.com/php/pecl-database-ibm_db2. Эта деятельность требует некоторой компетентности в разработке, поскольку сначала должны быть установлены предварительные условия (например, компилятор gcc, включаемые файлы Db2, библиотеки времени компоновки для Db2 и т. д., а также некоторая конфигурация среды и т. д., а также make, tar и т. д.). .). Если вам не хватает этих навыков, возможно, будет разумно поручить сборку опытному разработчику.
Как и в случае с собственной версией php_ibm_db2.dll для Microsoft-Windows, эквивалентная общая библиотека Linux должна использовать отдельно установленный базовый драйвер Db2 для выполнения реальной работы. Самый простой и самый эффективный метод — использовать крошечный драйвер IBM (нулевой графический интерфейс, нулевая установка), доступный по адресу https://public.dhe.ibm.com/ibmdl/export/pub/software/data/db2/drivers/. odbc_cli/ (следя за тем, чтобы разрядность и платформа вашего двоичного файла PHP соответствовали). После загрузки вам необходимо распаковать его (unzip/gunzip и т. д.) в каталог, и он будет готов к использованию только на платформах Linux/Unix/Windows/Cloud сервера Db2. Для платформ целевого сервера базы данных Z/OS необходима дополнительная настройка и лицензирование, которые здесь не рассматриваются, за подробностями обратитесь к Центру знаний Db2.
В вашем вопросе упоминается клиент времени выполнения Db2, но это неправильный инструмент для действий по сборке, поскольку в нем отсутствуют необходимые файлы. Вместо этого клиент времени выполнения предназначен для действий после сборки, настройки и выполнения. Именно по этой причине я советую освоить clidriver, который включает в себя необходимые файлы для сборки и запуска при минимально возможном объеме. Помимо того, что клиент времени выполнения Db2 не подходит для ваших непосредственных нужд, он имеет метод автоматической установки (т. е. без графического пользовательского интерфейса) для установки только из командной строки, как описано в Центре знаний Db2, поэтому обратитесь к нему за более подробной информацией.
Спасибо за ваши ответы. В итоге я использовал Ubuntu 20.04 в WSL2, установил xdebug, ibm_db2 и pdo_ibm с PECL, и все это в CLI.
Вы потратили время, пытаясь найти руководства по установке того, что вам нужно, с помощью командной строки (CLI) в Ubuntu? Существуют тысячи руководств/руководств по установке и настройке всевозможных вещей с помощью CLI в Ubuntu. Все началось с использования aptitude для клонирования репозитория git и его самостоятельной компиляции на своем компьютере. Поскольку это WSL2, вы можете пробовать столько, сколько хотите, и просто сбрасывать настройки снова, если что-то пойдет не так.