Mongoose / Mongodb 迁移到 MySQL

Posted

技术标签:

【中文标题】Mongoose / Mongodb 迁移到 MySQL【英文标题】:Mongoose / Mongodb migration to MySQL 【发布时间】:2017-07-05 17:17:02 【问题描述】:

我有一个使用 mongodb 数据库运行的 NodeJS 项目(使用 mongoose)。

出于技术限制的原因,我需要将应用程序从使用 mongodb 迁移到 mysql - 有没有办法迁移到 mysql 而无需重写整个 mongoose 模型文件?

PS。虽然我使用的是 mongodb,但所有查询主要仍然不在嵌套文档上(我只通过 ID 或一些一级属性查询)所以实际上将嵌套文档放入 mysql 表中的字段应该仍然可以

【问题讨论】:

您可以使用基于 MySql 和 PSQL(PG) 的 ORM,例如 Sequelize 或 Knex 【参考方案1】:

我建议现在让您的应用程序使用 Mongo 运行。同时为 MySQL 编写一个包装器,将您的 Mongo 查询转换为 mysql。完成后切换到该包装器。然后为 Mongo 编写另一个包装器,以防万一你需要切换回来。

尝试将所有特定于数据库的函数调用保存在包装器中。所以,你不需要一次又一次地这样做。只需为您将使用的任何数据库编写一个新包装器,然后切换即可。

而且您可能需要运行某种工作来将数据从 Mongo 迁移到 MySQL。

【讨论】:

以上是关于Mongoose / Mongodb 迁移到 MySQL的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 mongoose 在 mongoDB 中手动设置 createdAt 时间戳?

如何正确处理猫鼬模式迁移?

如何正确处理猫鼬模式迁移?

如何正确处理猫鼬模式迁移?

NestJs/Mongoose 中的自动增量序列

如何为 Mongoose 连接设置 TLS