エラー文
LaravelでtableやSeederファイルを作成してphp artisan migrate をしたらエラーが!
SQLSTATE[HY000] [2002] No such file or directory (SQL: select * from information_schema.tables where table_schema = task and table_name = migrations and table_type = ‘BASE TABLE’)
1.PDOException::(“SQLSTATE[HY000] [2002] No such file or directory”)
2.PDO::__construct(“mysql:host=localhost;port=3306;dbname=task”, “DB_USERNAME”, “DB_PASSWORD”, [])
.envの設定ミスなんだろうな〜と思うものの、設定に思い当たるところはなく、、最近使い始めたMAMPの設定をconfig/database.phpに書く必要があったようです!
これはMAMPを利用してLaravelを使おうとしている人向けの記事です(*´∀`)
MAMPでの設定確認
MAMPを起動させ、一番右のServerがStartしていることを確認
([Stop Server]となっていればOK)
[Open WebStart page]へ行き、[PHPMYADMIN]を開く下の方へ行くと、MySQLについての記述があります
laravel config/database.phpファイルの設定
config/database.phpのmysql記述欄のunix_socketにMAMPの設定を追加
‘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’, ‘/Applications/MAMP/tmp/mysql/mysql.sock’),
‘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’),
]) : [],
],
これでmigrateができました(*´∀`)