以前曾经问过这个问题,但不是完全相同(其他用户有Rails /服务器问题,而且我没有OLD_PASSWORDS的问题)
我正在尝试使用Ruby-MySQL,
使我的Ruby应用程序与MySQL一起工作设置应该非常简单:
% ruby ./setup.rb
% ruby ./test.rb hostname user passwd
# ruby ./install.rb
但是,当我尝试使用localhost和root运行test.rb时,出现以下错误:
connect ............. / Users / turbovince / Desktop / ruby-mysql-0.2.6 / mysql.rb:1019:在`read'中:数组不按顺序:0<> (RuntimeError)
但是,我能够使用/ usr / local / mysql / bin / mysql连接到MySQL服务器而没有任何问题。
我正在运行MySQL 5.1.32和Ruby 1.9
任何暗示都会受到赞赏。
编辑:我也试过127.0.0.1而不是localhost。
答案 0 :(得分:3)
我从这个地址复制了libmysql.dll: http://instantrails.rubyforge.org/svn/trunk/InstantRails-win/InstantRails/mysql/bin/ ruby / bin,它适用于mysql版本:5.1.30。
我在windows机器上使用ruby 1.8.6并且之前安装了mysql gem:gem install mysql。在复制这个dll之前我也遇到了mysql 5.1.30版本的问题所以我想这可能会解决你对ruby 1.9.1的问题。
希望这会有所帮助。
答案 1 :(得分:2)
可能这与1.9不兼容,但很多Ruby宝石和图书馆还不兼容Ruby 1.9中的变化
编辑: 正如所指出的那样,它现在正在工作,我在3月份没有回答这个问题,所以答案是准确的。对于这种事情最好的选择是你去检查isitruby19
答案 2 :(得分:1)
ruby 1.9的mysql gem在那里工作正常。您可以使用
安装gemgem install mysql
并检查这是否能解决您的问题。但是这个gem的ReadMe文档声明与这个gem版本兼容的MySQL版本是5.0.83。因此,使用ruby 1.9.1可能需要一些时间才能使5.1.x版本正常工作。
答案 3 :(得分:0)
您是否尝试过使用127.0.0.1而不是localhost?