Поэтому я использую мой cmd в своей папке laravel, и я пытался это сделать (php artisan migrate: install). Появились 2 ошибки.
[PDOException] SQLSTATE [HY000] [2006] Сервер MySQL ушел
[ErrorException] PDO :: __ construct (): сервер MySQL ушел
Может кто-нибудь объяснить, что я сделал неправильно?
Это не проблема Laravel, а общая проблема MySQL. Возможно, сервер не работает. Вы уверены, что используете MySQL в фоновом режиме?
Проверьте эту ссылку: MySQL Gone Away
Выполните следующие проверки в своей системе:
После этого попробуйте снова запустить команду миграции, а именно:
php artisan migrate
Как объяснено здесь
Дайте нам знать, если это поможет :).
Для меня проблема заключалась в том, что я назначил неправильный порт в файл .env
проекта Laravel. Позже, когда я сопоставил его с файлом my.cnf
, он работал.
Я использую проект Ubuntu 16.04 + nginx + MariaDB + Laravel.
Во время запроса вы потеряли соединение SQL с сервером. Это временно проблема. Это связано с очень низким значением по умолчанию max_allowed_packet
.
Повышение max_allowed_packet
в my.cnf
(в [mysqld]) до 8 или 16M обычно исправляет его.
[mysqld] max_allowed_packet=16M
ПРИМЕЧАНИЕ. Это может быть установлено на вашем сервере по мере его запуска. Вам необходимо restart
службу MySQL, как только вы закончите.
Использовать: set global max_allowed_packet=104857600
. Мое значение устанавливает значение 100 МБ.
В моем случае проблема заключалась в том, что я изменил DB_HOST
на localhost
но он был исправлен, сохранив его по default
т.е. 127.0.0.1
и порт по умолчанию 3306
. Вот конфигурация localhost в xampp:
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=hmb DB_USERNAME=root DB_PASSWORD=
Хотя я использую localhost:8081/phpmyadmin
для доступа к моей db