- 接手别人的网站项目,之前是nodejs + mongodb 开发的
- 现在想要用java + mysql 重构。
- 网站是文章类型的,第一步想要把mongodb里的数据导入到mysql
- 我对mongodb不了解,之前项目人员也没有留下任何文档,我对表结构也不了解。
- 网上搜索到一些方法都是把mongodb导出csv表格后导入mysql。
- mongodb导出csv只能一个表一个表导出,并且注明全部字段才能导出吗?
求一种好的方法将mongodb里的数据导出到mysql
求一种好的方法将mongodb里的数据导出到mysql
其实我之前也在思考这个问题,当时是直接拿java写的程序搞的,但是好像mongo 只提供了一次获取全部数据的方法,返回一个迭代器,然后用jdbc的batch往mysql里面插,但是感觉效率有点低,我是个菜鸡,想不到太好的方法,我看网上说导出数据好像是要快一些 你都可以试试
额...关于这个问题,我也遇到了!
项目刚开始的时候,为了快,就直接上了mongodb, 后来项目功能越来越多,必须要上关系型数据库了!
我的方式与楼上的相同:
1.导出mongo里的数据(导出后是json格式)
2.自己写脚本去分析导出的数据结构,然后建好mysql表
3.根据结构的不同,分别将数据插入到对应的mysql表中
我这里数据量不大,实现起来并没有特别麻烦,如果数据量较大,那就需要另辟蹊径了
5 回答1.5k 阅读
2 回答2.2k 阅读
1 回答1.4k 阅读✓ 已解决
3 回答763 阅读✓ 已解决
1 回答1k 阅读
1 回答1.5k 阅读
1 回答694 阅读✓ 已解决
你这样说,让我感觉你这重构很难成功啊。
对 MongoDB 不了解?那就去了解啊!
你这思路很奇怪。你在希望有一个工具帮你做掉所有的事情。然而 MongoDB 不是 MySQL,它们是不同的。所以你需要写程序来转换数据(根据你的业务和数据特征确定具体的方案,MySQL 的表怎么设计等等),而不是导入导出这么简单的事情。就像你用 Java 重写 NodeJS 的项目,你不是用某个工具把 JavaScript 代码转成 Java,然后事情就做完了。
PS: 你这叫重写,不叫重构。