Не нашел ничего полезного в сети.
Мне не удалось запустить Postgre на облачном сервере Plesk, поэтому я попытался переключиться на 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 выглядит чистым. DLL-файлы MySQL находятся в каталоге / ext. С postgre все нормально работало. Может у кого есть идея, прежде чем я все заново настрою. Спасибо
Также почему вы используете нулевой оператор объединения: ?? в своем имени пользователя и пароле? Они необходимы для подключения, поэтому разве отсутствие этих значений не должно вызывать ошибку вместо простого использования null?
Источник - код Symfony. Я ничего не понимаю в этом. Он выводит трассировку стека с 91 элементом. Впервые у меня возникла ошибка Symfony вместо обычной отформатированной страницы ошибок Laravel.






Проблема заключалась в том, что номер порта по-прежнему был установлен на postgre в .env. Laravel, по-видимому, сначала пытается установить соединение, даже если на странице нет доступа к базе данных.
Я предполагаю, что ваша попытка подключения вызывает исключение.
tryAgainIfCausedByLostConnectionпросто будет продолжать попытки подключиться? Наверное, поэтому у тебя тайм-аут. Проверьте ваше соединение.