windows 环境下 gem install mysql2 出错

1. 首先 如果rails 版本<3.1.0就安装mysql 0.2.6。如果rails 版本是3.1.*才需要安装mysql 0.3.*。

在Gemfile中配置

gem 'rails' , '3.0.9'
gem 'mysql2', '0.2.6'


2. ERROR: Failed to build gem native extension.

下载:mysql-noinstall-5.1.50-win32.zip 

地址: http://downloads.mysql.com/archives/mysql-5.1/mysql-noinstall-5.1.50-win32.zip

解压到某目录,如:E:\ROR\mysql-5.1.50-win32

然后命令行下: 

gem install mysql2 -v 0.2.6 -- --with-mysql-lib=E:\\ROR\\mysql-5.1.50-win32\\lib\\opt --with-mysql-include=E:\\ROR\\mysql-5.1.50-win32\\include


具体操作时替换成你解压 mysql-noinstall-5.1.50-win32.zip 的路径

然后在工程中测试下 是否正常

bundle install 
rails  g  model User name:string age:integer
rake db:migrate

3.如果以上都不行,看链接  https://github.com/brianmario/mysql2/issues/8 尝试以下步骤

  1. (1) download MySQL "no-install" & extract somewhere
  2. (2) git clone http://github.com/brianmario/mysql2.git
  3. (3) gem build mysql2.gemspec
  4. (4) gem install mysql2-0.2.3.gem -- --with-mysql-lib=/c//lib/opt --with-mysql-include=/c//include
4.  Linux下解决方法(未测试):

1 # sudo apt-get install libmysql-ruby libmysqlclient-dev

5. 运行 rake db:migrate或者 rake db:schema:dump 后 schema中出现如下错误 

# Could not dump table "customers" because of following Mysql2::Error

# Invalid date: BTREE

将上面解压的mysql的bin目录下的libmysql.dll复制到 ruby安装目录/bin目录 下


6. 0.3.7 安装

$ gem install mysql2 -v 0.3.7 -- --with-mysql-lib=E:\\ROR\\mysql-5.1.50-win32\\
lib\\opt --with-mysql-include=E:\\ROR\\mysql-5.1.50-win32\\include


6.以上都不能解决问题,请留言



你可能感兴趣的:(Ruby,on,Rails)