【问题标题】:Using SQLite vs. MySQL with Ruby?在 Ruby 中使用 SQLite 与 MySQL?
【发布时间】:2011-06-28 22:40:12
【问题描述】:

我是 Ruby 新手,想知道是否大多数人都在使用 SQLLite db,它似乎是最自然和推荐的 Ruby 数据库?还是人们使用传统的 MySQL 数据库?

每个使用 Ruby 的优点/缺点是什么?

谢谢, 亚历克斯

【问题讨论】:

    标签: mysql ruby-on-rails ruby


    【解决方案1】:

    SQLite 主要用于开发目的,因为它非常简单地设置数据库而没有太多挫败感,但它在并发方面的效率肯定低于 MySQL 之类的东西(这很可能用于 Web 应用程序)。因此,无论您是否在开发中使用 SQLLite,都强烈建议在生产中使用 MySQL(或类似的东西)。

    为了完整起见,SQLite 还用于“一体式”软件(例如移动开发),您可以在其中轻松地将 SQLite 文件与您的应用程序捆绑在一起。

    SQLite Website所述:

    SQLite 并非旨在成为 企业数据库引擎。它不是 旨在与 Oracle 竞争或 PostgreSQL。

    查看 SQLite 的另一种方式是: SQLite 并非旨在取代 甲骨文。它旨在取代 fopen().

    就 Ruby 的好处而言,实际上并没有太多好处,因为库/ORM(即 Active Record)真正抽象了两个系统之间的差异,以便在单个包装器中创建一致的访问层。

    【讨论】:

    • SQLite 不是比 MySQL 快很多吗?
    • 在 MySQL 中,您可以进行大量的性能调整、存储过程、访问控制(带有用户和权限)等。
    • SQLite 非常便携,虽然它在某些方面不如 MySQL,但对于大多数站点来说已经绰绰有余了。利弊会因个人需求而异。
    • +1 完整且说得好。对于简单的东西很有用并且可以接受,但如果你需要的话,最好使用完整的 RDBMS。
    • 我会说最好使用完全相同的数据库进行开发和生产。总是。没有 ORM 可以保护您免受数据库差异的影响(因此所有“当我把它放在 Heroku 上时它坏了”的问题)。
    【解决方案2】:

    SQLITE 非常适合桌面应用程序、移动应用程序和开发 :) 因为它易于安装和管理,而且它将所有数据存储在一个文件中,易于复制。

    但这对于生产来说是一个糟糕的选择。它不支持写入的并行访问。文件越大,查询越慢。缩放问题。还有许多其他问题。

    查看此主题了解更多信息

    https://stackoverflow.com/questions/3630/sqlite-vs-mysql

    【讨论】:

      【解决方案3】:

      在 Rails 中,您使用的是 ActiveRecord ORM。许多开发人员都在使用 sqlite 适配器进行 ActiveRecord 开发,因为它很容易设置。

      【讨论】:

        猜你喜欢
        • 2012-11-14
        • 1970-01-01
        • 2013-04-27
        • 2015-05-29
        • 2016-03-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多