【发布时间】:2023-04-04 08:05:01
【问题描述】:
使用 Rails,如何将数据从开发 sqlite3 数据库迁移到生产 MySQL 数据库?
如何让它更容易?
【问题讨论】:
标签: mysql ruby-on-rails sqlite migration
使用 Rails,如何将数据从开发 sqlite3 数据库迁移到生产 MySQL 数据库?
如何让它更容易?
【问题讨论】:
标签: mysql ruby-on-rails sqlite migration
您应该使用像 YamlDB 这样的 gem。安装 Gem,然后使用以下 rake 任务
rake db:data:dump
RAILS_ENV=production rake db:data:load
第一个命令将 dev 数据库的内容转储到名为 db/data.yml 的文件中
另外,请记住,除了rake db:schema:dump|load 任务之外,还必须使用它,因为它仅在架构已经存在的情况下移植数据
【讨论】:
假设您的数据库配置已在 config/database.yml 中正确设置,以下应该会为您在生产环境中设置数据库结构。
默认针对开发数据库运行:
rake db:schema:dump
借助 RAILS_ENV 环境变量对您的生产数据库运行此操作:
rake RAILS_ENV=production db:schema:load
【讨论】: