1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Laravelのプロジェクトを無理矢理共有してたらなんかDB関係おかしくなった

Posted at

ChatGPTに聞きながらLaravel9の教科書にチャレンジ中です.

教科書はこれ

プルリクしたらうまくいかなくなった

プルリクしたデータをローカルに反映したところ,tweetsテーブルが無いとのエラーが発生しました.(教科書は悪くない)

そこでまずartisanファイルがあることを確認し.

php artisan migrate

を実施したところ,

SQLSTATE[HY000]: General error: 1813 Tablespace 'DB名.tweets' exists.

となりました.tweetsテーブルが無いようです.

確認をする

そこで,DockerのSQL側のコマンドラインを開き,

(DB側ターミナル)

mysql -u DBユーザ名 -p

でパスワードを入力してSQLにログインし,

(DB側ターミナル)

SHOW TABLES FROM DB名;

tweetsテーブルがあるか確認をしますがありませんでした.

テーブルは無いのに有るというエラーはなんぞやと.

(アプリ側ターミナル)

php artisan migrate:status

でaritisannの状態を見ると

2023_xx_xx_xxxxxx_create_tweets_table ...... Pending

と表示されpendingになっています.

削除をする

そこで,

(DB側ターミナル)

DROP TABLE IF EXISTS DB名.tweets;

念のためtableを削除します(無いのに,,)

(アプリ側ターミナル)

php artisan cache:clear

そして念のためキャッシュを削除します.

ファイルブラウザで

mysql/data/DB名 の /tweets.ibd
を手動で削除します

(アプリ側ターミナル)

php artisan migrate

をするとマイグレーションが成功しました.

この後は問題なく動作しました.

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?