MySQLを使用して新しいRuby on Railsアプリケーションを作成する方法

新しいRuby on Railsプロジェクトを始めると、デフォルトのデータベースがSQLiteに設定されていることに気づくかもしれません。SQLiteは開発には素晴らしいですが、多くの開発者はその堅牢性と機能セットのためにMySQLを選好します。MySQLを使用して新しいRailsアプリケーションを作成する方法を探しているなら、正しい場所に来ました!この記事では、MySQLをデータベースアダプタとして使用するRuby on Railsアプリケーションの設定手順を説明します。それでは、始めましょう!

ステップ1: MySQLのインストール

Railsアプリ用にMySQLを構成する前に、システムにMySQLがインストールされていることを確認する必要があります。オペレーティングシステムのパッケージマネージャを通じてインストールできます。たとえば、macOSではHomebrewを使用します:

brew install mysql

インストール後は、MySQLサービスを起動してください:

brew services start mysql

異なるオペレーティングシステムを使用している場合は、それぞれのドキュメントを参照してMySQLをインストールしてください。

ステップ2: 新しいRailsアプリケーションを作成する

MySQLがインストールされたので、新しいRuby on Railsアプリケーションを作成しましょう。ターミナルで次のコマンドを実行することで、これを行えます:

rails new your_app_name -d mysql

-d mysqlフラグは、このアプリケーションのデータベースにMySQLを使用することを指定します。

ステップ3: データベース設定を構成する

Railsアプリケーションを作成したら、MySQLデータベースに接続するように設定する必要があります。プロジェクトディレクトリ内のconfig/database.ymlファイルを開いて、以下の設定を調整します:

development:
  adapter: mysql2
  database: db_name_dev
  username: your_username
  password: your_password
  host: localhost
  socket: /tmp/mysql.sock

パラメーターの説明:

  • adapter: 使用するデータベースアダプタを指定します。MySQLの場合、mysql2にする必要があります。
  • database: データベースの名前です。開発用のデータベース名は好きな名前を選ぶことができます。
  • username: あなたのMySQLのユーザー名です。データベースに対する適切な権限があることを確認してください。
  • password: あなたのMySQLユーザーのパスワード(パスワードがない場合は空のままで)。
  • host: MySQLが実行されているサーバーです。「localhost」がデフォルトです。
  • socket: これはオプションですが、通常MySQL用のソケットの場所を指します。

ステップ4: Gemfileを更新する

RailsとMySQLを使用するには、mysql2 gemが必要です。Gemfileを開いて、以下の行を追加またはコメント解除します:

gem 'mysql2'

JRubyを使用している場合は、以下のようにします:

gem 'activerecord-jdbcmysql-adapter'

次に、必要なgemをインストールするために次のコマンドを実行します:

bundle install

ステップ5: データベースを作成し、マイグレーションを実行する

設定が完了したので、データベースを作成し、必要なマイグレーションを実行しましょう。ターミナルで次のコマンドを実行します:

rails db:create
rails db:migrate

これらのコマンドはデータベースを作成し、存在するマイグレーションを適用してデータベーススキーマを最新に保ちます。

結論

これで完了です!SQLiteの代わりにMySQLを使用する新しいRuby on Railsアプリケーションを成功裏に設定しました。この設定により、MySQLの機能をフルに活用でき、アプリケーション構築のための堅実な基盤が提供されます。コーディングを楽しんでください!