MariaDBでRailsプロジェクトを作成する [WSL/Ubuntu環境]
WSL(Windows Subsystem for Linux)のUbuntuの環境でデータベースに「MariaDB」を使用してRailsプロジェクトを作成します。
やること
MyAppプロジェクトを作成する |
1. 開発ライブラリのインストール
開発ライブラリをインストールしないまま、bundle installをするとgem mysql2が次のエラーを吐き出します。mysql2はMariaDBで使用します。
WSLのUbuntu側で次のコマンドでライブラリをインストールすればOK。
sudo apt update && sudo apt upgrade openssl sudo apt-get install libmysqlclient-dev
2. MariaDBの設定
データベース名のMyApp_developmentの名称は任意です。
mysql -u root -p // ユーザーの作成 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 /mnt/d/任意のディレクトリ/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/Ubuntu環境]
・Apache/MariaDB/PHP/phpMyAdminの構築[WSL/Ubuntu環境]
・Apache + PassengerでRailsとPHPを共存する [WSL/Ubuntu環境]
・MariaDBでRailsプロジェクトを作成する [WSL/Ubuntu環境]
・Apache/MariaDBをOS起動時に自動起動させる [WSL/Ubuntu環境]
・WSLが起動しない時の対処方法 [WSL/Ubuntu環境]
関連記事
前の記事: | Apache/MariaDB/PHPとphpMyAdminのインストール [WSL/Ubuntu環境] |
次の記事: | Nginx + Pumaで複数のRailsプロジェクトを実行する [CentOS] |