我遇到这样的情况,我在生产环境中有一个数据库,现在我必须在表中添加几列并从数据库中删除 1 个表。我运行了所有迁移,例如 Rails g migration AddDeskToHelper desk:string 以及类似的用于删除表的迁移。
但现在我想将这个新生成的架构上传到现有数据库中,而不从数据库中删除任何数据。
我正在搜索它,但没有找到任何准确的答案。
例如,here 它说 rake db:schema:load 删除生产环境中数据库中的所有数据。
请在这种情况下帮助我。
最佳答案
如果您创建了迁移以在现有表中添加一些列或删除一些表,则 rake db:migrate RAILS_ENV=product
命令将执行“ALTER table...”,而不会破坏您的表数据,除非您要删除包含数据内容的列或表格。
但始终建议在更改生产数据库之前执行数据库备份。
关于mysql - 在数据库中加载新模式而不删除现有数据轨,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28062617/