俺の開発研究所

Ruby on Rails、Linux、Windowsを中心にIT技術系の備忘録とか。よく忘れるので。

*

WindowsのRuby on RailsでXAMPPのMySQLへ接続

   

WindowsのRuby on Railsで、データベースにローカルにインストールされたXAMPPのMySQLを使用し、接続します。

WindowsにRuby on Railsをインストールする手順は、以下を参考にしてください。
WindowsのRuby on Rails開発環境構築手順

なお、今回のバージョンは以下です。

  • Windows 10 Pro(64bit)
  • Ruby 2.2.4
  • Rails 4.2.6
  • mysql2 0.4.3
  • XAMPP 1.8.2-6(Pleiades All in One 4.5.2.v20160312、MySQL 5.5)

スポンサード リンク

新規アプリケーション作成時、データベースにMySQLを指定

新規アプリケーションを作成する時は、データベースにMySQLを指定してコマンドを実行すれば、必要なアダプター「mysql2」をインストールしてくれて、設定ファイルもMySQL用のものを作成してくれる。

コマンドにオプション「-d mysql」をつければOK。

設定ファイル「config\database.yml」を編集する。

rakeコマンドでDB作成と、マイグレーションを行い、設定ファイルの情報が正しければエラーなどは出ずに、アプリケーションの起動と画面表示(「http://localhost:3000/」へアクセス)ができると思う。

各バージョンの違いによるエラー

しかし、Railsとアダプターであるmysql2のバージョンのせいなのかいまいち分からないが、エラーになってrakeコマンドやアプリケーション起動ができない場合があった。

そんなときのいろいろやってみた対処法。

まずは、「Gemfile」に使用するバージョンを指定する。
mysql2のバージョンを落として、「0.3.20」にしてみたりするとエラーがなくなったりした。

続いて、個別にバージョンを指定してgemパッケージをインストールする。

また、アダプターであるmysql2のオプション「–with-mysql-dir」で、インストールされたMySQLのフォルダを指定する。
もしくは、MySQL公式サイトで「C Driver for MySQL (Connector/C)」というコネクターのソースコードをダウンロードし、配置したフォルダを指定する。

最後に、MySQLの「lib\libmysql.dll」をRubyのbinフォルダに置く。

こんな感じで、エラーはなくなりました。

一度お試しを。

 - MySQL, Ruby on Rails, Windows