我最近在macOS HighSiera10.13.6上通过自制完成了MySQL8.0.19的新安装。我可以看到,mysql服务是在我执行brew services list时启动的。我也可以通过控制台使用mysql -u root登录,执行查询等等。
我使用Valet安装了一个新的Laravel项目,但无法运行数据库迁移。我的环境变量看起来都是正确的:
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=我可以连接到MySQL工作台使用这些信息(没有根pw)。然而,每当我运行php artisan migrate时,我就没有任何错误,也没有任何控制台输出。只是卡住了。当我使用php artisan tinker,然后是DB::connection()->getPdo()时,也会发生同样的事情。没有输出也没有错误。也没有任何东西登录到storage/logs中。
相关config/database.php
...
'default' => env('DB_CONNECTION', 'mysql'),
'connections' => [
'mysql' => [
'driver' => 'mysql',
'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'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'),
]) : [],
],
],
...将DB::connection()转储到随机视图中将产生正确的配置:
protected 'config' =>
array (size=15)
'driver' => string 'mysql' (length=5)
'host' => string '127.0.0.1' (length=9)
'port' => string '3306' (length=4)
'database' => string 'laravel' (length=7)
'username' => string 'root' (length=4)
'password' => string '' (length=0)
'unix_socket' => string '' (length=0)
'charset' => string 'utf8mb4' (length=7)
'collation' => string 'utf8mb4_unicode_ci' (length=18)
'prefix' => string '' (length=0)
'prefix_indexes' => boolean true
'strict' => boolean true
'engine' => null
'options' =>
array (size=0)
empty
'name' => string 'mysql' (length=5)https://stackoverflow.com/questions/59812646
复制相似问题