February 16, 2016 · Rails MySql 備忘録

リモートにあるRailsプロジェクトを落としてローカル環境で動かすまでの備忘録

はじめに

たまにRails触るときに毎回mysqlまわりで躓いて調べているので動かせるところまでのメモです。

環境

Mac OSX 10.10.5

前提条件

rbenv

rubyのバージョン切り替え用にrbenvをインストール

% brew update
% brew install rbenv ruby-build

bashrcもしくはzshrc にパス追加

vim zshrc

export RBENV_ROOT="$HOME/.rbenv"

if [ -d $RBENV_ROOT ]; then  
 export PATH="$RBENV_ROOT/bin:$PATH"
 eval "$(rbenv init -)"
fi

$ source ~/.zshrc
$ rbenv rehash
$ which ruby

メモ こっちでも可・
$ echo 'eval "$(rbenv init -)"' >> ~/.zshrc
$ source ~/.zshrc

利用したいrubyバージョンをインストール

% rbenv install -l #version確認
% rbenv install 2.2.3
....

% rbenv global 2.2.3 #環境全体をバージョンを統一(よしなに)

% which ruby  # rbenvが適用されていることを確認
% ruby -w      # rbenvが適用されていることを確認

mysql

% brew install mysql
% brew link mysql

もしlink時に以下のエラーがでる場合は一度unlinkしてから再度linkを行う

% brew link mysql
Warning: Already linked: /usr/local/Cellar/mysql/5.6.16  
To relink: brew unlink mysql && brew link mysql

% brew unlink mysql
% brew link mysql

まだこの時点ではmysqlが起動してないのでmysql.server startを叩いて起動

% mysql.server start

マシン起動のたびにstart叩きたくないので自動起動を設定する。LaunchAgentsで設定する方法もあるがbrewを利用すると簡単

自動起動設定
% brew services start mysql

自動起動停止
% brew services stop mysql

自動起動一覧取得
% brew services list

bundler

railsをgitからcloneした後にbundle installを行うためbundlerを入れる

% gem install bundler --no-document

cloneしたRailsのプロジェクトルートで

% bundle install

MySQLユーザー作成

rakeコマンドを叩く事前準備としてmysqlにユーザーを作成する

Railsプロジェクトのconfigに移動

config/database.ymlを確認、development用のusername名を確認してmysqlでユーザを作成する。(権限は適宜変更)

% mysql -u root

mysql> create user 'username'@'localhost';  
mysql> grant all on *.* to 'username'@'localhost';

exit

DBとテーブル作成

とりあえずdevelopmentのみ作成。

rake db:create RAILS_ENV=development  
rake db:migrate RAILS_ENV=development  

メモ RAILS_ENV= について

RAILS_ENV=はdatabase.ymlに記述されている環境を選択することができる。

development_customer: などといった独自の環境がdatabase.ymlに記述されている場合は同様にRAILS_ENV=development_customer のような形で指定する。

WEBrickで起動

% rails s
=> Booting WEBrick
=> Rails 4.2.4 application starting in development on http://localhost:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server

おわりに

mysqlでユーザーつくるの面倒くさいので簡単な方法ないでしょうか

  • LinkedIn
  • Tumblr
  • Reddit
  • Google+
  • Pinterest
  • Pocket