Laravel で Session Driver にデータベースを使用しているときに sessions スキーマを削除しちゃったときのやつ
TL;DR
sessions スキーマのマイグレーションファイルを作成してマイグレートするだけ
php artisan session:table php artisan migrate
経緯
Session Driver にデータベースを使用している状態で、一度全部マイグレートしたくなって以下のコマンドを叩いた。
php artisan migrate:fresh php artisan db:seed
すると自分で作成したテーブルは作成されたが、SESSIONSは作成されなかった。その結果ページを開くと下記のエラーが発生した。
SQLSTATE[42S02]: Base table or view not found: 1146 Table '[DB名].sessions' doesn't exist (SQL: select * from `sessions` where `id` = 6r7cK0x0tVcp6aKHLjei694lZcaWycKLrJ97nF3I limit 1)
解決方法
SESSIONS テーブルがないということなので、手動で作成する。
php artisan session:table php artisan migrate
思ったこと
自分の環境はなんでマイグレーションファイルなかったんだろう……認証系のパッケージ入れたときに勝手に作成されたのかな……(結局使わずアンインストールした)