【自宅サーバ Rails】RailsでMysqlを連携させてみる

  • このエントリーをはてなブックマークに追加

はじめに

Railsはデフォルトでsqllite3を使用しています。mysqlを使用するための設定を紹介します。

環境

  • Mysql7
  • CentOS6
  • Rails 5.1.6
  • Ruby 2.5.1

事前準備

必要なパッケージ

yum install mysql-devel

アダプター

Mysqlに接続するためにmysql2アダプタをインストールします。

Gemfile

gem 'mysql2'

bundle install実行。

config/database.ymlの編集

利用したい環境でmysqlの設定を追加

production:
  adapter: mysql2
  encoding: utf8
  database: sample-production
  pool: 5
  username: root
  password: root
  socket: /var/lib/mysql/mysql.sock

mysqlにデータベース作成

config/database.ymlで設定した環境を指定して作成。

rails db:create RAILS_ENV=production

実際にMysqlを覗いてみるとDBが作成されている。適時Mysqlのユーザや権限設定が必要

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sample-production  |
| sys                |
+--------------------+