经过Update:次测试,这在当前的形式下不起作用,它的 idea 是正确的,我进行了一次迁移,对模块本身进行了大量调整.但是,如果没有一些重大的改变,并以某种方式跟踪不同的模式,我认为它无法按预期工作.
听起来你想要mongoose数据迁移
它旨在在使用文档时迁移文档的旧模式版本,这似乎是在mongodb中处理迁移的最佳方式.
您并不想在文档集合(ala alter table)上运行完整的数据集迁移,因为它会给服务器带来沉重的负载,并且可能需要应用程序/服务器停机.有时,您可能需要编写一个脚本,只需捕获所有文档,然后应用新的模式/更改并调用save,但您需要了解何时何地执行该操作.例如,向doc init添加迁移逻辑对性能的影响可能比关闭服务器3小时运行迁移脚本更大.
我发现这link也非常有用,基本上更详细地重申了上述内容,并基本上用php实现了上述 node 包的概念.
N.B.该模块已有5个月的历史,0个Forking ,但我环顾四周,找不到比abdelsaid的回应方式更好/更有用的东西..