LoginSignup
1
0

More than 3 years have passed since last update.

Laravel 現在のマイグレーションを管理しているテーブルを確認する

Last updated at Posted at 2021-02-10

目的

  • マイグレーションを管理しているテーブルの確認方法を説明する。

実施環境

  • ハードウェア環境
項目 情報
OS macOS Catalina(10.15.5)
ハードウェア MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports)
プロセッサ 2 GHz クアッドコアIntel Core i5
メモリ 32 GB 3733 MHz LPDDR4
グラフィックス Intel Iris Plus Graphics 1536 MB
  • ソフトウェア環境
項目 情報 備考
PHP バージョン 7.4.3 Homwbrewを用いて導入
Laravel バージョン 7.0.8 commposerを用いてこちらの方法で導入→Mac Laravelの環境構築を行う
MySQLバージョン 8.0.19 for osx10.13 on x86_64 Homwbrewを用いてこちらの方法で導入→Mac HomebrewでMySQLをインストールする

前提情報

  • LaravelアプリとMySQLのDBが紐付いていること。(.envファイルでDBの指定がされており、マイグレートが実行できる状態になっていること。)

詳細

  1. 下記コマンドを実行してMySQLにログインする。(rootユーザのパスワードがわからなくなった方はこちら→Mac ローカル環境の MySQL 8.0 のrootパスワードを忘れた時のリセット方法)

    $ mysql -u root -p
    
  2. 下記を実行してLaravelアプリと紐付いているDBを指定する。

    mysql> use DB;
    
  3. 下記を実行してマイグレーションを管理しているテーブルの内容を確認する。

    mysql> select * from migrations;
    

説明

  1. マイグレーションを管理しているテーブルのselect文の出力例を下記に記載する。

    mysql> select * from migrations;
    +----+--------------------------------------------------+-------+
    | id | migration                                        | batch |
    +----+--------------------------------------------------+-------+
    |  1 | 2014_10_12_000000_create_users_table             |     1 |
    |  2 | 2014_10_12_100000_create_password_resets_table   |     1 |
    |  3 | 2019_08_19_000000_create_failed_jobs_table       |     1 |
    |  4 | 2020_06_19_030827_create_admins_table            |     2 |
    | 14 | 2020_06_22_012231_create_□□_table                |     3 |
    | 15 | 2020_06_22_013938_create_△△_table                |     3 |
    | 16 | 2020_06_22_014218_create_▲▲_table                |     3 |
    | 17 | 2020_06_22_014439_create_■■_table                |     3 |
    | 18 | 2020_06_22_060959_create_◆◆_table                |     4 |
    +----+--------------------------------------------------+-------+
    
  2. 上記出力結果に記載されているマイグレーションファイルが現段階でマイグレートが行われているマイグレーションファイルである。

  3. 上記出力結果に記載未記載のマイグレーションファイルがアプリ名ディレクトリ/databases/migrations直下に存在した上で$ php artisan migreteコマンドを実行した場合、未記載のマイグレーションファイルがマイグレートされる。

  4. $ php artisan migrate:rollbackを実行した際には「batch」の数字が大きい順にロールバックが行われる。「batch」の数字が同じマイグレーションファイルは一緒にロールバックが行われる。

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