我们可以使用MySQL数据库的meteor框架

我发现很多meteor框架的参考url,我发现mongodb作为数据库,因为我没有太多的mongodb的知识。 那么是否有任何方法来实现MySQL而不是MongoDB

有一种方法,但是在现阶段,框架就是一条未铺砌的道路。 基本上,你需要编写一个从SQL转换到Meteor的Minimongo的包装。 如果你已经不是Meteor和Mongo的主人,这不是一个可行的任务。

有人试图写这样的适配器。 我知道的最先进的是: https : //github.com/drorm/meteor-sql 。 可以用来玩,但我不认为这是生产准备。 此外,目前没有办法使用meteor帐户系统除了Mongo以外的任何其他。 无论如何您都需要使用它来为用户帐户,或放弃他们提供的很大的便利。

我build议你和现在的Mongo一起尝试Meteor,它比你想象的要容易。 它不会添加太多的学习曲线,除了filter和更新操作符之外,您不会注意到您使用了一些奇怪的数据库 – 就像使用本机Javascript对象一样。 没有模式,不需要迁移,也不需要对象映射。 你只是把数据,把它放在一个集合,忘记了所有的SQL让你思考。

从文档 :

今天,大多数Meteor应用程序使用MongoDB作为数据库,因为它是最好的支持,虽然对未来其他数据库的支持。 Meteor.Collection类用于声明Mongo集合并操作它们。 由于minimongo,meteor的客户端Mongo模拟器,Meteor.Collection可以使用客户端和服务器代码。

由于客户端使用minimongo,使用RDBMS可能无法提供最佳configuration(因为查询语言和数据结构非常不同)。

您可能会对像breeze.js这样的问题感兴趣,这个问题来自不同方向的丰富数据同步服务,但它适合关系数据库。

也许有办法做到这一点,但它是棘手的:

从npm安装Mysql驱动程序然后,您可以select使用MongoDb作为Arunoda的第一个前端或Meteor Streams。 然后,您只需使用Meteor.Collections中的拒绝/允许系统将客户端的插入/更新/删除绑定到Mysql您还应该使用发布系统来查询Mysql数据库并将数据返回给客户端。

最后一个问题是关于服务器数据库观察:如果在Mysql中发生了某些变化,则不会警告所有其他客户端,除了Meteor.Streams。 这可能是相当有趣的执行。

你可以看看这个meteor包nodets:mysql 。 在服务器和客户端使用mysql,每次数据库更改时,所有订阅都会更新。