Подключить Oracle к Laravel
Делал все по инструкциям. Загрузил instantclient-basic-nt-12.2.0.1.0. Распаковал, добавил в системную переменную "Путь". Скачал php-8.0.6-Win32-vs16-x64, распаковал, добавил в системную переменную "Путь". Указал extension_dir, раскоментировал extension=oci8_12c, перезагрузил. Запускаю Composer-Setup.exe, выходит ошибка
Unable to load dynamic library 'oci8_12c' (%1 не является приложением Win32).
Всё скачивалось 64, причем здесь Win32, попробовал все рекомендации интернетов, успехом не увенчалось, подскажите пож. как быть.
Ответы (2 шт):
Установил instantclient-basic-windows.x64-19.3.0.0 (годовой давности), сменил версию php c 8 на 7.4, и все заработало. Стоило это несколько дней тупой переборки всех доступных вариантов, пока не нашел сохранившийся старый оракловский клиент. В интернете ничего толкового никто не советовал. Я в веб разработке совсем недавно, может кто скажет, как эту проблему по-уму надо было решать? (да и не до конца она решена, с восьмеркой по прежнему не работает)
В вопросе: instantclient-basic-nt-12.2.0.1.0, по видимому, сборка для устаревших версий Windows NT, 2000. Она не будет работать на новых версиях.
Устанавливаемый клиент должен соответствовать по архитектуре и разрядности приложениям его использующим. Скачивать следует с официального сайта.
Для Windows 64 bit instantclient-basic-windows.x64-xx.x.x.x. В самом низу страницы по этой ссылке, есть инструкция по установке Instant Client Installation for Microsoft Windows 64-bit. Необходимо учесть, впеременная окружения Path не должна содержать путей от старых установок клиента, что можно проверить в команднoй строке: C:\Users\iam> path.
Версия клиента xx.x.x.x должна быть не ниже версии БД, выше допускается.