環境はMac OSXです。
Railsアプリをローカルで立ち上げる
新しく作ったRailsアプリケーションや、Githubからclone
やpull
して取ってきたRailsアプリケーションを、ローカル環境で動かしたい場合、
bundle install
rake db:create(migrate)
とする必要があると思います。
Access deniedエラー
2.において、
$ rake db:migrate
rake aborted!
Mysql2::Error: Access denied for user 'root'@'localhost' (using password: NO)
というエラーに遭遇しがち。
なんで?
解決策
confing/database.yml
で**default
**のusername
とpassword
を設定する必要がありました。
その後rake db:migrate
をすると無事動きました。
**development
**のusername
とpassword
の設定を変えてもダメで、はコメントアウトしておきました。
こんな感じで、
default: &default
adapter: mysql2
encoding: utf8
reconnect: false
pool: 5
timeout: 5000
username: root # とりあえずrootに設定
password: ****** # ローカルで使うmysqlのパスワード
socket: /tmp/mysql.sock
host: localhost
development:
<<: *default
database: my_app_development
# コメントアウトしておく
# username:
# password:
あとでもうちょっと詳しく調べてみます。
参考
・railsのapp作成でmysqlを使用する時の導入とハマるところ rake db:createができるまでの流れ