2011-08-08 34 views
1

使用Ruby宝石 '续集',当我尝试Sequel.connect("mysql://localhost"),我得到以下错误:续集宝石和MySQL(红宝石+视窗):加载mysql.so文件,而不是mysql.rb

​​

哪有我得到这个gem连接到MySQL服务器?

Sys系统:Win XP的,红宝石1.8.7,Mysql的51年5月1日

+0

我发现一起运行在多个地方采用以下的说法推荐: '须藤ENV ARCHFLAGS =“ - 拱x86_64的”宝石安装红宝石的mysql - --with -mysql-config =/usr/local/mysql/bin/mysql_config' 但是,我正在运行Windows,因此我尝试了'gem install ruby​​-mysql - --with-mysql-config =“C:\ Program Files \ ... \ my.ini“(我不知道my.ini是我的配置文件) – JellicleCat

回答

1

续集是在现有的数据库适配器之上的ORM。

您收到的错误是因为mysql宝石尚未安装。

你应该能够解决这个问题做gem install mysql

由于在Windows上的MySQL宝石作为二进制文件提供,它是相对于在你的系统中可用libmysql.dll的依赖性非常明智的。

我建议你下面的教程我整理了投保的MySQL的现代版本的宝石的正确安装:

http://blog.mmediasys.com/2011/07/07/installing-mysql-on-windows-7-x64-and-using-ruby-with-it/

希望这有助于。

+0

所以现在我已经执行了你提供的指令,但是当我尝试使用Sequel时,同样的错误我列在上面。 – JellicleCat

+0

那么你是否安装了mysql gem? IRB就像我连接的文章一样工作吗?在IRB控制台中输出Mysql :: CLIENT_MULTI_RESULTS是什么? –

+0

我确实安装了mysql gem,并且我成功地用于连接到本地服务器。 ...上次评论中的命令返回“NameError:未初始化的常量Mysql :: CLIENT_MULTI_RESULTS”。 ...由于以下错误,我无法使用mysql gem连接到远程服务器:'Mysql :: Error:客户端不支持服务器请求的身份验证协议;考虑升级MySQL客户端',这就是为什么我想让续集gem为mysql连接工作。 – JellicleCat