0
0

More than 1 year has passed since last update.

rails db:migrateを実行した時に出たエラーを解決した話

Posted at

はじめに

1月〜プログラミングスクールで学習しています。
これから平日は~3/25まで毎日何かしらアウトプットのため投稿を続ける予定です。
今回は rails db:migrateコマンドを実行した際に出たエラーについて書きます。
※Ruby2.6.5の環境を使用し学習しています。

問題

rails db:migrateコマンドを実行すると下記エラーが出ました。
ただ、思い当たる節が合ったためすぐに解決することができました。

ターミナル
% rails db:migrate
== 20220310072650 DeviseCreateUsers: migrating ================================
-- create_table(:users)
   -> 0.0159s
-- add_index(:users, :email, {:unique=>true})
rails aborted!
StandardError: An error has occurred, all later migrations canceled:

解決

database.ymlのエンコードがutf8になっていないことに気付き修正しました。

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

その後、rails db:resetコマンド実行し、無事マイグレートが完了しました。

ターミナル
% rails db:migrate:reset
Dropped database 'pfc_control_development'
Dropped database 'pfc_control_test'
Created database 'pfc_control_development'
Created database 'pfc_control_test'
== 20220310072650 DeviseCreateUsers: migrating ================================
-- create_table(:users)
   -> 0.0134s
-- add_index(:users, :email, {:unique=>true})
   -> 0.0136s
-- add_index(:users, :reset_password_token, {:unique=>true})
   -> 0.0171s
== 20220310072650 DeviseCreateUsers: migrated (0.0443s) =======================

encodingに関しては忘れそうなのでメモ程度ですが残しておきます。
それでは〜:beginner:

0
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
0
0