Railsでマイグレーション時にファイル名を間違えた時の対処法


マイグレーション作成時ファイル名を間違えた😭

とても簡単!

config/database.yml
default: &default
  adapter: mysql2
  encoding: utf8mb4
  pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
  username: root
  password:
  socket: /tmp/mysql.sock

development:
  <<: *default
  database: anyone2_development

~省略~
test:
  <<: *default
  database: anyone2_test

#
~省略~
production:
  <<: *default
  database: anyone2_production
  username: anyone2
  password: <%= ENV['ANYONE_DATABASE_PASSWORD'] %>

anyone2という所を本当はanyoneとしたかった訳なので該当箇所を全て変更します

config/database.yml
default: &default
  adapter: mysql2
  encoding: utf8mb4
  pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
  username: root
  password:
  socket: /tmp/mysql.sock

development:
  <<: *default
  database: anyone_development

~省略~
test:
  <<: *default
  database: anyone_test

#
~省略~
production:
  <<: *default
  database: anyone_production
  username: anyone
  password: <%= ENV['ANYONE_DATABASE_PASSWORD'] %>

その後再び

ターミナル
rails db:create

ここで注意点があって、このままだとMySQLやらのデータベースにanyone2anyoneの2つともデータベースに残ってしまっている状態なので、先ほどrails db:createした後にもう一度database.ymlの記述をanyone2の時の状態に戻し、ターミナルで

ターミナル
rails db:drop

を記述すると該当のデータベースが削除された状態になります!

現場からは以上です!