Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Здравствуйте.
Проблема с подключением laravel 10 к mysql, причем до этого раз 5 устанавливал локально (sail/docker/ubuntu) laravel 10 и все работало и подключалось корректно.
sail artisan db выдает ошибку:
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1:3306' (111)
Symfony\Component\Process\Exception\ProcessFailedException
The command "'mysql' '--host=127.0.0.1' '--port=3306' '--user=root' '--password=12345' '--default-character-set=utf8mb4' 'shop'" failed.
Exit Code: 1(General error)
Working directory: /var/www/html
Output:
================
Error Output:
================
at vendor/symfony/process/Process.php:267
263▕ */
264▕ public function mustRun(callable $callback = null, array $env = []): static
265▕ {
266▕ if (0 !== $this->run($callback, $env)) {
➜ 267▕ throw new ProcessFailedException($this);
268▕ }
269▕
270▕ return $this;
271▕ }
+13 vendor frames
14 artisan:35
Illuminate\Foundation\Console\Kernel::handle()
При создании миграции sail artisan migrate вылетает такая ошибка:
SQLSTATE[HY000] [2002] Connection refused (Connection: mysql, SQL: select * from information_schema.tables where table_schema = shop and table_name = migrations and table_type = 'BASE TABLE')
at vendor/laravel/framework/src/Illuminate/Database/Connection.php:793
789▕ // If an exception occurs when attempting to run a query, we'll format the error
790▕ // message to include the bindings with SQL, which will make this exception a
791▕ // lot more helpful to the developer instead of just the database's errors.
792▕ catch (Exception $e) {
➜ 793▕ throw new QueryException(
794▕ $this->getName(), $query, $this->prepareBindings($bindings), $e
795▕ );
796▕ }
797▕ }
+38 vendor frames
39 artisan:35
Illuminate\Foundation\Console\Kernel::handle()
Кэш чистил, перезагружал, менял данные в файлах .env и config/database.php с 127.0.0.1 на localhost, а также с паролем, без пароля.
Куча вариантов нагуглил решения схожих проблем, но ни одно не подошло мне.
Может есть у кого какие идеи?
Файл .env сейчас такой:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=shop
DB_USERNAME=root
DB_PASSWORD=12345
Файл config/database.php сейчас такой:
'mysql' => [
'driver' => 'mysql',
'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'shop'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', '12345'),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'prefix_indexes' => true,
'strict' => true,
'engine' => null,
'options' => extension_loaded('pdo_mysql') ? array_filter([
PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
]) : [],
],
Не в сети
Может кому поможет!
Вопрос я решил удалением всех томов с docker (мне они были ненужны).
Ранее я неверно считал, что команды docker system prune и docker system prune -a сносит все с docker, в том числе и тома (как оказалось нет).
Удаление с docker вышеперечисленными командами + удаление томов командой docker volume rm $(docker volume ls -q) + удаление каталога проекта и чистая установка laravel в новый проект решила вопрос.
Все действия с mysqli доступны (проверил выполнением миграций, входом в бд).
Не в сети
Страницы 1