Изменение базы данных с Postgre на MySQL в приложении Laravel приводит к исключению тайм-аута / Symfony - PullRequest
0 голосов
/ 07 сентября 2018

Не нашел в сети ничего полезного.

Мне не удалось запустить Postgre на Plesk Cloud Server, поэтому я попытался перейти на MySQL в моей системе разработки Windows.

Я изменил соответствующие записи в .env и database.php и раскомментировал строки mysqli / pdo_mysql в php.ini.

mysqli, похоже, вообще не работает, поскольку приводит к исключению Query / PDO / "не удалось найти драйвер базы данных", так же, как если бы вообще не было активного расширения mysql.

pdo_mysql дает изменение, но приводит к таймауту, за которым следует длинный вывод html, начиная с

 Symfony \ Component \ Debug \ Exception \ FatalErrorException (E_UNKNOWN)

Превышено максимальное время выполнения 30 секунд

и сосредоточены на

C:\Users\....\vendor\laravel\framework\src\Illuminate\Database\Connectors\Connector.php


    /**
     * Create a new PDO connection.
     *
     * @param  string  $dsn
     * @param  array   $config
     * @param  array   $options
     * @return \PDO
     */
    public function createConnection($dsn, array $config, array $options)
    {
        list($username, $password) = [
            $config['username'] ?? null, $config['password'] ?? null,
        ];

        try {
            return $this->createPdoConnection(
                $dsn, $username, $password, $options
            );
        } catch (Exception $e) {
            return $this->tryAgainIfCausedByLostConnection(
                $e, $dsn, $username, $password, $options
            );
        }
    }
Arguments
"Maximum execution time of 30 seconds exceeded"

Apache error.log выглядит чисто. MySQL dll присутствует в / ext. С postgre все работало нормально. Может быть, у кого-то есть идея, прежде чем я все заново настрою. Спасибо

1 Ответ

0 голосов
/ 25 сентября 2018

Ну, проблема была в том, что номер порта все еще был установлен на postgre в .env. Laravel, по-видимому, пытается установить соединение изначально, даже если на странице нет доступа к базе данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...