PDO_OCI: не удалось найти драйвер - PullRequest
4 голосов
/ 13 января 2012

Сегодня моя проблема связана с PDO, OCI8 и PDO_OCI. Но с самого начала.

Я использую Ubuntu 11.10 и версию PHP: 5.3.8-1ubuntu3. Я установил Oracle 10g Express, настроил его, и он работает нормально. Следующим шагом, который я должен был сделать, была интеграция между Oracle и PDO. Поэтому я нашел эту ссылку: http://lacot.org/blog/2009/11/03/ubuntu-php5-oci8-and-pdo_oci-the-perfect-install.html и делаю это шаг за шагом (без установки PDO, который был установлен ранее с помощью pdo_mysql). Когда я пытался сделать это на Ubuntu 10.10 - это работало. Теперь, 11 октября, я получаю сообщение об ошибке: «Не удалось найти драйвер» при попытке открыть приложение на веб-сайте.

Я проверил phpinfo () и в строке PDO есть: поддержка PDO - включена, драйверы PDO - mysql. В этом разделе ничего не говорится об oci, хотя под несколькими строками у меня включен драйвер PDO для OCI 8 и более поздних версий.

Надеюсь, кто-нибудь может помочь с этим. С наилучшими пожеланиями, Матео.

Ответы [ 2 ]

0 голосов
/ 10 июля 2014

Вы также можете использовать pecl.Таким образом, вы можете избежать перекомпиляции PHP и продолжать использовать PHP-пакеты Ubuntu.См. Это руководство: Установка драйверов PHP и Oracle PDO в Ubuntu .

0 голосов
/ 26 июня 2012

Вам нужно перекомпилировать PHP с поддержкой PDO_OCI:

--with-pdo-oci=instantclient,/usr,10.2.0.3

Конечно, мгновенная версия клиента заменяется установленной вами.

PDO - это тип доступа. MySQL и OCI являются типами баз данных. Если вы установили базовый пакет PDO, вам все равно нужно установить драйверы. Драйверы не поставляются с PDO по умолчанию. Когда вы установили PDO MySQL, PDO OCI не был установлен, так как это отдельный модуль.

...