【问题标题】:Can Rails cause MySQL data to disappear?Rails 会导致 MySQL 数据消失吗?
【发布时间】:2013-06-09 22:25:06
【问题描述】:

我遇到了我见过的最离奇的场景。我在带有 Rails 3.2、Ruby 1.9 和 MySQL 5.1 的虚拟服务器上有一个托管网站,使用 InnoDB 但不是每个表。突然之间,没有明显的原因(我可以指出)数据库中每个表中的所有数据都消失了。唯一不受影响的表是仅由 Rails 创建和维护的迁移表。

疯狂的是所有的表定义都很好,包括索引定义。出现问题后,我可以将更多数据添加到任何表中,并且这些数据仍然存在,但数据刚刚消失。我确实有前一天的数据转储,我可以从中恢复,但从那以后我也想保留一些工作。

有人遇到过这个吗?关于可能导致它的任何想法都会有所帮助。我已在 MySQL InnoDB 论坛上发布此内容,但在过去 24 小时内没有任何回复。 Rails 是否有可能出现会产生这种症状的打嗝?

【问题讨论】:

    标签: ruby-on-rails-3.2 innodb mysql-5.1


    【解决方案1】:

    我既放心又尴尬。不知何故,我的 dev m/c 上 Rails 站点根目录下的“db”目录被移动到了“app”目录。然后,我将 'app' 目录的 tarred 版本复制到我的远程托管站点。因此,在远程站点,rails 根目录下有一个“db”目录,“app”下有一个“db”目录。

    令人惊奇的是,该站点在 dev m/c 上继续正常工作,但由于目录重复而破坏了远程 m/c 上的 mysql 数据库。

    我非常想了解为什么远程 m/c 上的 'app' 目录上存在重复的 'db' 目录会导致上述问题。我原以为 Rails 会简单地在 rails 根目录下查找“db”目录,而忽略 app 下的重复目录。

    事实上,我预计该站点不会加载到我的本地开发 m/c 上,因为“db”目录不再位于 rails 一直在寻找它的 rails 根目录下。

    我只是想以任何方式记录我的愚蠢,以防其他人被这个奇怪的球问题击中。

    【讨论】:

    • 既然这是解决方案,您会点击它左侧的勾号图标,接受它作为答案吗?这将问题标记为已回答。
    猜你喜欢
    • 1970-01-01
    • 2015-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-02
    • 2021-10-02
    • 1970-01-01
    相关资源
    最近更新 更多