【发布时间】:2010-12-16 16:12:33
【问题描述】:
如何将我的 Rails 应用程序中的数据从 mySql 迁移到 SQLite?
这可能吗?
【问题讨论】:
标签: ruby-on-rails ruby sqlite migration
如何将我的 Rails 应用程序中的数据从 mySql 迁移到 SQLite?
这可能吗?
【问题讨论】:
标签: ruby-on-rails ruby sqlite migration
好问题!
过去我不得不将 Gb 的数据库从 SQlite 迁移到 MySQL 到 PostgreSQl,反之亦然。我尝试了大量实用程序、脚本和工具,但我发现成功迁移数据库的唯一方法是将数据导出到无数据库模式,然后导入数据。
这个插件救了我上千次的命:yaml_db。
【讨论】:
如果您需要即时执行此操作,通过某种导出方法,您可以只打开几个数据库连接,一个连接到您的 mysql 数据库,一个连接到您的 sqlite 数据库,适当地映射字段,然后插入到您的sqlite 实例。
如果您不必即时执行此操作,则有此page。
【讨论】:
如果您只是想将数据和架构从一个移动到另一个,这应该不会太难,但如果您使用的是 mySQL 的黑暗角落之一,事情可能会变得更加棘手。基本上,你应该将你的 mySql 数据库转储到某种文件中(有很多方法可以做到这一点,例如从命令行或从 phpmyAdmin 之类的东西),然后,如果内存可用(我上次已经有一段时间了做了这些东西),做这样的事情:
sqlite3 <database name> ".import <export file name>"
此外,在 sqlite 网站的this page 上有一个脚本可以自动执行此操作,因此您可能会看到它是否真的有效。
【讨论】: