Ruby on RailsをMySQLで動作させる手順
RubyOnRailsのDBをMySQL(MariaDB)に変更する手順を記載します。
MySQLとMariaDBは基本的に互換です。
前提
- CentOS7 64bit
- MySQL or MariaDB
- ruby 2.3.1p112
- Rails 4.2.6
手順
CentOS構築
MySQL or MariaDBインストール
CentOS7にMariaDB(MySQL)をインストールする
関連パッケージインストール
yum install gcc-c++ glibc-headers openssl-devel readline libyaml-devel readline-devel zlib zlib-devel
rbenvインストール(rubyのバージョン管理するやつ)
git clone https://github.com/sstephenson/rbenv.git /usr/local/rbenv echo 'export RBENV_ROOT="/usr/local/rbenv"' >> /etc/profile echo 'export PATH="${RBENV_ROOT}/bin:${PATH}"' >> /etc/profile echo 'eval "$(rbenv init -)"' >> /etc/profile # SSHを再接続して実行 rbenv --version
ruby-buildインストール
git clone https://github.com/sstephenson/ruby-build.git /usr/local/rbenv/plugins/ruby-build
rubyインストール
# Rubyのバージョン一覧確認 rbenv install -l # Rubyのバージョンを指定してインストール rbenv install -v 2.3.1 rbenv rehash # 使うRubyのバージョンを指定 rbenv global 2.3.1 # Rubyのバージョン確認 ruby -v
Railsインストール
gem update --system gem install --no-ri --no-rdoc rails gem install bundler rbenv rehash # Railsのバージョン確認 rails -v
動作確認
Rails new コマンドでプロジェクト(アプリ)を作成する時に"-d mysql"と入れる事で、Railsで使用するDBがMySQLかMariaDBになります。
MariaDBを入れたとしても、MySQLと同じコマンドが使用できるので、そのまま使用して頂いて構いません。
# ユーザー追加 useradd rails # パスワード変更 passwd rails su - rails # プロジェクトを作成するディレクトリへ移動 cd < プロジェクトを配置するディレクトリ > # Railsプロジェクト作成 rails new project_name -d mysql bundle install # MySQLに接続 mysql -u root -p CREATE DATABASE データベース名; GRANT ALL ON データベース名.* to ユーザ名@localhost; # リモートからMySQL Workbenchで接続したい時などは以下も実行する grant all privileges on データベース名.* to ユーザ名@"セグメント" identified by 'パスワード' with grant option; # セグメントは 192.168.1.% のような形で記載します。 # WEBrickサーバー起動 rails s -b 0.0.0.0 # ブラウザでアクセスして何か起動してるか確認 http://< Host name or IP Address >:3000 # WEBrickを落とす ctrl + c