Oci8 Exception - Laravel on Centos 7 - PullRequest
       51

Oci8 Exception - Laravel on Centos 7

0 голосов
/ 30 октября 2019

Я пытаюсь выполнить запрос оракула на Laravel. Проект отлично работает на Windows, но сейчас я пытаюсь настроить его в среде живого сервера. Я установил php и oci8 и необходимый пакет yajra для подключения laravel к oracle. Модели таблиц были готовы из первоначальных проектов, и php artisan migrate создал таблицы в моей базе данных, как и ожидалось. Однако при запуске проекта и запросе через контроллер laravel я получаю эту ошибку:

Yajra \ Pdo \ Oci8 \ Exceptions \ Oci8Exception

Код ошибки:

/var/www/laravel/vendor/yajra/laravel-pdo-via-oci8/src/Pdo/Oci8.php

         * @param string $dsn
         * @param string $username
         * @param string $password
         * @param array  $options
         * @param string $charset
         * @throws Oci8Exception
         */
        private function connect($dsn, $username, $password, array $options, $charset)
        {
            $sessionMode = array_key_exists('session_mode', $options) ? $options['session_mode'] : null;

            if (array_key_exists(PDO::ATTR_PERSISTENT, $options)) {
                $this->dbh = @oci_pconnect($username, $password, $dsn, $charset, $sessionMode);
            } else {
                $this->dbh = @oci_connect($username, $password, $dsn, $charset, $sessionMode);
            }

            if (! $this->dbh) {
                $e = oci_error();
                throw new Oci8Exception($e['message']);
            }
        }

В чем может быть причина? Возможно ли oci8 не работать? Если так, почему php artisan migrate создал таблицы в базе данных?

Я серьезно застрял! Любой совет ценен!

ОС: сервер centos7 База данных: oracle 12c release2 Версия Laravel: 5.7.28

...