現在困っていること
laravel+vue.js+mysqlを使ってローカル上で作成したアプリをherokuにデプロイし、
heroku run php artisan migrate
を実行したところ、エラーが出てDBが作成できません。
※herokuで作成されたURIにアクセスしたところ、DBに関係のないページは正常に表示されています。
初めてのデプロイ作業で同じエラーで丸2日頑張ってみましたが完全に詰まってしまい困っております。アドバイスをお願いいたします。
発生している問題・エラーメッセージ
In Connection.php line 664: SQLSTATE[HY000] [2002] No such file or directory (SQL: select * from information_schema.tables where table_sch ema = heroku_d66e10e25ca4724 and table_name = migrations and table_type = 'BASE TABLE') In Connector.php line 70: SQLSTATE[HY000] [2002] No such file or directory
heroku configの内容
APP_ENV: heroku APP_KEY: **** CLEARDB_DATABASE_URL: mysql://[ユーザー名]:[パスワード]@[ホスト名]/[データベース名]?reconnect=true DB_CONNECTION: mysql DB_DATABASE: [データベース名] DB_HOST: [ホスト名] DB_PASSWORD: [パスワード] DB_PORT: 3306 DB_USERNAME: [ユーザー名] LANG: ja_JP.UTF-8 TZ: Asia/Tokyo
※APP_KEYは、
$ heroku config:set APP_KEY=$(php artisan key:generate --show)
にて設定済みです。
環境
laravel 5.8.37
PHP 7.3.9
【参考】database.phpの内容
return [ 'default' => env('DB_CONNECTION', 'mysql'), 'connections' => [ 'sqlite' => [ *省略* ], 'mysql' => [ 'driver' => 'mysql', 'url' => env('DATABASE_URL'), 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '3306'), 'database' => env('DB_DATABASE', '[DB名]'), 'username' => env('DB_USERNAME', '[DBユーザー名]'), 'password' => env('DB_PASSWORD', '[DBパスワード]'), 'unix_socket' => env('DB_SOCKET', '/Applications/MAMP/tmp/mysql/mysql.sock'), 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', 'prefix_indexes' => true, 'strict' => true, 'engine' => null, // 'unix_socket' => '/tmp/mysql.sock', 'options' => extension_loaded('pdo_mysql') ? array_filter([ PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'), ]) : [], ], 'pgsql' => [ *省略* ], 'sqlsrv' => [ *省略* ], ], 'migrations' => 'migrations', 'redis' => [ 'client' => env('REDIS_CLIENT', 'predis'), 'options' => [ 'cluster' => env('REDIS_CLUSTER', 'predis'), 'prefix' => env('REDIS_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_').'_database_'), ], 'default' => [ 'url' => env('REDIS_URL'), 'host' => env('REDIS_HOST', '127.0.0.1'), 'password' => env('REDIS_PASSWORD', null), 'port' => env('REDIS_PORT', 6379), 'database' => env('REDIS_DB', 0), ], 'cache' => [ 'url' => env('REDIS_URL'), 'host' => env('REDIS_HOST', '127.0.0.1'), 'password' => env('REDIS_PASSWORD', null), 'port' => env('REDIS_PORT', 6379), 'database' => env('REDIS_CACHE_DB', 1), ], ], ];
回答2件
あなたの回答
tips
プレビュー