rubyのバージョンは3.0.0、 mysqlのバージョンは5.7、 mysql2のバージョンは0.5.3、
bundlerバージョンは2.2.3、 railsのバージョンは5.0.7.2です。
現在message-boardというアプリを作成中です。
フォルダの形式は以下のようになっております。
message-board_folder └message-board └.ruby-version
まず、
$ rails s
というコマンドでrailsを起動しようとしたところ、以下のエラーの画像が表示されました。
Mysql2::Error::ConnectionError Access denied for user 'root'@localhost'(using password: NO)
というエラーが表示されておるため、
database.yml
に
環境変数を使ったパスワードを追加いたしました。
default: &default adapter: mysql2 encoding: utf8 pool: 5 username: root password: <%= ENV['DB_PASSWORD'] %> socket: /tmp/mysql.sock
それからターミナルに以下のコマンドを実行いたしました。
$ export DB_PASSWORD=自分のMySQLバージョン5.7のログインパスワード $ rails s
上記のコマンド実行結果は以下の画像の通りになりました。
上記の画像のFramework Trace
の項目にある
mysql2 (0.5.3) lib/mysql2/client.rb:90:in `connect' mysql2 (0.5.3) lib/mysql2/client.rb:90:in `initialize' activerecord (5.0.7.2) lib/active_record/connection_adapters/mysql2_adapter.rb:25:in `new' activerecord (5.0.7.2) lib/active_record/connection_adapters/mysql2_adapter.rb:25:in `mysql2_connection' (...) puma (3.12.6) lib/puma/thread_pool.rb:135:in `block in spawn_thread'
と言ったファイルは
message-board_folder └message-board └.ruby-version
のmessage-board
フォルダには存在しなかったため、エラーを解決することができませんでした。
環境変数を使ってパスワードを設定してもrailsサーバがうまく起動しない理由を教えてください。