タグ : MySQL

Mac上にMySQL・Railsな環境を作る


MacにMySQLをローカルインストールしRailsで使えるようにする

環境

MySQL 5.6.10 x86_64
Mac: OS X 10.8.3(Mountain Lion)
XCode: 4.6.2 →コマンドラインツールの為
Ruby: 1.9.3-p429
Rails: 3.2.13
rbenv: 0.4.0
ruby-build: 20130518
Homebrew: 0.9.4

RubyやRailsの環境構築については「Mac(Mountain Lion)にRubyとRailsをインストール」を参照

手順

  1. MySQLのダウンロード&インストール
    brew install mysql
  2. MySQLの起動
    mysql.server start
  3. MySQLにログインしテスト用データベース構築
    sudo mysql
    CREATE DATABASE test_db;
    CREATE USER test_user@localhost IDENTIFIED BY 'test_pass';
    GRANT ALL PRIVILEGES ON test_db.* TO test_user;
  4. Railsアプリ枠組みの生成(好きなディレクトリ上で)
    rails new test1 -d mysql
  5. Railsアプリのデータベース設定
    development:
      adapter: mysql2
      encoding: utf8
      reconnect: false
      database: test_db
      pool: 5
      username: test_user
      password: test_pass
      host: localhost
    
    test:
      # 省略
    production:
      # 省略
    
  6. テーブルに対応したモデルの作成とマイグレーション
    rails generate model TestTable title:string
    rake db:migrate
  7. 初期データをインサートするためにseeds.rbを編集
    # encoding: utf-8
    TestTable.create(title: 'タイトル01')
    TestTable.create(title: 'タイトル02')
    
  8. rakeコマンドで初期データの投入
    rake db:seed
  9. 初期データを表示させるコントローラの作成と記述
    rails generate controller Test
    class TestController < ApplicationController
      def list
        @test_tables = TestTable.all
      end
    end
    
  10. 初期データを表示するビューの作成と記述
    <% @test_tables.each do |test_table| %>
    タイトル: <%= test_table.title %><br />
    <% end %>
  11. ルーティング(URLとコントローラの紐付け)の設定
    match 'list' => 'test#list'
    
  12. Railsサーバの起動
    rails server
  13. ブラウザで下記URLへアクセス
    http://localhost:3000/list