TOP > カテゴリ > Ruby・Ruby on Rails >

MariaDBでRailsプロジェクトを作成する [Windows/WSL/Ubuntu]

WSL(Windows Subsystem for Linux)のUbuntuの環境でデータベースに「MariaDB」を使用してRailsプロジェクトを作成します。

やること

MyAppプロジェクトを作成する

1. 開発ライブラリのインストール

開発ライブラリをインストールしないまま、bundle installをするとgem mysql2が次のエラーを吐き出します。mysql2はMariaDBで使用します。

An error occurred while installing mysql2 (0.5.2), and Bundler cannot continue. Make sure that `gem install mysql2 -v '0.5.2' --source 'https://rubygems.org/'` succeeds before bundling.

WSLのUbuntu側で次のコマンドでライブラリをインストールすればOK。

sudo apt update && sudo apt upgrade openssl

sudo apt-get install libmysqlclient-dev

2. MariaDBの設定

mysql -u root -p

// ユーザーの作成
// ※Ubuntuのユーザー名と同一が良い?
CREATE USER 'ユーザー名' IDENTIFIED BY 'パスワード';

// データベースの作成
CREATE DATABASE MyApp_development;

// ユーザーにデータベース(MyApp_development)の権限を付与する
GRANT ALL PRIVILEGES ON MyApp_development.* TO 'ユーザー名';


// --- 関連するコマンド
// データベースの一覧
SHOW DATABASES;
// テーブルの一覧
SHOW TABLES;
// ユーザーの一覧を表示する
SELECT host, user, password FROM mysql.user;
// ユーザーの削除
DROP USER ユーザー名;
// データベースの削除
DROP DATABASE データベース名; 

Railsコマンドの「bin/rails db:create」でデータベースを作成可能ですが、権限の関連があるのでmysqlコマンドでデータベースを作成します。

3. Railsプロジェクトの作成

// カレントディレクトリの移動
cd /mnt/d/任意のディレクトリ
※Cドライブは/mnt/c、Dドライブは/mnt/d

// プロジェクトの生成
rails new MyApp -d mysql

// MyApp/config/database.ymlの編集
// ---
development:
  <<: *default
  database: MyApp_development
  username: ユーザー名
  password: パスワード
// ---
※開発環境なのでベタ書き。

// カレントディレクトリの移動
cd MyApp

// モデルの作成(モデル/マイグレーションファイルの生成)
bin/rails g model Task name:string description:text

// マイグレーションの実行(テーブルの生成)
bin/rails db:migrate

// コントローラーの作成(コントローラー/ビューの生成)
bin/rails g controller tasks index show new edit

// Pumaサーバの起動
bin/rails s

4. 動作確認

http://localhost:3000/
http://localhost:3000/tasks/index

WindowsでRails開発

Windows10でRuby on Railsの開発環境を構築
WSL(Windows Subsystem for Linux)でphpMyAdminを動かす
MariaDBでRailsプロジェクトを作成する





掲示板

ソフトウェア、ハードウェアのプログラミング用の掲示板を作成しました。質問やわからない事は@掲示板でユーザー同士で情報を共有して下さい。

関連記事



公開日:2019年09月19日 最終更新日:2019年09月20日
記事NO:02778