状況
おま環の疑いが高いです。
結論
config/database.yml
に以下のように MySQL の設定を書いていたとします。環境変数は dotenv で定義しているとします。
development: adapter: mysql2 host: <%= ENV['MYSQL_HOST'] %> port: <%= ENV['MYSQL_PORT'] %> username: <%= ENV['MYSQL_USERNAME'] %> password: <%= ENV['MYSQL_PASSWORD'] %>
この状況だと $ rails dbconsole
してもログインができないです。ユーザ名やホスト名が .env
で指定したものになっていません。
5.2 で追加された credentials.yml.enc
に書けば問題ありません。またもちろん、config/database.yml
に直書きしても問題ありません。
備考
$ rails dbconsole
というコマンドを経由した場合がダメであって、アプリ上では正常に動作します。