我在 Express 中创建了自定义脚本,它实际上将 SQL Server 数据库迁移到 MongoDB。
但是我在两个数据库之间进行实时同步时遇到了问题。
目前我在两个数据库中都添加了一个列 updated_by
。
然后我从 MongoDb 和 SQL Server 数据库中获取最新的 updated_by
行。
然后我检查日期差异并根据它更新我的 MongoDB 数据库。
有很多数据库表,我发现很难识别哪个表正在更新。
SQL Server 2008 R2 中是否有任何日志说明更新了哪个表以及更新时间?
我需要一种机制,例如,数据库表中的任何数据更新都应立即将这些行同步到我的 MongoDB 中。
也欢迎任何关于实时数据同步的更多建议。
提前致谢。 :)
最佳答案
当我有这样的要求在关系数据库(MYSQL)和非关系数据库(Mongodb)之间同步时。
我已按照以下步骤进行操作,这些步骤将来可能会对其他人有所帮助。这个概念通常被称为变更数据捕获
- 捕获更改(对于使用触发器的 MYSQL iam。)
- 将变化转化为合适的变化 即RDBMS to Non RDBMS
- 更新更改
- 记得同步数据库的结构变化和相应的实现。
以下链接可能有帮助
https://www.flydata.com/blog/what-change-data-capture-cdc-is-and-why-its-important/
关于mongodb - 使用 Express 在 SQL Server 2008 R2 和 MongoDB 之间实时同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29117820/