如何使 Rails 3.1 在 Debian 挤压上与 MySQL Server 5.1 一起工作?

Posted

技术标签:

【中文标题】如何使 Rails 3.1 在 Debian 挤压上与 MySQL Server 5.1 一起工作?【英文标题】:How can I make Rails 3.1 work on Debian squeeze with MySQL Server 5.1? 【发布时间】:2012-04-19 05:05:36 【问题描述】:

我正在尝试使用 mysql Server 5.1(Debian 稳定版本支持的最新版本)在 Debian Squeeze 上启动一个新的应用程序 Ruby on Rails 3.1。

我的 mysql2 gem 有问题。当我使用 mysql2 gem 版本 0.2.6 时,rake 迁移失败,错误为 nil 类的未定义方法行。我用谷歌搜索,每个人都说当将 mysql2 gem 升级到 0.3.X 时,这个错误得到了解决。但是,当我进行此升级时,我收到另一个关于 gem 已为 5.5 mysql 客户端而不是 5.1 编译的错误。

任何帮助将不胜感激。也许答案是“不。你不能这样做”。即使那样,我也想知道。

提前致谢 帕纳约蒂斯

【问题讨论】:

重复? ***.com/questions/8141985/… 并非如此。而且我不认为手动更改库链接是一个答案。 【参考方案1】:

嗯,这是一个棘手的问题。我当前的 rails 软件包最新版本是 2.3.5-1.2+squeeze2,当前的 mysql-server 软件包是 5.1.49-3,两者都来自稳定的 debian 存储库。

但是,您正在尝试安装 RoR 3.1。这意味着你不是稳定的,或者你根本没有尝试从任何官方 debian 存储库安装它(它不是 wheeze 也不是 sid)。

如果您可以安装稳定版的 rails,请继续安装,我敢打赌您不会有任何麻烦。否则,如果您想要最新版本,我很确定您将不得不采用肮脏的方式。它可能涉及下载 5.5 MySQL(不是从存储库,因为它不存在)并弄乱库。

请记住,如果您需要更新的包(例如更新的库)并且不想使用测试存储库,您可以随时尝试debian backports。

【讨论】:

@Mostly Mostacho 我用 Debian 挤压创建了一个新的虚拟机。从一开始就安装了所有东西,并且确实有效。你的答案是正确的。我认为我损坏的 Debian 是由于带有 Percona MySQL 服务器的存储库和类似的东西。

以上是关于如何使 Rails 3.1 在 Debian 挤压上与 MySQL Server 5.1 一起工作?的主要内容,如果未能解决你的问题,请参考以下文章

Rails 3.1 指南针和链轮。使困惑

如何在rails 3.1中使用jquery-addresspicker jquery

Rails 3.1 实时预览

导轨 3.1。如何防止 Rails 使用 CoffeeScript?

如何在 Rails 3.1 应用程序中完全禁用 CoffeeScript?

如何在 Rails 3.1 中为 CoffeeScript 使用选项“--bare”?