Ruby mysql2错误

时间:2012-03-30 03:13:14

标签: mysql ruby

我收到以下错误

C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': 126: The specified module could not be found.   - C:/Ruby193/lib/ruby/gems/1.9.1/gems/mysql2-0.3.11-x86-mingw32/lib/mysql2/1.9/mysql2.so (LoadError)

尝试运行此脚本时...

require "mysql2"

client = Mysql2::Client.new(:host => "localhost", :username => "root", :password => "system32")
results = client.query("SELECT * FROM project1_nodes").each do |row|
  puts row
end

有什么想法吗?

干杯 马丁

2 个答案:

答案 0 :(得分:11)

我猜你在Windows上运行ROR。请按照以下步骤操作。

  1. 确保安装了mysql correctlt。
  2. 将libmysql.dll(从mysql安装目录)文件复制到你的C:/ Ruby193 / bin文件夹
  3. 现在删除旧的mysql安装的宝石。
  4. 重新安装mysql gem。
  5. 这可能会解决您的问题。

答案 1 :(得分:0)

如果您正在使用RVM,您使用的是特定的gemset吗?

我遇到了类似的问题,指定特定gemset的设置修复了我的问题。例如,我将安装一个gem,但是无法通过require 'example_gem_name'调用加载它。这解决了我的问题,

rvm gemset use gemset_name  
gem install mysql2  
gem list mysql2  

此外,要设置RVM默认gemset(因此您不必每次都这样),

rvm use 1.9.3@gemset_name --default