When running ‘rake db:create’, you may get the following error:
[codesyntax lang=”bash”]
>rake db:create
rake aborted!
126: The specified module could not be found. – d:/RailsInstaller/Ruby1.9.2/li
b/ruby/gems/1.9.1/gems/mysql2-0.3.11-x86-mingw32/lib/mysql2/1.9/mysql2.so
[/codesyntax]
or may get these errors while installing mysql:
[codesyntax lang=”bash”]
rake aborted !
uninitialized constant mysql2
[/codesyntax]
Error ‘uninitialized constant mysql2’ comes when mysql2 installation is not done properly.
To solve this issue and successfully install mysql2 gem, follow these steps:
Install DevKit
1. Download and install DevKit
fromĀ http://rubyinstaller.org/downloads/
2. Run this command in DevKit folder :
ruby dk.rb init
3. Edit the generated config.yml file as per your system available Rubies version if required
– c:/RailsInstaller/Ruby1.9.2
4. Run in the DevKit folder:
[codesyntax lang=”bash”]
ruby dk.rb install
[/codesyntax]
You have successfully installed the DevKit.
Install MySql2 gem
5. Download mysql-connector from
http://dev.mysql.com/get/Downloads/Connector-C/mysql-connector-c-noinstall-6.0.2-win32.zip/from/pick
and unzip it to folder c:\rubyinstaller\mysql
6. Run gem install myql2 with the following parameters:
[codesyntax lang=”bash”]
gem install mysql2 –platform=ruby — ‘–with-mysql-dir=”c:/RailsInstaller/mysql”‘
[/codesyntax]
if it doesn’t work, try with these options:
[codesyntax lang=”bash”]
gem install mysql2 — ‘–with-mysql-lib=”c:/RailsInstaller/mysql/lib” –with-mysql-include=”c:/RailsInstaller/mysql/include”‘
[/codesyntax]
7. Copy libmysql.dll from c:\RailsInstaller\mysql\lib to bin/ folder of Ruby 1.9.2 (for example, c:\ruby192\bin)
You are done with installation of Mysql2 gem on Ruby 1.9.2 and Rails 3.0.5 on Windows.
Now you can use mysql in your Rails project
8. Add mysql2 gem to the file ‘Gemfile’ in your project folder
[codesyntax lang=”bash”]
gem ‘mysql2’
[/codesyntax]
9. Edit config/database.yml file
[codesyntax lang=”bash”]
development:
adapter: mysql2
encoding: utf8
database: mydbname
pool: 5
username: root
password:
socket: /tmp/mysql.sock
[/codesyntax]
Specify your login (usually, root in Windows) and password (usually, blank in Windows).
Ernests Dreimanis says:
thanks this was helpfull !
Jose Juan Lagunas says:
Wow!!!
Muchas gracias (y)
Leo sandoval says:
hey tnks.
I would not have done it without your help
Dimitris Klimis says:
Hey man, thanks for the great guide. Have been installing rails for 2 years now and always come back to this. I think there is a type in the gem installation. –with-mysql-lib=”c:/RailsInstaller/mysql/bin should be /lib. Cheers!
Anonymous says:
thanks! I fixed it and added another option of installation mysql2.