我很想知道meteor是否可以连接或显示RDBMS的内容,例如mysql。我有一个不断变化的数据库,如果我可以使用meteor作为前端的Web服务器,那么它会很棒。
谢谢,
凉介
我很想知道meteor是否可以连接或显示RDBMS的内容,例如mysql。我有一个不断变化的数据库,如果我可以使用meteor作为前端的Web服务器,那么它会很棒。
谢谢,
凉介
您可以通过提供一个替换另一个数据库来替换MongoDB 服务器端数据库驱动程序和/或实现的客户端缓存 另一种API。 mongo-livedata是一个很好的起点 这样一个项目。
所以,这是可能的。现在,在流星项目中没有提到任何RDBMS,有人可能已经启动了这样的项目/插件。或者您可以基于mongo-livedata实现来实现它。
https://github.com/drorm/meteor-sql 是一个实现 livedata
对于mysql。它刚刚发布,所以它可能仍然包含一些错误,但我认为你会发现它作为一个可行的选择。
基本上,有3种方法可以实现这一目标:
1.-在客户端使用SQL Sintax:摆脱对分组和联合的最小限制。在客户端上使用Alasql并规范化mongo集合。
2.-使用SQL连接器:尝试使用numltel的MySql连接器。缺点是它会破坏流星的部署。
3.-使用mongo作为关系数据库的从属,使它们保持同步。 MySql Shadow使用它。您还可以查看symmetric.ds以使用大量Sql引擎设置mongo双向复制。
我在这个回购中收集了我的研究成果:
我看到这个问题有点老了。流星现在是1.0.1。自问这个问题以来,一个值得注意的变化是Meteor如何能够拖尾Mongodb OpLog。这使订阅真正即时实时。先前的实施使用10秒轮询和差异。所以,是的,有些项目可以开发替代数据库的驱动程序,但是如果它们没有等效的OpLog,那么它就不是实时的。
SQL支持在路线图上,但仍然遥远,直到1.1+ https://twitter.com/meteorjs/status/399904048683290625
绝对可以使用Mysql而不是mongoDB,但是让应用程序与mysql后端进行反应可能会很棘手。
我确实找到了关于这个主题的演讲: https://www.youtube.com/watch?v=EJzulpXZn6g
这可能会使您的解决方案更容易
嗨,目前有一个包 Numtel MySQL 它不仅支持MySQL查询,而且支持发布和订阅反应模式,这是运行流星App的完美匹配,我们在我们的生产应用程序中使用了这个包。
示例代码 Numtel MySQL 包裹放在 GitHub上。
由于流星支持Nodejs,您可以使用受支持的包 mysqljs 并且还发布了一个关于Meteor app的示例文章 robfallows上 流星博客。
希望这能回答你的问题。
我用过 流星的MySQL 用mysql数据库实现实时应用程序的包。将mysql更改为输出二进制日志需要一些配置,但其余的东西完全无瑕且流畅。希望这可以帮助