Rails 生产更改中的数据库:更好地重新加载架构或更改 table?
Rails DB in production change: better to reload schema or to alter the table?
我在生产环境中部署了一个 rails 应用程序,并更改了一些“布尔值”列以具有默认值“false”和“not null”。在开发环境中,我只是 运行 一个迁移,但是对于生产中的数据库(只有少数用户)的建议程序是什么:重新加载模式(rails db:schema:load)或直接更改 table 例如通过 phpmyadmin?
迁移的全部意义在于它提供了一个 DSL,可以更轻松地在所有环境中以可重复的方式执行数据库转换,以便您保持对等并能够实际测试 [=17= 中的步骤] 大大降低了由于简单的人为错误而导致事故的风险。
使用迁移 Luke。
rails db:schema:load
仅在您从头开始设置数据库时使用。例如,如果您正在设置一台新机器进行开发或在 testing/CI 期间确保空白。如果您擦除他们的数据,您的用户可能不会感激。
我在生产环境中部署了一个 rails 应用程序,并更改了一些“布尔值”列以具有默认值“false”和“not null”。在开发环境中,我只是 运行 一个迁移,但是对于生产中的数据库(只有少数用户)的建议程序是什么:重新加载模式(rails db:schema:load)或直接更改 table 例如通过 phpmyadmin?
迁移的全部意义在于它提供了一个 DSL,可以更轻松地在所有环境中以可重复的方式执行数据库转换,以便您保持对等并能够实际测试 [=17= 中的步骤] 大大降低了由于简单的人为错误而导致事故的风险。
使用迁移 Luke。
rails db:schema:load
仅在您从头开始设置数据库时使用。例如,如果您正在设置一台新机器进行开发或在 testing/CI 期间确保空白。如果您擦除他们的数据,您的用户可能不会感激。