我可以设置 rails 使用带有 MEMORY 的 mysql 作为数据库引擎吗?我从不重新启动mysql,并且经常重建数据库,我宁愿让它快点。拥有用于运行测试的内存数据库也很好。
编辑:我应该指定这仅用于开发/测试,而不是生产。
最佳答案
我不明白你为什么不能;您选择的存储引擎是 MySQL 实现细节。您只需在迁移的 create_table 声明中设置 :options => "ENGINE=MEMORY"
。
当然,我也不明白你为什么会——尤其是在生产中。 MEMORY 引擎的 MySQL 文档是 full of caveats ,就像固定长度的字段分配一样,与丢失所有内容的风险相比,您意识到的速度增益必须是微不足道的。如果您的应用程序不需要持久化任何东西,为什么不完全跳过 ActiveRecord 并将您的模型分层到 Memcached 之上?
关于mysql - 带有内存数据库的 Rails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1602494/