Sqlite或MySql? 如何决定?

如何决定哪两个使用什么好的经验法则?

而且,如果你接pipe了一个Sqlite数据库,并且系统预计将“变得更大”,如何决定是坚持还是迁移到MySql?

他们的function集不完全相同。 Sqlite是一个没有networkingfunction的embedded式数据库(除非你添加它们)。 所以你不能在networking上使用它。

如果你需要

  • networking访问 – 例如从另一台机器访问;
  • 任何真正的并发程度 – 例如,如果您认为您可能想要一次运行多个查询,或者运行有大量select和更新的工作负载,并希望它们顺利运行等等。
  • 大量的内存使用,例如,在您的32G内存中缓冲部分1Tb数据库。

您需要使用mysql或其他基于服务器的RDBMS。

请注意,MySQL不是唯一的select,有很多其他的可能会更好的新应用程序(例如pgSQL)。

Sqlite是一个非常非常好的软件,但它从来没有声称做任何这些RDBMS服务器做的事情。 这是一个在本地文件上运行SQL的小型库(使用locking来确保多个进程不会将文件拧紧)。 这真的很好,我喜欢它。

另外,如果你不能自己select正确的话,你可能需要雇佣一些能够帮助你的人。

sqlite团队发表了一篇文章,解释什么时候使用的sqlite很棒。 基本上,你想避免使用sqlite,当你有很多的写入并发或需要扩展到兆兆字节的数据。 在许多其他情况下,sqlite对于像MySQL这样的“传统”数据库来说是一个非常好的select。

即开即用的SQLite在并发性方面并不是真正的function完备。 如果有数百个Web请求触及相同的SQLite数据库,将会遇到麻烦。

你一定要去用MySQL或PostgreSQL。

如果是单人项目,SQLite将更容易设置。

我以前的优秀回复几美分。 该网站www.sqlite.org工作在一个SQLite数据库。 这是作者(理查德·希普)回复类似问题时的链接 。